[v2] fff-gateway: add example gateway config

Submitted by lemmi on Jan. 31, 2020, 8:35 p.m.

Details

Message ID 20200131203536.8684-1-lemmi@nerd2nerd.org
State New
Headers show

Commit Message

lemmi Jan. 31, 2020, 8:35 p.m.
/etc/gateway.example

Signed-off-by: lemmi <lemmi@nerd2nerd.org>
---
Changes in V2:
- properly retab file
 .../fff/fff-gateway/files/etc/gateway.example | 85 +++++++++++++++++++
 1 file changed, 85 insertions(+)
 create mode 100644 src/packages/fff/fff-gateway/files/etc/gateway.example

Patch hide | download patch | download mbox

diff --git a/src/packages/fff/fff-gateway/files/etc/gateway.example b/src/packages/fff/fff-gateway/files/etc/gateway.example
new file mode 100644
index 0000000..ca54ef4
--- /dev/null
+++ b/src/packages/fff/fff-gateway/files/etc/gateway.example
@@ -0,0 +1,85 @@ 
+# Dies ist eine Beispieldatei.
+# Es handelt sich nicht um eine fertige Konfiguration.
+# Siehe https://wiki.freifunk-franken.de/w/Gatewayfirmware_Config
+
+config gateway 'meta'
+	option config_version '1'
+   
+# Switch Konfiguration
+config vlan '1'
+	option comment 'client'
+	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'
+
+# Hier die Freifunkadressen eintragen
+config client
+	option vlan '1'
+	# https://wiki.freifunk-franken.de/w/IPv6
+	list ip6addr '2001:db8::/64'   # ändern auf vergebenes Public IPv6 Subnetz
+	# https://wiki.freifunk-franken.de/w/Portal:Netz/IPv6
+	list ip6addr '2001:db8:1::/64' # ändern auf ULA IPv6 Subnetz (oft fd43:.../64)
+	# https://wiki.freifunk-franken.de/w/Portal:Netz
+	list ipaddr  '192.0.2.0/26'    # ändern auf eingetragene IPv4-Adresse
+	#option dhcp_start '192.0.2.10' # ändern gemäß IPv4-Adresse
+	#option dhcp_limit '50'
+	
+	# Bei WLAN Geraeten ausfuellen, 
+	# kann bei Routern ohne WLAN auskommentiert werden
+	option essid    'SSID.freifunk'
+	option chan2ghz '13'
+	option chan5ghz '36'
+	
+# https://wiki.freifunk-franken.de/w/DNS
+config dns
+	list server '10.83.252.0'
+	list server 'fd43:5602:29bd:ffff::42'
+   
+	list server '10.83.252.11'
+	list server 'fd43:5602:29bd:ffff:a:a:a:a'
+
+	list server '10.50.252.0'
+	list server 'fd43:5602:29bd:ffff::252'
+   
+	list server '10.83.252.62'
+	list server 'fd43:5602:29bd:ffff::62'
+	
+	list server '10.50.40.10'
+
+# Vorsicht: Config-Namen dürfen keine '-' enthalten
+# https://wiki.freifunk-franken.de/w/Freifunk-Gateway_aufsetzen/Babel#Richtlinien_f.C3.BCr_Babel_Penalty_.28rxcost.29
+# Variante mit VLAN
+config babelpeer 'hochhaus'
+	option vlan   '10'
+	#option type   'wired'
+	#option rxcost '96'    # WICHTIG: siehe Link oben und anpassen
+
+# Variante mit Interfacename
+config babelpeer 'kirchturm'
+	option iface  'eth1'
+	#option type   'wired'
+	#option rxcost '96'    # WICHTIG: siehe Link oben und anpassen
+
+config wireguardpeer 'meingateway'
+	# Daten vom Peering Partner
+	option endpoint_host     '<ip oder hostname>'     # IP Adresse oder Hostname
+	option endpoint_port     '12345'                  # Port
+	option remote_public_key '<wg pubkey vom server>' # Public Key
+ 
+	# Angeben eines private_key ist optional. Wird automatisch generiert, wenn nicht vorhanden.
+	# Ein Private Key kann auf EINEM Geraet mehrfach verwendet werden. 
+	#option local_private_key '<wg privkey für gwfirmware>'
+	#option rxcost            '16384'                 # rxcost im Babel
+	
+	# MTU darf nicht zu gross gewaehlt werden.
+	# Anschluesse, die per PPPoE tunneln haben eine geringere MTU
+	# Meistens 1412 bei DSL und manchen Glasfaseranschluessen mit PPPoE
+	# LTE oft noch geringer
+	# mit `tracepath <endpoint>`, oder `traceroute --mtu <endpoint>` nachpruefen
+	#option mtu '1420'

