Gatewayfirmware Config/mit stubby

== /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