NAT von priv. Netz ins Freifunk: Unterschied zwischen den Versionen

Aus Freifunk Franken
Wechseln zu:Navigation, Suche
Zeile 24: Zeile 24:
* OpenWRT flashen
* OpenWRT flashen
* OpenWRT grundsätzlich einrichten, Passwort setzen, WLAN anlegen  
* OpenWRT grundsätzlich einrichten, Passwort setzen, WLAN anlegen  
* DHCP Server konfigurieren, als DNS forwarder sollte ein Freifunk Gateway eingetragen werden sowie ein anderer DNS Server (z.b. 8.8.8.8).
* DHCP Server konfigurieren, als DNS forwarder sollte ein Freifunk Gateway eingetragen werden sowie ein anderer DNS Server (z.b. 8.8.8.8), somit dürfte auch interne fff.community Namen auflösbar sein.
* Im LuCi unter Network -> Switch gucken welcher Port der Clientport zum Freifunkrouter ist (Netzwerkkabel anstecken und gucken welcher Port als belegt angezeigt wird). Unten bei VLAN auf Add klicken und ein neues VLAN anlegen (bei mir gab es bereits VLAN1 und VLAN2 das neue wurde somit VLAN3). Der Port der zum Freifunkrouter geht aus den anderen VLANs herausnehmen (auf off stellen) und im neu angelegten VLAN auf untagged stellen, sowie den Port zur CPU auf tagged. Alles abspeichern.
* Im LuCi unter Network -> Switch gucken welcher Port der Clientport zum Freifunkrouter ist (Netzwerkkabel anstecken und gucken welcher Port als belegt angezeigt wird). Unten bei VLAN auf Add klicken und ein neues VLAN anlegen (bei mir gab es bereits VLAN1 und VLAN2 das neue wurde somit VLAN3). Der Port der zum Freifunkrouter geht aus den anderen VLANs herausnehmen (auf off stellen) und im neu angelegten VLAN auf untagged stellen, sowie den Port zur CPU auf tagged. Alles abspeichern.
* Im LuCi unter Network -> Interfaces ein neues Interface erstellen "Add new Interface". Irgendeinen Namen ("Freifunk") und auf static adress stehen lassen. Unter advanced settings "Use gateway metric" eine 1 eingeben. Bei Firewall Settings auf unspecified -or- creat stellen, Namen eingeben ("Freifunk"). Als IP muss eine feste IP aus der eigenen Hood eingegeben werden die unter Netze reserviert wird. Gateway ein Gateway aus der eigenen Hood und DNS ebenfalls ein Gateway aus der eigenen Hood (zur vollständigkeithalber hier gehen auch andere Gateways aus anderen Hoods, ob es Sinn macht lass ich dahingestellt.). Das ganze abspeichern, es sollte nun ein neues Interface ethX.Y entstanden sein, wenn das Netzwerkkabel bereits im Freifunkrouter steckt, sollten darüber auch bereits Daten fliesen.
* Im LuCi unter Network -> Interfaces ein neues Interface erstellen "Add new Interface". Irgendeinen Namen ("Freifunk") und auf static adress stehen lassen. Unter advanced settings "Use gateway metric" eine 1 eingeben. Bei Firewall Settings auf unspecified -or- creat stellen, Namen eingeben ("Freifunk"). Als IP muss eine feste IP aus der eigenen Hood eingegeben werden die unter Netze reserviert wird. Gateway ein Gateway aus der eigenen Hood und DNS ebenfalls ein Gateway aus der eigenen Hood (zur vollständigkeithalber hier gehen auch andere Gateways aus anderen Hoods, ob es Sinn macht lass ich dahingestellt.). Das ganze abspeichern, es sollte nun ein neues Interface ethX.Y entstanden sein, wenn das Netzwerkkabel bereits im Freifunkrouter steckt, sollten darüber auch bereits Daten fliesen.

Version vom 14. Mai 2016, 10:12 Uhr

Diese Seite befindet sich noch im Entwurfsstadium.
Hilf mit sie zu verbessern!


Ich wünsche mir ein Review dieser Installation da ich mir selbst nicht sicher bin ob ich alle eventualitäten beachtet habe, sollte jemand ein Fehler auffallen bitte unbedingt melden!


Schon lange hat es mich gestört, das man von seinem Privaten Netzwerk nicht ins Freifunknetz kommt. In letzter Zeit haben einige Gespräche eine schöne Lösung ergeben, die ich gestern Abend umgesetzt habe.