Comments

Robert Langhammer Feb. 9, 2020, 12:15 p.m.
Hi,

was spricht denn dagegen das nach /etc/config zu legen? In /etc passt
das gefühlt gar nicht hin.

Man könnte es dann noch mit

option config_version 'example'

ausschalten.

Viele Grüße
Robert

Am 31.01.20 um 21:35 schrieb lemmi:
> /etc/gateway.example
>
> Signed-off-by: lemmi <lemmi@nerd2nerd.org>
> ---
lemmi Feb. 9, 2020, 1:29 p.m.
Hi,

wir koennen das nicht nach /etc/config schieben, weil sonst uci das 
immer mit parst.

Der eigentliche Platz fuer sowas ist natuerlich 
/usr/share/{doc,examples}, aber dafuer gabs in der Runde nicht so viel 
Resonanz.

Gruesse,

lemmi

On 09.02.20 13:15, Robert Langhammer wrote:
> Hi,
>
> was spricht denn dagegen das nach /etc/config zu legen? In /etc passt
> das gefühlt gar nicht hin.
>
> Man könnte es dann noch mit
>
> option config_version 'example'
>
> ausschalten.
>
> Viele Grüße
> Robert
>
> Am 31.01.20 um 21:35 schrieb lemmi:
>> /etc/gateway.example
>>
>> Signed-off-by: lemmi <lemmi@nerd2nerd.org>
>> ---
Christian Dresel Feb. 9, 2020, 3:50 p.m.
Reviewed-by: Christian Dresel <fff@chrisi01.de>

Gruß

Christian

