Message ID | 20201202203431.17575-1-freifunk@dresel.systems |
---|---|
State | Superseded |
Headers | show |
diff --git a/src/packages/fff/fff-babeld/files/etc/uci-defaults/02-network-rules b/src/packages/fff/fff-babeld/files/etc/uci-defaults/02-network-rules index df78e16..589632b 100644 --- a/src/packages/fff/fff-babeld/files/etc/uci-defaults/02-network-rules +++ b/src/packages/fff/fff-babeld/files/etc/uci-defaults/02-network-rules @@ -37,6 +37,11 @@ uci batch <<EOF set network.@rule6[2].in='mesh' set network.@rule6[2].lookup='10' set network.@rule6[2].priority='31' + add network rule6 + set network.@rule6[3]=rule6 + set network.@rule6[3].src='::/0' + set network.@rule6[3].lookup='10' + set network.@rule6[3].priority='32000' EOF uci commit network
Hallo, ich gebe dabei zu bedenken, dass dies das Debugging von Tunneln erschweren könnte, weil dann natürlich sämtlicher vom Router selbst ausgehender Traffic immer erst durch die fff-table geht. Ein Traceroute zeigt also nicht den Weg über WAN, sondern den Weg über FFF an. Ansonsten müsste das so funktionieren und dürfte abgesehen davon auf den ersten Blick auch keine anderen Probleme erzeugen. Deutlich schöner fände ich zwar, wenn man beides in Namespaces kapselt. Allerdings weiß ich nicht, wie man so etwas mit OpenWrt "schön" lösen kann, ohne tausend Zeilen Skript dazu nebenher laufen lassen zu müssen. Gruß Fabian P.S.: Der Commit stammt von einer andere Mail-Adresse als die Mail. Das möchtest du wahrscheinlich noch ändern. On 02.12.20 21:34, Christian Dresel wrote: > From: Christian Dresel <fff@chrisi01.de> > > With this patch the router answer in traceroute over the fff table with > Freifunk IPs and not with the WAN IP. All other connections use the fff > table too. > > We have the rule with 5000 and 5001 so that wireguard does not use the fff > table and build the VPN only over the main table. > > Signed-off-by: Christian Dresel <freifunk@dresel.systems> > --- > .../fff/fff-babeld/files/etc/uci-defaults/02-network-rules | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/src/packages/fff/fff-babeld/files/etc/uci-defaults/02-network-rules b/src/packages/fff/fff-babeld/files/etc/uci-defaults/02-network-rules > index df78e16..589632b 100644 > --- a/src/packages/fff/fff-babeld/files/etc/uci-defaults/02-network-rules > +++ b/src/packages/fff/fff-babeld/files/etc/uci-defaults/02-network-rules > @@ -37,6 +37,11 @@ uci batch <<EOF > set network.@rule6[2].in='mesh' > set network.@rule6[2].lookup='10' > set network.@rule6[2].priority='31' > + add network rule6 > + set network.@rule6[3]=rule6 > + set network.@rule6[3].src='::/0' > + set network.@rule6[3].lookup='10' > + set network.@rule6[3].priority='32000' > EOF > > uci commit network >
Hallo Fabian On 02.12.20 23:45, Fabian Bläse wrote: > Hallo, > > ich gebe dabei zu bedenken, dass dies das Debugging von Tunneln > erschweren könnte, weil dann natürlich sämtlicher vom Router selbst > ausgehender Traffic immer erst durch die fff-table geht. > Ein Traceroute zeigt also nicht den Weg über WAN, sondern den Weg über > FFF an. Hast du Recht aber ich hab 3 Gegenargumente: 1) Wenn ich was im Freifunk analysieren will, geht der Kram immer über WAN => nervt und ich muss mir einen Router ohne WAN suchen oder die Rules umbiegen 2) Bei einen Router ohne WAN ist es schon so, das es über Freifunk geht (zwangsweise, weil keine andere Möglichkeit) => Router verhalten sich aktuell unterschiedlich je nachdem was wie angeschlossen ist, man muss da u.U. aufpassen. 3) Und mein Standartargument: Das sind Freifunkrouter, die sollen soviel wie möglich per Freifunk abwickeln, darunter fällt mMn alles außer eben Tunnel worüber Freifunk transportiert wird. Beispiel: root@fln:~# traceroute 2a06:e881:340b::1 traceroute to 2a06:e881:340b::1 (2a06:e881:340b::1), 30 hops max, 64 byte packets 1 2001:a62:418:815a:20d:b9ff:fe43:b5ce (2001:a62:418:815a:20d:b9ff:fe43:b5ce) 0.407 ms 0.644 ms 0.330 ms 2 2001:a60::911:202:1 (2001:a60::911:202:1) 4.967 ms 9.683 ms 3.848 ms 3 2001:a60::69:0:2:2 (2001:a60::69:0:2:2) 5.402 ms 6.681 ms 5.524 ms 4 ipv6.de-cix.fra.de.as56381.level66.network (2001:7f8::dc3d:0:1) 9.696 ms 7.042 ms 6.644 ms 5 2a09:11c0:0:1::1 (2a09:11c0:0:1::1) 7.616 ms 6.876 ms 7.016 ms 6 saturn.dresel.systems (2a06:e881:3400::1) 14.058 ms 15.502 ms 14.363 ms 7 b00000000000000000001.freifunk.dresel.systems (2a06:e881:340b::1) 25.207 ms 25.690 ms 22.631 ms das wären eigentlich nur 2 Richtfunk Hops... Eigentlich... Wenn er in die richtige Table gucken würde und sich als Freifunkrouter sehen würde. Ich hatte damit z.b. auch immer Probleme wenn man einen DNS Server betreibt und nur F3N und meine Adressen erlauben will, das geht bei Routern mit WAN Anschluss immer mächtig schief weil sie (siehe im oberen Fall) mit der M-Net IP (bzw. halt WAN IP) rein kommen würden (meine Notlösung war dann immer, ULA Adressen zu verwenden, die blieben logischerweise sicher intern). > > Ansonsten müsste das so funktionieren und dürfte abgesehen davon auf > den ersten Blick auch keine anderen Probleme erzeugen. Ich hab das seit gestern bei mir laufen und augenscheinlich auch keine Probleme: root@fff-gw-hh:~# traceroute 2a09:: traceroute to 2a09:: (2a09::), 30 hops max, 64 byte packets 1 b00000000000000000001.freifunk.dresel.systems (2a06:e881:340b::1) 12.629 ms 11.303 ms 3.595 ms 2 jupiter.dresel.systems (2a01:4f8:221:2d08::200) 26.547 ms 11.419 ms 14.935 ms 3 ext.netshelter.fra.f3netze.de (2a0b:f4c0:400::) 24.122 ms 30.734 ms 26.535 ms 4 e01.fra.de.as49697.net (2001:678:a00:1000::5) 23.359 ms 24.580 ms 35.244 ms 5 public-dns-a.dns.sb (2a09::) 69.611 ms 34.543 ms 27.966 ms 1. Hop ist mein Layer 3 Router in meinem Wohnzimmer, er antwortet nun nicht mehr mit der Telekom IP sondern mit seiner Freifunk IP, es funktioniert hier alles soweit wunderbar wenn ich das richtig überblicke. > > Deutlich schöner fände ich zwar, wenn man beides in Namespaces > kapselt. Allerdings weiß ich nicht, wie man so etwas mit OpenWrt > "schön" lösen kann, ohne tausend Zeilen Skript dazu nebenher laufen > lassen zu müssen. Stimmt, wäre dann aber wohl ein neues Projekt, wenn es wer machen will, gerne machen, solang fände ich aber erstmal meine Lösung schöner als das was wir aktuell haben. > > Gruß > Fabian > > P.S.: Der Commit stammt von einer andere Mail-Adresse als die Mail. > Das möchtest du wahrscheinlich noch ändern. Japp ich hatte das git noch vermasselt hier, wenn kein Einwand/Änderungwunsch mehr kommt, schicke ich die Tage nochmal eine v2 mit richtiger Mail. Gruß Christian > > On 02.12.20 21:34, Christian Dresel wrote: >> From: Christian Dresel <fff@chrisi01.de> >> >> With this patch the router answer in traceroute over the fff table with >> Freifunk IPs and not with the WAN IP. All other connections use the fff >> table too. >> >> We have the rule with 5000 and 5001 so that wireguard does not use >> the fff >> table and build the VPN only over the main table. >> >> Signed-off-by: Christian Dresel <freifunk@dresel.systems> >> --- >> .../fff/fff-babeld/files/etc/uci-defaults/02-network-rules | 5 +++++ >> 1 file changed, 5 insertions(+) >> >> diff --git >> a/src/packages/fff/fff-babeld/files/etc/uci-defaults/02-network-rules >> b/src/packages/fff/fff-babeld/files/etc/uci-defaults/02-network-rules >> index df78e16..589632b 100644 >> --- >> a/src/packages/fff/fff-babeld/files/etc/uci-defaults/02-network-rules >> +++ >> b/src/packages/fff/fff-babeld/files/etc/uci-defaults/02-network-rules >> @@ -37,6 +37,11 @@ uci batch <<EOF >> set network.@rule6[2].in='mesh' >> set network.@rule6[2].lookup='10' >> set network.@rule6[2].priority='31' >> + add network rule6 >> + set network.@rule6[3]=rule6 >> + set network.@rule6[3].src='::/0' >> + set network.@rule6[3].lookup='10' >> + set network.@rule6[3].priority='32000' >> EOF >> uci commit network >> >