Wichtige Informationen

  • Der eigene DSL/Kabel Router wird zu einem reinen Internetrouter degratiert, darüber läuft kein WLAN mehr!
  • Es wird ein weiterer OpenWRT Router benötigt (u.U. geht auch alles auf einem Gerät wird dann aber komplizierter), ich hab günstig einen wdr4300 geschossen, da dieser auch 5GHz kann, es geht aber auch mit 841er o.ä. man braucht nur mindestens 3 Ethernetports.
  • Das ganze ist nicht wunderschön, so mache ich ins Internet z.b. doppeltes NAT erst der OpenWRT Router und dann nochmals der Telekomrouter. Für meine Zwecke ist dies aber vollkommen ausreichen es wird vielleicht eklig wenn man Portforwarding einrichten möchte (aus dem Internet ins private Netz)
  • Aus dem Freifunknetz kann das private Netz nicht erreicht werden, es kann aber wie bei einem Internetrouter mit Portforwarding gearbeitet werden. Bildlich gesehen ist hier das "Freifunknetz ein Internet", unser OpenWRT Router macht mit dem Freifunknetz nichts anderes als jeder 0815 Internetrouter auch mit dem Internet.
  • Man ist in keine Hood direkt verbunden, das heißt es lassen sich gar keine fdff:: oder fe80:: IPv6 Adressen auflösen, man kommt nur per IPv4 Adressen ins Freifunknetz!

Installationsschema

Einrichtung

  • OpenWRT flashen
  • OpenWRT grundsätzlich einrichten, Passwort setzen, WLAN anlegen
  • DHCP Server konfigurieren, als DNS forwarder sollte ein Freifunk Gateway eingetragen werden sowie ein anderer DNS Server (z.b. 8.8.8.8), somit dürfte auch interne fff.community Namen auflösbar sein.
  • Im LuCi unter Network -> Switch gucken welcher Port der Clientport zum Freifunkrouter ist (Netzwerkkabel anstecken und gucken welcher Port als belegt angezeigt wird). Unten bei VLAN auf Add klicken und ein neues VLAN anlegen (bei mir gab es bereits VLAN1 und VLAN2 das neue wurde somit VLAN3). Der Port der zum Freifunkrouter geht aus den anderen VLANs herausnehmen (auf off stellen) und im neu angelegten VLAN auf untagged stellen, sowie den Port zur CPU auf tagged. Alles abspeichern.
  • Im LuCi unter Network -> Interfaces ein neues Interface erstellen "Add new Interface". Irgendeinen Namen ("Freifunk") und auf static adress stehen lassen. Unter advanced settings "Use gateway metric" eine 1 eingeben. Bei Firewall Settings auf unspecified -or- creat stellen, Namen eingeben ("Freifunk"). Als IP muss eine feste IP aus der eigenen Hood eingegeben werden die unter Netze reserviert wird. Gateway ein Gateway aus der eigenen Hood und DNS ebenfalls ein Gateway aus der eigenen Hood (zur vollständigkeithalber hier gehen auch andere Gateways aus anderen Hoods, ob es Sinn macht lass ich dahingestellt.). Das ganze abspeichern, es sollte nun ein neues Interface ethX.Y entstanden sein, wenn das Netzwerkkabel bereits im Freifunkrouter steckt, sollten darüber auch bereits Daten fliesen.
  • Unter Network -> Static Routes muss noch eine Route ins Freifunknetz angelegt werden, auf Add klicken bei Interface das Interface das wir zuvor angelegt haben auswählen, bei Host-IP or Network geben wir 10.0.0.0/8 ein, alles abspeichern.
  • LuCi -> Network -> Firewall. Bin mir jetzt nicht mehr sicher wie das standartmäßig aussieht, ich glaube aber falsch. Es muss so angepasst werden:

Es ist ein recht blödes herumgeklicke bis man das so hinbekommen hat, teilweise geht danach erstmal gar nichts mehr richtig, ein reboot hilft da dann.

Wäre schön wenn jemand der das frisch einrichtet noch Schritt für Schritt protokolliert, ich hab es leider schon fertig hier stehen und weiß nicht mehr was man alles tun musste um dahin zu kommen.

