Gatewayfirmware Config/mit stubby

Aus Freifunk Franken
Wechseln zu:Navigation, Suche

/etc/config/fff

Hier werden - wie in der Nodefirmware - Koordinaten und Kontakt-Mail eingetragen. Weiterhin wird hier der Hoodname eingetragen, der dann ans Monitoring gesendet wird.

Beispielkonfiguration

config fff 'system'
	option hostname 'mein-gateway'
	option contact 'email@example.com'
	option latitude '49'  
	option longitude '11'
	option hoodname 'Hoodname'
	option description 'Pinguinsammelstelle'
	option position_comment 'irgendwo'

/etc/config/gateway

Benutzte IP-Adressbereiche eintragen:

IPv4: Portal:Netz

IPv6: Portal:Netz/IPv6

Beispielkonfiguration

Eine Bespielkonfiguration mit einem direkten Peer und einem WireGuardpeer gibt’s hier:

config gateway 'meta'
	option config_version '3'

config vlan '1'
	option comment 'client'
	## t: tagged. CPU-Port wird automatisch hinzugefügt.
	option ports '2 3 4 5t'

config vlan '2'
	option comment 'wan'
	option ports '1'

config vlan '10'
	option comment 'nachbar-hochhaus'
	option ports '5t'

config client
	option vlan '1'
	list ip6addr 'fd43:5602:29bd:k7::1/64'
	list ip6addr '2a0b:f4c0:k7:e8::1/64'
	list ipaddr '10.83.261.1/24'
	option dhcp_start '10.83.261.50'
	option dhcp_limit '1000'
	option essid 'bla.freifunk'
	option chan2ghz '13'
	option chan5ghz '36'

config dns
	list server 'fd43:5602:29bd:ffff::42'
	list server 'fd43:5602:29bd:ffff:a:a:a:a'
	list server 'fd43:5602:29bd:ffff::252'

## Vorsicht: Config-Namen dürfen keine '-' enthalten
config babelpeer 'hochhaus'
	option vlan '10'
	option type 'wired'
	option rxcost '1024'

config wireguardpeer 'meingateway'
	option endpoint_host '<ip oder dns>'
	option endpoint_port '12345'
	option persistent_keepalive '25'
	option remote_public_key '<wg pubkey vom server>'
	## Angeben eines private_key ist optional. Wird automatisch generiert, wenn nicht vorhanden.
	option local_private_key '<wg privkey für gwfirmware>'
	option rxcost '16384'
	option mtu '1420'


Achtung: Die VLAN-Einstellungen hier sind für den TL-WDR4900, für andere Geräte muss z.B. geprüft werden auf welchen Port der WAN liegt. Eine Liste ist ganz unten zu finden oder in der offiziellen Firmware: https://github.com/FreifunkFranken/firmware/tree/master/src/packages/fff/fff-network/ar71xx

Parameter-Übersicht

gateway

Name Typ Pflicht Beschreibung
name string nein
peer_ip IPv4-Adresse nein IPv4-Adresse für Peerings
peer_ip6 IPv6-Adresse nein IPv6-Adresse für Peerings

vlan

Name Typ Pflicht Beschreibung
comment string nein
port list nein Ports auf dem Standard-Switch

client

Name Typ Pflicht Beschreibung
iface interface nein Clientnetz auf Interface legen (z.B. eth0, eth0.1)
vlan int nein Clientnetz auf VLAN mit angegebener IP auf dem Standard-Switch legen (alternativ zu iface!)
ipaddr IPv4-list nein Router-IP im Client-Netz (CIDR Notation)
ip6addr IPv6-list nein Router-IP im Client-Netz (CIDR Notation)**
dhcp_start IPv4-Adresse nein DHCP-Startadresse
dhcp_limit int nein Maximale Anzahl an DHCP-Leases (default 150)

** Zum Beispiel 2001:db8:aaaa:bbbb::1/64, es dürfen hier nur /64 Netze angegeben werden. Im Monitoring wird die Adresse dann unter 2001:db8:ffff:ffff:ffff:ffff:ffff:ffxx versteckt.

dns