On 31.01.20 21:35, lemmi wrote:
> /etc/gateway.example
> 
> Signed-off-by: lemmi <lemmi@nerd2nerd.org>
> ---
> Changes in V2:
> - properly retab file
>  .../fff/fff-gateway/files/etc/gateway.example | 85 +++++++++++++++++++
>  1 file changed, 85 insertions(+)
>  create mode 100644 src/packages/fff/fff-gateway/files/etc/gateway.example
> 
> diff --git a/src/packages/fff/fff-gateway/files/etc/gateway.example b/src/packages/fff/fff-gateway/files/etc/gateway.example
> new file mode 100644
> index 0000000..ca54ef4
> --- /dev/null
> +++ b/src/packages/fff/fff-gateway/files/etc/gateway.example
> @@ -0,0 +1,85 @@
> +# Dies ist eine Beispieldatei.
> +# Es handelt sich nicht um eine fertige Konfiguration.
> +# Siehe https://wiki.freifunk-franken.de/w/Gatewayfirmware_Config
> +
> +config gateway 'meta'
> +	option config_version '1'
> +   
> +# Switch Konfiguration
> +config vlan '1'
> +	option comment 'client'
> +	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'
> +
> +# Hier die Freifunkadressen eintragen
> +config client
> +	option vlan '1'
> +	# https://wiki.freifunk-franken.de/w/IPv6
> +	list ip6addr '2001:db8::/64'   # ändern auf vergebenes Public IPv6 Subnetz
> +	# https://wiki.freifunk-franken.de/w/Portal:Netz/IPv6
> +	list ip6addr '2001:db8:1::/64' # ändern auf ULA IPv6 Subnetz (oft fd43:.../64)
> +	# https://wiki.freifunk-franken.de/w/Portal:Netz
> +	list ipaddr  '192.0.2.0/26'    # ändern auf eingetragene IPv4-Adresse
> +	#option dhcp_start '192.0.2.10' # ändern gemäß IPv4-Adresse
> +	#option dhcp_limit '50'
> +	
> +	# Bei WLAN Geraeten ausfuellen, 
> +	# kann bei Routern ohne WLAN auskommentiert werden
> +	option essid    'SSID.freifunk'
> +	option chan2ghz '13'
> +	option chan5ghz '36'
> +	
> +# https://wiki.freifunk-franken.de/w/DNS
> +config dns
> +	list server '10.83.252.0'
> +	list server 'fd43:5602:29bd:ffff::42'
> +   
> +	list server '10.83.252.11'
> +	list server 'fd43:5602:29bd:ffff:a:a:a:a'
> +
> +	list server '10.50.252.0'
> +	list server 'fd43:5602:29bd:ffff::252'
> +   
> +	list server '10.83.252.62'
> +	list server 'fd43:5602:29bd:ffff::62'
> +	
> +	list server '10.50.40.10'
> +
> +# Vorsicht: Config-Namen dürfen keine '-' enthalten
> +# https://wiki.freifunk-franken.de/w/Freifunk-Gateway_aufsetzen/Babel#Richtlinien_f.C3.BCr_Babel_Penalty_.28rxcost.29
> +# Variante mit VLAN
> +config babelpeer 'hochhaus'
> +	option vlan   '10'
> +	#option type   'wired'
> +	#option rxcost '96'    # WICHTIG: siehe Link oben und anpassen
> +
> +# Variante mit Interfacename
> +config babelpeer 'kirchturm'
> +	option iface  'eth1'
> +	#option type   'wired'
> +	#option rxcost '96'    # WICHTIG: siehe Link oben und anpassen
> +
> +config wireguardpeer 'meingateway'
> +	# Daten vom Peering Partner
> +	option endpoint_host     '<ip oder hostname>'     # IP Adresse oder Hostname
> +	option endpoint_port     '12345'                  # Port
> +	option remote_public_key '<wg pubkey vom server>' # Public Key
> + 
> +	# Angeben eines private_key ist optional. Wird automatisch generiert, wenn nicht vorhanden.
> +	# Ein Private Key kann auf EINEM Geraet mehrfach verwendet werden. 
> +	#option local_private_key '<wg privkey für gwfirmware>'
> +	#option rxcost            '16384'                 # rxcost im Babel
> +	
> +	# MTU darf nicht zu gross gewaehlt werden.
> +	# Anschluesse, die per PPPoE tunneln haben eine geringere MTU
> +	# Meistens 1412 bei DSL und manchen Glasfaseranschluessen mit PPPoE
> +	# LTE oft noch geringer
> +	# mit `tracepath <endpoint>`, oder `traceroute --mtu <endpoint>` nachpruefen
> +	#option mtu '1420'
>
Robert Langhammer Feb. 9, 2020, 4:26 p.m.
Hi,
das Parsen stört doch nicht, solange es keinen Error wirft. Ausserdem führt einen der erste Weg nach dem Flaschen so und so in diese Datei.
Robert 

Am 9. Februar 2020 14:29:35 MEZ schrieb lemmi <lemmi@nerd2nerd.org>:
>Hi,
>
>wir koennen das nicht nach /etc/config schieben, weil sonst uci das 
>immer mit parst.
>
>Der eigentliche Platz fuer sowas ist natuerlich 
>/usr/share/{doc,examples}, aber dafuer gabs in der Runde nicht so viel 
>Resonanz.
>
>Gruesse,
>
>lemmi
>
>On 09.02.20 13:15, Robert Langhammer wrote:
>> Hi,
>>
>> was spricht denn dagegen das nach /etc/config zu legen? In /etc passt
>> das gefühlt gar nicht hin.
>>
>> Man könnte es dann noch mit
>>
>> option config_version 'example'
>>
>> ausschalten.
>>
>> Viele Grüße
>> Robert
>>
>> Am 31.01.20 um 21:35 schrieb lemmi:
>>> /etc/gateway.example
>>>
>>> Signed-off-by: lemmi <lemmi@nerd2nerd.org>
>>> ---
Adrian Schmutzler Feb. 10, 2020, 2:49 p.m.
> Hi,
> das Parsen stört doch nicht, solange es keinen Error wirft. Ausserdem führt einen der erste Weg nach dem Flaschen so und so in diese Datei.
> Robert 

Trotzdem wird das dann die ganze Zeit von uci mit getrackt, bei jedem uci commit wird die Hashsumme mit angekuckt, und die Optionen wären dann auch per uci verfügbar.
Wie von Fabian festgestellt wäre die richtige Option hier ein komplettes Auskommentieren, was ich aber in der Praxis noch ekliger fände.