Die Firewall sorgt dafür:

    • lan wird auf Freifunk und WAN genattet. Da WAN die bessere Metrik hat, wird zuerst immer WAN verwendet, wenn WAN nicht erreichbar ist oder ein Zugriff auf 10.0.0.0/8 erfolgen soll (static routes oben) wird auf Freifunk genattet.
    • WAN -> rejectet jeglicher Zugriff von WAN auf den Router wird blockiert
    • Freifunk -> rejectet jeglicher Zugriff von Freifunk auf den Router wird blockiert.

ToDo

  • Interne fff.community Adressen die auf eine 10.er IP zeigen, lassen sich noch nicht auflösen, hier muss noch eine Lösung her.
  • Lässt sich evtl. in der eigenen Hood das fdff:: routen? Wer sich hier mit IPv6 auskennt, bitte melden!

Installation prüfen

Einen PC an den privaten Switch oder an einen der freien Ports des Router anschließen. Ebenso kann bzw. sollte das ganze auch vom neu geschaffenen WLAN aus geprüft werden.

Prüfen ob Internet über eigenen Anschluss geht:

C:\Users\Christian>tracert google.de

Routenverfolgung zu google.de [172.217.19.195] über maximal 30 Abschnitte:

  1    <1 ms    <1 ms    <1 ms  OpenWrt.lan [192.168.1.1]
  2    <1 ms    <1 ms    <1 ms  192.168.2.1
  3    17 ms    16 ms    16 ms  217.0.116.200
  4    17 ms    17 ms    16 ms  87.190.170.174
...

192.168.1.1 ist der OpenWRT Router, 192.168.2.1 ist mein Telekomrouter und von da geht es direkt ins Internet.

Prüfen ob das Freifunk geht, am besten mindestens 2 Hoods prüfen:

C:\Users\Christian>tracert 10.50.32.4

Routenverfolgung zu 10.50.32.4 über maximal 30 Abschnitte

  1    <1 ms    <1 ms    <1 ms  OpenWrt.lan [192.168.1.1]
  2    36 ms    35 ms    34 ms  10.50.32.4

Ablaufverfolgung beendet.

C:\Users\Christian>tracert 10.50.40.10

Routenverfolgung zu 10.50.40.10 über maximal 30 Abschnitte

  1    <1 ms    <1 ms    <1 ms  OpenWrt.lan [192.168.1.1]
  2    34 ms    34 ms    35 ms  10.50.32.4
  3    39 ms    39 ms    38 ms  10.50.40.10

Ablaufverfolgung beendet.

C:\Users\Christian>tracert 10.50.132.10

Routenverfolgung zu 10.50.132.10 über maximal 30 Abschnitte

  1    <1 ms    <1 ms    <1 ms  OpenWrt.lan [192.168.1.1]
  2    35 ms    34 ms    34 ms  10.50.32.4
  3    75 ms    76 ms    73 ms  10.50.252.10
  4   133 ms   133 ms   134 ms  10.50.252.89
  5   135 ms   136 ms   137 ms  10.50.132.10

Ablaufverfolgung beendet.
#ist ja dämlich das ich von mir zu Hetzner nach Rumänien zurück ins FabLab gehe, ich braucht mal noch ne direkte Verbindung ;)

Alle Hoods werden vom OpenWRT Router direkt ins Freifunknetz genattet welches dann weiter routet und sind erreichbar. Zur Sicherheit kann man jetzt noch prüfen ob aus dem Freifunknetz der eigene Router oder das eigene Netz erreichbar ist, da es aber keinen direkten Weg gibt, wüsste ich nicht mal welche IPs man da wie prüfen müssten. Es ist z.b. schon der OpenWRT Router nicht aus dem Freifunknetz erreichbar:

christiand@fff-gw-cd1:~$ curl 10.50.32.70
curl: (7) Failed to connect to 10.50.32.70 port 80: Connection refused
christiand@fff-gw-cd1:~$ ping 10.50.32.70
PING 10.50.32.70 (10.50.32.70) 56(84) bytes of data.
From 10.50.32.70 icmp_seq=1 Destination Port Unreachable
From 10.50.32.70 icmp_seq=2 Destination Port Unreachable
^C
--- 10.50.32.70 ping statistics ---
2 packets transmitted, 0 received, +2 errors, 100% packet loss, time 999ms

christiand@fff-gw-cd1:~$

Linux User kennen ihre Befehle garantiert selbst, die führ ich hier nicht auf.

Ich wünsche mir ein Review dieser Installation da ich mir selbst nicht sicher bin ob ich alle eventualitäten beachtet habe, sollte jemand ein Fehler auffallen bitte unbedingt melden!