[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