Name Typ Pflicht Beschreibung
server list nein DNS-Server, auf den geforwarded wird*

alternativ (noch nicht aktiv!):

dns mit DoT über stubby

Name Typ Pflicht Beschreibung
dnsdot option ja 1 setzen damit DoT aktiviert wird
server list ja DNS-Server, auf den geforwarded wird*
dnssec_validation option nein Schaltet DNSsec Validation am Knoten ein **

* Hinweis: Syntax muss lauten: "dnsXX@IP@DNS" wobei hier in etwa der stubby Syntax gilt d.h.:

Vor dem ersten @ gibt es entweder dns oder dns6 für IPv4 und IPv6 Adressen, das 2 "X" muss jeweils einzeln mit Buchstaben hochgezählt werden. Also der erste IPv6 DNS Server hat dns6a der 2. dns6b usw. Der erste IPv4 Server hat dnsa der 2. IPv4 dnsb usw. Siehe: https://openwrt.org/docs/guide-user/services/dns/dot_dnsmasq_stubby#dot_provider

Nach dem @ folgt die IP Adresse des DoT DNS Servers und am Ende der Domainname auf dem das Zertifikat ausgestellt ist.

Ein aktuell testweise betriebener DoT Server ist z.b. fd43:5602:29bd:ffff:c:c:c:c / dns.dresel.systems

** Dies sollte mit bedacht aktiviert werden. Zitat aus dem OpenWRT Wiki:

 Enforce DNSSEC validation if your DNS provider does not support it, or you want to perform the validation yourself. Beware of performance issues. 

Zudem werden ungültige Domains aus anderen Communitys (z.b. *.dn42 oder *.ffgl) abgelehnt und nicht mehr aufgelöst.

babelpeer

Name Typ Pflicht Beschreibung
iface interface nein Babel auf physikalisches Interface legen
vlan number nein Babel auf VLAN mit angegebener IP auf dem Standard-Switch legen (alternativ zu iface!)
type babel-type nein Babel-Verbindungstyp (z. B. wired, wireless, tunnel, ...)
rxcost int nein Babel rxcost

wireguardpeer

Name Typ Pflicht Beschreibung
endpoint_host host oder ip ja Hostname oder IP-Adresse der Gegenstelle
endpoint_port port ja Port der Gegenstelle
persistent_keepalive seconds nein
remote_public_key wireguard pubkey ja Öffentlicher Schlüssel des Peering-Partners
local_private_key wireguard privkey nein Eigener privater Schlüssel (automatisch generiert wenn nicht angegeben)
rxcost int nein Babel rxcost
mtu int nein MTU des Babel Interfaces. WICHTIG bei DSL Anschlüssen, siehe TODO.

Hardware-Port-Belegungen

Die Switch-Port-Belegung für die gängigen und genutzten Router für die VLAN-Konfiguration.

GL-Inet AR-150

Port Switch Port Bemerkung
WAN - Abschnitt config vlan '2' entfällt.
LAN 1

TP-Link WDR4900 v1

Port Switch Port
WAN 1
LAN 1 2
LAN 2 3
LAN 3 4
LAN 4 5

TP-Link WR1043ND v1

Port Switch Port
WAN 0
LAN 1 1
LAN 2 2
LAN 3 3
LAN 4 4

TP-Link WR1043N(D) v2, v3, v4, v5

Port Switch Port
WAN 5
LAN 1 4
LAN 2 3
LAN 3 2
LAN 4 1
CPU 0

Ubiquiti EdgeRouter ER-X / ER-X-SFP

https://openwrt.org/toh/ubiquiti/ubiquiti_edgerouter_x_er-x_ka

Port (Beschriftung) Switch Port Funktion ER-X ER-X-SFP
eth0 0 WAN 24V PoE passiv in 24V PoE passiv out
eth1 1 Mesh 24V PoE passiv out
eth2 2 Mesh 24V PoE passiv out
eth3 3 Client 24V PoE passiv out
eth4 4 Client 24V PoE passiv passthrough 24V PoE passiv out
eth5/SFP 5 - nicht vorhanden kein Support! (stand Nov. 2019)
6 CPU