Zudem sollte keinesfalls eine Datei mit Punkt im Dateiname da rein, da der Punkt das Trennzeichen für die uci commands ist und das dann bestimmt irgendwas kaputt macht.

Mir gefällt von den möglichen Optionen auch /etc am besten, da liegt ja auch das Hoodfile.

Dann lieber am Anfang einen Kommentar, dass man die später mit mv /etc/gateway.example /etc/config/gateway an den richtigen Ort platzieren soll.

Grüße

Adrian


Am 9. Februar 2020 14:29:35 MEZ schrieb lemmi <lemmi@nerd2nerd.org>:
Hi,

wir koennen das nicht nach /etc/config schieben, weil sonst uci das 
immer mit parst.

Der eigentliche Platz fuer sowas ist natuerlich 
/usr/share/{doc,examples}, aber dafuer gabs in der Runde nicht so viel 
Resonanz.

Gruesse,

lemmi

On 09.02.20 13:15, Robert Langhammer wrote:
 Hi,

 was spricht denn dagegen das nach /etc/config zu legen? In /etc passt
 das gefühlt gar nicht hin.

 Man könnte es dann noch mit

 option config_version 'example'

 ausschalten.

 Viele Grüße
 Robert

 Am 31.01.20 um 21:35 schrieb lemmi:
 /etc/gateway.example

 Signed-off-by: lemmi <lemmi@nerd2nerd.org>
Robert Langhammer Feb. 10, 2020, 7:37 p.m.
Hi,

natürlich sollte die Datei dann nicht  .example heißen. Hatte ich übersehen.

So kennt man es von vielen Konfigdateien. 

Also man flasht die Firmware, geht in die /etc/config/gateway, macht
seine Änderungen und fertig. Wozu dann eine .example an einer anderen
Stelle im FS? Ich verstehe den Mehrwert nicht.

Viele Grüße
Robert

Am 10.02.20 um 15:49 schrieb Adrian Schmutzler:
>> Hi,
>> das Parsen stört doch nicht, solange es keinen Error wirft. Ausserdem führt einen der erste Weg nach dem Flaschen so und so in diese Datei.
>> Robert 
> Trotzdem wird das dann die ganze Zeit von uci mit getrackt, bei jedem uci commit wird die Hashsumme mit angekuckt, und die Optionen wären dann auch per uci verfügbar.
> Wie von Fabian festgestellt wäre die richtige Option hier ein komplettes Auskommentieren, was ich aber in der Praxis noch ekliger fände.
>
> Zudem sollte keinesfalls eine Datei mit Punkt im Dateiname da rein, da der Punkt das Trennzeichen für die uci commands ist und das dann bestimmt irgendwas kaputt macht.
>
> Mir gefällt von den möglichen Optionen auch /etc am besten, da liegt ja auch das Hoodfile.
>
> Dann lieber am Anfang einen Kommentar, dass man die später mit mv /etc/gateway.example /etc/config/gateway an den richtigen Ort platzieren soll.
>
> Grüße
>
> Adrian
>
>
> Am 9. Februar 2020 14:29:35 MEZ schrieb lemmi <lemmi@nerd2nerd.org>:
> Hi,
>
> wir koennen das nicht nach /etc/config schieben, weil sonst uci das 
> immer mit parst.
>
> Der eigentliche Platz fuer sowas ist natuerlich 
> /usr/share/{doc,examples}, aber dafuer gabs in der Runde nicht so viel 
> Resonanz.
>
> Gruesse,
>
> lemmi
>
> On 09.02.20 13:15, Robert Langhammer wrote:
>  Hi,
>
>  was spricht denn dagegen das nach /etc/config zu legen? In /etc passt
>  das gefühlt gar nicht hin.
>
>  Man könnte es dann noch mit
>
>  option config_version 'example'
>
>  ausschalten.
>
>  Viele Grüße
>  Robert
>
>  Am 31.01.20 um 21:35 schrieb lemmi:
>  /etc/gateway.example
>
>  Signed-off-by: lemmi <lemmi@nerd2nerd.org>
> ________________________________________
>
>
Fabian Blaese Feb. 10, 2020, 9:55 p.m.
Hey Robert,

