wlan0 wlan1 NAT Regel und Webserver lokal nicht mehr erreichbar

  • Guten Morgen,

    Ich bin nach diesem Tutorial vorgegangen und habe aktuell das folgende Szenario (s. Anhang) im Einsatz:

    An wlan0 wird lokal ein Netzwerk per Access Point gehostet, an dem sich 20 Teilnehmer verbinden können. In diesem lokalen Netzwerk ist ein Jetty-Server auf dem Port 2222 gestartet, welcher nun mit Internet versorgt werden sollte. So habe ich als wlan1 einen Edimax WLAN-Stick im Einsatz, welcher sich mit meinem Router zu Hause verbindet und eine Internetverbindung aufbaut. Diese Internetverbindung wird per NAT-Regel wie im Tutorial (s. oben, oder: iptables -t nat -A POSTROUTING -o wlan1 -j MASQUERADE) vom wlan1 Interface an das wlan0 Interface weitergereicht.

    Zum Test verbinde ich mit also mit dem wlan0 Netzwerk per Smartphone und habe eine aktive Internetverbindung. Soweit so gut.

    Zum Problem:

    Verbunden per Smartphone mit dem wlan0 Access Point und einem abgeschlossenen IP-Scan sehe ich also die IP-Adresse des DHCP-Server des Access Point mit der 192.168.222.1, sowie ein paar offene Ports wie SSH etc. Was nun jedoch nach dem NAT-ing nicht mehr funktioniert ist ein Zugriff auf den Jetty-Webserver, welcher auf Port 2222 hört.

    Kann mir an der Stelle bitte erstmal jemand die NAT-Regel (s. oben) im Detail erklären: Was genau wir denn wie an wlan1 maskiert?

    Dafür wäre ich sehr dankbar.

    Schöne Grüße

    opc241

  • wlan0 wlan1 NAT Regel und Webserver lokal nicht mehr erreichbar? Schau mal ob du hier fündig wirst!

  • Ich halte NAT für den falschen Weg. Besser ist es dein Szenario mit dem Routing einzustellen.

    Dazu müsste ich wissen wer in den beiden Netzen 192.168.2.0/24 und 192.168.222.0/24 der DHCP-Server ist, wer dafür sorgt, dass die Rechner im jeweiligen ihre IP bekommen.

    Glaube ersetzt kein Wissen

  • Darf ich raten... ?... dieses Konstrukt hat noch nie funktioniert und ist eine neue Installation?

    Diese Internetverbindung wird per NAT-Regel wie im Tutorial ... vom wlan1 Interface an das wlan0 Interface weitergereicht.

    Nein, da wird nichts weitergeleitet. Es findet lediglich eine Adress-Ersetzung in der Absender-Adresse für Pakete statt, deren Ziel-Adresse außerhalb des LANs liegt. Ich denke, der Jetty-Server müsste im LAN des Default-Gateways lauschen, und somit wäre er dann auch mithilfe der NAT-Regel erreichbar.

  • Ich halte NAT für den falschen Weg. Besser ist es dein Szenario mit dem Routing einzustellen.

    Dazu müsste ich wissen wer in den beiden Netzen 192.168.2.0/24 und 192.168.222.0/24 der DHCP-Server ist, wer dafür sorgt, dass die Rechner im jeweiligen ihre IP bekommen.

    Ich würde es dennoch gerne per NAT umsetzen, da ich in dem Bereich dazulernen möchte.

    Darf ich raten... ?... dieses Konstrukt hat noch nie funktioniert und ist eine neue Installation?

    Nein, da wird nichts weitergeleitet. Es findet lediglich eine Adress-Ersetzung in der Absender-Adresse für Pakete statt, deren Ziel-Adresse außerhalb des LANs liegt. Ich denke, der Jetty-Server müsste im LAN des Default-Gateways lauschen, und somit wäre er dann auch mithilfe der NAT-Regel erreichbar.

    Du darfst natürlich raten - liegst aber falsch ;)

    Ok, die Weiterleitung findet durch das IPv4 Forwarding statt, das ist mir nun klar...

    Mich interessiert diese NAT Regel, verstehe sie nur nicht komplett.

    NAT kenne ich von der Adressumsetzung von public <-> private IP Adresse am Router. Welche Adressen setzt die NAT-Regel des Tutorial in meinem Fall konkret um? Du schreibst außerhalb des LAN... du meinst in meinem fall das WLAN 1 oder?

  • Du darfst natürlich raten - liegst aber falsch

    Dann stellt sich die Frage, was Du verändert hast, wenn es vorher lief, dass es jetzt nicht mehr läuft....

    Mich interessiert diese NAT Regel, verstehe sie nur nicht komplett.

    https://askubuntu.com/questions/4664…ext-of-iptables

    https://www.oreilly.com/openbook/linag2/book/ch11.html

    Frag einfach, wenn Du dabei auf etwas stößt, was zu kompliziert ist.... das kriegen wir dann sicher gelöst.

    2 Mal editiert, zuletzt von WinterUnit16246 (11. November 2019 um 12:37)

  • Frag einfach, wenn Du dabei auf etwas stößt, was zu kompliziert ist.... das kriegen wir dann sicher gelöst.

    Danke für die Links. Wenn ich es richtig verstanden habe, dann braucht man NAT in erster Linie um Datenpakete aus dem LAN ins WAN zu transportieren und das Thema Maskieren ist dabei also wenn beispielsweise ein Client im LAN ein Datenpaket versehen mit IP Adresse und Port an den Router sendet und dieser die Informationen in eine andere Adresse und einen anderen Port umsetzt und in seine IP-Tabelle einträgt und anschließend das geänderte Datenpaket ins WAN schickt?

    ...

    iptables -t nat -A POSTROUTING -o wlan1 -j MASQUERADE

    hieße dann also, dass die Datenpakete, die beispielsweise vom AP aus wlan0 an wlan1 geschickt werden, an wlan1 maskiert werden und anschließend weiter zum Internet-Router gesendet werden und umgekehrt.
    Wenn das soweit stimmt, verstehe ich nicht warum ich in meinem Fall die NAT-Regel überhaupt brauche, denn das Maskieren der Datenpakete die wlan1 verlassen und am Internet-Router ankommen würden doch erst vom Internet-Router maskiert werden müssen um ins WAN weitertransportiert werden zu können oder?

  • NAT transportiert nicht.... NAT ist nichts anders als der Ausstausch bzw. das Ersetzen von vorhandenen IP-Adressen im TCP-Header durch andere IP-Adressen.... entweder wird die Absender-Adresse ersetzt, oder die Ziel-Adresse.

    Postrouting bedeutet nicht 'eingehend', sondern immer 'ausgehend' und betrachtet somit immer nur über das Interface zu versendende Pakete. Und wenn man innerhalb eines LAN ein isoliertes Subnet betreibt (wie Dein Accesspoint-Subnetz), dann hätte dieses Subnet keinen Zugriff auf die Ressourcen des LANs, und natürlich auch nicht auf das Gateway zum Internet. Um das zu lösen, führt der Host, der als Router für das Subnet fungiert, ein NAT durch, um bei Paketen mit einer DADDR außerhalb des Subnets die in SADDR stehende IP (des Subnets) mit seiner eigenen (des LAN) zu ersetzen. Sofern die DADDR im LAN liegt, stellt der Router das Paket an den entsprechenden Client zu. Ansonsten führt dann der DSL-Router das gleiche noch einmal bei Paketen mit einer DADDR außerhalb des LANs (also ins WWW) durch. Er ersetzt dann die SADDR des Paketes durch seine öffentliche WAN-Adresse. Kommen aus dem WWW Anwort-Pakete zurück, mit (eigentlich) einer DADDR in das Subnet, müssen beide Router erneut ein NAT durchführen, dann auf DADDR.

    Du kannst Dir auf meiner Seite beides anschauen, sowohl den Umgang mit dem Paketfilter, wo auch NAT kurz erklärt ist, als auch die Einrichtung eines Accesspoint und LAN-Client mit 2 WLAN-Interfaces.

    4 Mal editiert, zuletzt von WinterUnit16246 (11. November 2019 um 15:44)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!