aktuell sind wir nicht dazu in der Lage, die /etc/config/gateway den ist-Zustand abbilden zu lassen. Somit macht man sich mit einem configuregateway ohne vorherige Anpassung u.U. die VLANs etc. kaputt.
Weiterhin kommt dazu, dass Defaultwerte für so Dinge wie IP-Adresse etc. gar nicht mal so toll sind, wenn sie nicht auskommentiert da stehen.

Gruß
Fabian
Christian Dresel April 11, 2020, 8:38 a.m.
Hallo zusammen

ich möchte dieses Thema nochmal aufwärmen. Ich hab jemand der zwar
grundsätzlich von Freifunk Ahnung hat und auch bisschen
Netzwerkkenntnisse hat geholfen bei der L3 Installation. Er ist
allerdings nicht tief in der Firmware und OpenWRT drinnen und so war es
mal perfekt am Ende bisschen nachzufragen was den schöner sein könnte.
Zwei der antworten (Rest kommt gleich in ner anderen Mail) waren:

* Die Portkonfiguration ist schon ganz schön schwierig zu verstehen
* Eine Beispielconfig am Router wäre hübsch.

Das hat mich nun auf eine Idee gebracht. Die config hier ist ja
allgemeingültig und die Ports sind von irgendwas herausgewürfelt.

Wie wäre es denn, wenn wir für einige Standartmodelle (jedes wird wohl
zu aufwendig) config files drauf legen wo die Ports bereits sind:
* blau WAN (oder beim er-x z.b. der erste)
* gelb Client
So kann jemand, der einfach nur einen Layer 3 Knoten mit ein paar APs
hinten dran, direkt das Beispiel nehmen und muss sich mit der Portconfig
gar nicht auseinander setzen. Wer dann Sonderfälle (Babel tagged für RF
und Kram) braucht, hat zumindest schonmal ein lauffähiges Beispiel für
den Router und kann darauf aufbauen.

Ich stell mir das grade ähnlich aufgebaut wie die network files vor:
https://github.com/FreifunkFranken/firmware/tree/master/src/packages/fff/fff-network/ar71xx

Meinungen?

Gruß

Christian


On 31.01.20 21:35, lemmi wrote:
> /etc/gateway.example
> 
> Signed-off-by: lemmi <lemmi@nerd2nerd.org>
> ---
> Changes in V2:
> - properly retab file
>  .../fff/fff-gateway/files/etc/gateway.example | 85 +++++++++++++++++++
>  1 file changed, 85 insertions(+)
>  create mode 100644 src/packages/fff/fff-gateway/files/etc/gateway.example
> 
> diff --git a/src/packages/fff/fff-gateway/files/etc/gateway.example b/src/packages/fff/fff-gateway/files/etc/gateway.example
> new file mode 100644
> index 0000000..ca54ef4
> --- /dev/null
> +++ b/src/packages/fff/fff-gateway/files/etc/gateway.example
> @@ -0,0 +1,85 @@
> +# Dies ist eine Beispieldatei.
> +# Es handelt sich nicht um eine fertige Konfiguration.
> +# Siehe https://wiki.freifunk-franken.de/w/Gatewayfirmware_Config
> +
> +config gateway 'meta'
> +	option config_version '1'
> +   
> +# Switch Konfiguration
> +config vlan '1'
> +	option comment 'client'
> +	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'
> +
> +# Hier die Freifunkadressen eintragen
> +config client
> +	option vlan '1'
> +	# https://wiki.freifunk-franken.de/w/IPv6
> +	list ip6addr '2001:db8::/64'   # ändern auf vergebenes Public IPv6 Subnetz
> +	# https://wiki.freifunk-franken.de/w/Portal:Netz/IPv6
> +	list ip6addr '2001:db8:1::/64' # ändern auf ULA IPv6 Subnetz (oft fd43:.../64)
> +	# https://wiki.freifunk-franken.de/w/Portal:Netz
> +	list ipaddr  '192.0.2.0/26'    # ändern auf eingetragene IPv4-Adresse
> +	#option dhcp_start '192.0.2.10' # ändern gemäß IPv4-Adresse
> +	#option dhcp_limit '50'
> +	
> +	# Bei WLAN Geraeten ausfuellen, 
> +	# kann bei Routern ohne WLAN auskommentiert werden
> +	option essid    'SSID.freifunk'
> +	option chan2ghz '13'
> +	option chan5ghz '36'
> +	
> +# https://wiki.freifunk-franken.de/w/DNS
> +config dns
> +	list server '10.83.252.0'
> +	list server 'fd43:5602:29bd:ffff::42'
> +   
> +	list server '10.83.252.11'
> +	list server 'fd43:5602:29bd:ffff:a:a:a:a'
> +
> +	list server '10.50.252.0'
> +	list server 'fd43:5602:29bd:ffff::252'
> +   
> +	list server '10.83.252.62'
> +	list server 'fd43:5602:29bd:ffff::62'
> +	
> +	list server '10.50.40.10'
> +
> +# Vorsicht: Config-Namen dürfen keine '-' enthalten
> +# https://wiki.freifunk-franken.de/w/Freifunk-Gateway_aufsetzen/Babel#Richtlinien_f.C3.BCr_Babel_Penalty_.28rxcost.29
> +# Variante mit VLAN
> +config babelpeer 'hochhaus'
> +	option vlan   '10'
> +	#option type   'wired'
> +	#option rxcost '96'    # WICHTIG: siehe Link oben und anpassen
> +
> +# Variante mit Interfacename
> +config babelpeer 'kirchturm'
> +	option iface  'eth1'
> +	#option type   'wired'
> +	#option rxcost '96'    # WICHTIG: siehe Link oben und anpassen
> +
> +config wireguardpeer 'meingateway'
> +	# Daten vom Peering Partner
> +	option endpoint_host     '<ip oder hostname>'     # IP Adresse oder Hostname
> +	option endpoint_port     '12345'                  # Port
> +	option remote_public_key '<wg pubkey vom server>' # Public Key
> + 
> +	# Angeben eines private_key ist optional. Wird automatisch generiert, wenn nicht vorhanden.
> +	# Ein Private Key kann auf EINEM Geraet mehrfach verwendet werden. 
> +	#option local_private_key '<wg privkey für gwfirmware>'
> +	#option rxcost            '16384'                 # rxcost im Babel
> +	
> +	# MTU darf nicht zu gross gewaehlt werden.
> +	# Anschluesse, die per PPPoE tunneln haben eine geringere MTU
> +	# Meistens 1412 bei DSL und manchen Glasfaseranschluessen mit PPPoE
> +	# LTE oft noch geringer
> +	# mit `tracepath <endpoint>`, oder `traceroute --mtu <endpoint>` nachpruefen
> +	#option mtu '1420'
>
Fabian Blaese April 11, 2020, 8:48 a.m.
Hallo Christian,

genau das hatte ich ja zu Anfang der Diskussion vorgeschlagen.
Die Standardconfig fürs Gateway sollte den Zustand nach flashen und dem ersten Boot beschreiben.

Dafür ist aber defintiv ein Umbau von configurenetwork nötig, und das wird sich leider noch ein wenig ziehen.

Gruß
Fabian

On 11.04.20 10:38, Christian Dresel wrote:
> Hallo zusammen
> 
> ich möchte dieses Thema nochmal aufwärmen. Ich hab jemand der zwar
> grundsätzlich von Freifunk Ahnung hat und auch bisschen
> Netzwerkkenntnisse hat geholfen bei der L3 Installation. Er ist
> allerdings nicht tief in der Firmware und OpenWRT drinnen und so war es
> mal perfekt am Ende bisschen nachzufragen was den schöner sein könnte.
> Zwei der antworten (Rest kommt gleich in ner anderen Mail) waren:
> 
> * Die Portkonfiguration ist schon ganz schön schwierig zu verstehen
> * Eine Beispielconfig am Router wäre hübsch.
> 
> Das hat mich nun auf eine Idee gebracht. Die config hier ist ja
> allgemeingültig und die Ports sind von irgendwas herausgewürfelt.
> 
> Wie wäre es denn, wenn wir für einige Standartmodelle (jedes wird wohl
> zu aufwendig) config files drauf legen wo die Ports bereits sind:
> * blau WAN (oder beim er-x z.b. der erste)
> * gelb Client
> So kann jemand, der einfach nur einen Layer 3 Knoten mit ein paar APs
> hinten dran, direkt das Beispiel nehmen und muss sich mit der Portconfig
> gar nicht auseinander setzen. Wer dann Sonderfälle (Babel tagged für RF
> und Kram) braucht, hat zumindest schonmal ein lauffähiges Beispiel für
> den Router und kann darauf aufbauen.
> 
> Ich stell mir das grade ähnlich aufgebaut wie die network files vor:
> https://github.com/FreifunkFranken/firmware/tree/master/src/packages/fff/fff-network/ar71xx
> 
> Meinungen?
> 
> Gruß
> 
> Christian
Adrian Schmutzler April 11, 2020, 8:27 p.m.
Hallo Christian,

dies entspricht partiell der Lösung, wie ich sie in meiner GW-Firmware handhabe:

Man muss die Port-Konfiguration nicht zwingend in der /etc/config/gateway eintragen, sondern nur, wenn man etwas ändern will.

Dies erzeugt den netten Effekt, dass man, wenn man einfach nichts bzgl. Ports in die Config schreibt, man einfach die Standardconfig bekommt (in diesem Fall die Standardconfig der node-Firmware, also zwei Batman + zwei Client).
Der bestechende Vorteil liegt darin, dass man nicht _nochmal_ die Configs, die eh schon irgendwie liegen, nochmal in irgendeinem anderen File als "Standardconfig" vorhalten muss.
Der Nachteil ist offensichtlich, dass dies ein Bruch mit der bestehenden Config-Logik der offiziellen FW wäre.

Beste Grüße

Adrian

> -----Original Message-----
> From: franken-dev [mailto:franken-dev-bounces@freifunk.net] On Behalf
> Of Christian Dresel
> Sent: Samstag, 11. April 2020 10:38
> To: lemmi <lemmi@nerd2nerd.org>; franken-dev@freifunk.net
> Subject: Re: [PATCH v2] fff-gateway: add example gateway config
> 
> Hallo zusammen
> 
> ich möchte dieses Thema nochmal aufwärmen. Ich hab jemand der zwar
> grundsätzlich von Freifunk Ahnung hat und auch bisschen
> Netzwerkkenntnisse hat geholfen bei der L3 Installation. Er ist allerdings nicht
> tief in der Firmware und OpenWRT drinnen und so war es mal perfekt am
> Ende bisschen nachzufragen was den schöner sein könnte.
> Zwei der antworten (Rest kommt gleich in ner anderen Mail) waren:
> 
> * Die Portkonfiguration ist schon ganz schön schwierig zu verstehen
> * Eine Beispielconfig am Router wäre hübsch.
> 
> Das hat mich nun auf eine Idee gebracht. Die config hier ist ja allgemeingültig
> und die Ports sind von irgendwas herausgewürfelt.
> 
> Wie wäre es denn, wenn wir für einige Standartmodelle (jedes wird wohl zu
> aufwendig) config files drauf legen wo die Ports bereits sind:
> * blau WAN (oder beim er-x z.b. der erste)
> * gelb Client
> So kann jemand, der einfach nur einen Layer 3 Knoten mit ein paar APs
> hinten dran, direkt das Beispiel nehmen und muss sich mit der Portconfig gar
> nicht auseinander setzen. Wer dann Sonderfälle (Babel tagged für RF und
> Kram) braucht, hat zumindest schonmal ein lauffähiges Beispiel für den
> Router und kann darauf aufbauen.
> 
> Ich stell mir das grade ähnlich aufgebaut wie die network files vor:
> https://github.com/FreifunkFranken/firmware/tree/master/src/packages/ff
> f/fff-network/ar71xx
> 
> Meinungen?
> 
> Gruß
> 
> Christian
> 
> 
> On 31.01.20 21:35, lemmi wrote:
> > /etc/gateway.example
> >
> > Signed-off-by: lemmi <lemmi@nerd2nerd.org>
> > ---
> > Changes in V2:
> > - properly retab file
> >  .../fff/fff-gateway/files/etc/gateway.example | 85
> > +++++++++++++++++++
> >  1 file changed, 85 insertions(+)
> >  create mode 100644
> > src/packages/fff/fff-gateway/files/etc/gateway.example
> >
> > diff --git a/src/packages/fff/fff-gateway/files/etc/gateway.example
> > b/src/packages/fff/fff-gateway/files/etc/gateway.example
> > new file mode 100644
> > index 0000000..ca54ef4
> > --- /dev/null
> > +++ b/src/packages/fff/fff-gateway/files/etc/gateway.example
> > @@ -0,0 +1,85 @@
> > +# Dies ist eine Beispieldatei.
> > +# Es handelt sich nicht um eine fertige Konfiguration.
> > +# Siehe https://wiki.freifunk-franken.de/w/Gatewayfirmware_Config
> > +
> > +config gateway 'meta'
> > +	option config_version '1'
> > +
> > +# Switch Konfiguration
> > +config vlan '1'
> > +	option comment 'client'
> > +	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'
> > +
> > +# Hier die Freifunkadressen eintragen config client
> > +	option vlan '1'
> > +	# https://wiki.freifunk-franken.de/w/IPv6
> > +	list ip6addr '2001:db8::/64'   # ändern auf vergebenes Public IPv6
> Subnetz
> > +	# https://wiki.freifunk-franken.de/w/Portal:Netz/IPv6
> > +	list ip6addr '2001:db8:1::/64' # ändern auf ULA IPv6 Subnetz (oft
> fd43:.../64)
> > +	# https://wiki.freifunk-franken.de/w/Portal:Netz
> > +	list ipaddr  '192.0.2.0/26'    # ändern auf eingetragene IPv4-Adresse
> > +	#option dhcp_start '192.0.2.10' # ändern gemäß IPv4-Adresse
> > +	#option dhcp_limit '50'
> > +
> > +	# Bei WLAN Geraeten ausfuellen,
> > +	# kann bei Routern ohne WLAN auskommentiert werden
> > +	option essid    'SSID.freifunk'
> > +	option chan2ghz '13'
> > +	option chan5ghz '36'
> > +
> > +# https://wiki.freifunk-franken.de/w/DNS
> > +config dns
> > +	list server '10.83.252.0'
> > +	list server 'fd43:5602:29bd:ffff::42'
> > +
> > +	list server '10.83.252.11'
> > +	list server 'fd43:5602:29bd:ffff:a:a:a:a'
> > +
> > +	list server '10.50.252.0'
> > +	list server 'fd43:5602:29bd:ffff::252'
> > +
> > +	list server '10.83.252.62'
> > +	list server 'fd43:5602:29bd:ffff::62'
> > +
> > +	list server '10.50.40.10'
> > +
> > +# Vorsicht: Config-Namen dürfen keine '-' enthalten #
> > +https://wiki.freifunk-franken.de/w/Freifunk-
> Gateway_aufsetzen/Babel#R
> > +ichtlinien_f.C3.BCr_Babel_Penalty_.28rxcost.29
> > +# Variante mit VLAN
> > +config babelpeer 'hochhaus'
> > +	option vlan   '10'
> > +	#option type   'wired'
> > +	#option rxcost '96'    # WICHTIG: siehe Link oben und anpassen
> > +
> > +# Variante mit Interfacename
> > +config babelpeer 'kirchturm'
> > +	option iface  'eth1'
> > +	#option type   'wired'
> > +	#option rxcost '96'    # WICHTIG: siehe Link oben und anpassen
> > +
> > +config wireguardpeer 'meingateway'
> > +	# Daten vom Peering Partner
> > +	option endpoint_host     '<ip oder hostname>'     # IP Adresse oder
> Hostname
> > +	option endpoint_port     '12345'                  # Port
> > +	option remote_public_key '<wg pubkey vom server>' # Public Key
> > +
> > +	# Angeben eines private_key ist optional. Wird automatisch
> generiert, wenn nicht vorhanden.
> > +	# Ein Private Key kann auf EINEM Geraet mehrfach verwendet
> werden.
> > +	#option local_private_key '<wg privkey für gwfirmware>'
> > +	#option rxcost            '16384'                 # rxcost im Babel
> > +
> > +	# MTU darf nicht zu gross gewaehlt werden.
> > +	# Anschluesse, die per PPPoE tunneln haben eine geringere MTU
> > +	# Meistens 1412 bei DSL und manchen Glasfaseranschluessen mit
> PPPoE
> > +	# LTE oft noch geringer
> > +	# mit `tracepath <endpoint>`, oder `traceroute --mtu <endpoint>`
> nachpruefen
> > +	#option mtu '1420'
> >