2 HTTP Server mit gleichem Port hinter Router, Verständnisfrage
Hallo Ihr Lieben,
Ich habe zuhause eine Lan-Festplatte (Freecom Networkdrive Pro), die ich per Browser konfigurieren kann.
diese hat die Adresse: 192.168.2.24
Wenn ich das richtig verstanden habe, läuft also auf der Festplatte ein HTTP Server (für die Webkonfiguration), der auf dem Port 80 lauscht und bei der eingabe dieser IP antwortet.
Jetzt kann meine Lan-Festplatte aber auch HTTP Server fungieren, diese Funktion habe ich eingeschaltet und alles eingerichtet.
Also eine Dynamische DNS besorgt, im Router eingegeben, Portweiterleitung Port 80 auf 192.168.2.24.
Wenn ich aus meinem Büro nun meine DynDNS IP im Browser eingebe, sehe ich meine von mir erstellte Website, funktioniert also alles prima, allerdings verstehe ich nicht warum es funktioniert.
Jetzt die erste Frage:
Wenn ich zuhause bin und 192.168.2.24 eingebe, bekomme ich die Weboberfläche und nicht meine Website.
Wie (und wer) unterscheidet, ob ich mit dem HTTP Server oder mit der Konfigurationsoberfläche verbunden werde, beide antworten doch auf Port 80???
Irgendwie habe ich einen Gedankenfehler.
Die zweite Frage:
Ich möchte nun als nächstes den FTP Server einrichten. Allerdings habe ich schon auf meiner Fritzbox 7170 einen FTP Server laufen, unter Port 21 (getestet, ist von aussen und innen erreichbar)
Meinem FTP Server auf der Lanfestplatte werde (muss ich? ) ich den Port 22 geben. Dann werde ich Portweiterleitung auf dem Router einrichten, öffentlicher Port 21 auf 192.168.2.24 Port 22. Oder muss ich das umgekehrt machen (wie ich vermute)? Also der FTP Server auf der NAS PLatte läuft auch mit Port 21, aber im Router mache ich eine Portforward von Port 22 auf Port 21 und frage aus dem Internet per ftp://ftpuser@dyndns.org:22 an?
Wenn ich jetzt von aussen meine mit einem Browser ftp://ftpuser@dyndns.org eintippe, woher weiss mein Router, ob er mich mit dem FTP Server der Fritzbox oder mit dem FTP Server der Lanfestplatte verbindet?? Zuhause kann ich ja mittels der IP Adressen auswählen, wohin.
Ich habe versucht, mich in das NAT Prinzip(ien) einzulesen, stehe aber irgendwie auf dem Schlauch und bitte um Gnade
Erklärt mir das bitte jemand.
Ich habe zuhause eine Lan-Festplatte (Freecom Networkdrive Pro), die ich per Browser konfigurieren kann.
diese hat die Adresse: 192.168.2.24
Wenn ich das richtig verstanden habe, läuft also auf der Festplatte ein HTTP Server (für die Webkonfiguration), der auf dem Port 80 lauscht und bei der eingabe dieser IP antwortet.
Jetzt kann meine Lan-Festplatte aber auch HTTP Server fungieren, diese Funktion habe ich eingeschaltet und alles eingerichtet.
Also eine Dynamische DNS besorgt, im Router eingegeben, Portweiterleitung Port 80 auf 192.168.2.24.
Wenn ich aus meinem Büro nun meine DynDNS IP im Browser eingebe, sehe ich meine von mir erstellte Website, funktioniert also alles prima, allerdings verstehe ich nicht warum es funktioniert.
Jetzt die erste Frage:
Wenn ich zuhause bin und 192.168.2.24 eingebe, bekomme ich die Weboberfläche und nicht meine Website.
Wie (und wer) unterscheidet, ob ich mit dem HTTP Server oder mit der Konfigurationsoberfläche verbunden werde, beide antworten doch auf Port 80???
Irgendwie habe ich einen Gedankenfehler.
Die zweite Frage:
Ich möchte nun als nächstes den FTP Server einrichten. Allerdings habe ich schon auf meiner Fritzbox 7170 einen FTP Server laufen, unter Port 21 (getestet, ist von aussen und innen erreichbar)
Meinem FTP Server auf der Lanfestplatte werde (muss ich? ) ich den Port 22 geben. Dann werde ich Portweiterleitung auf dem Router einrichten, öffentlicher Port 21 auf 192.168.2.24 Port 22. Oder muss ich das umgekehrt machen (wie ich vermute)? Also der FTP Server auf der NAS PLatte läuft auch mit Port 21, aber im Router mache ich eine Portforward von Port 22 auf Port 21 und frage aus dem Internet per ftp://ftpuser@dyndns.org:22 an?
Wenn ich jetzt von aussen meine mit einem Browser ftp://ftpuser@dyndns.org eintippe, woher weiss mein Router, ob er mich mit dem FTP Server der Fritzbox oder mit dem FTP Server der Lanfestplatte verbindet?? Zuhause kann ich ja mittels der IP Adressen auswählen, wohin.
Ich habe versucht, mich in das NAT Prinzip(ien) einzulesen, stehe aber irgendwie auf dem Schlauch und bitte um Gnade
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 93448
Url: https://administrator.de/forum/2-http-server-mit-gleichem-port-hinter-router-verstaendnisfrage-93448.html
Ausgedruckt am: 30.04.2025 um 03:04 Uhr
14 Kommentare
Neuester Kommentar
Ein webserver kann ja beliebige Webseiten hosten die alle über Port 80 erreichbar sind.
Die Unterscheidung, welche Seite der Webserver anzeigen soll wird anhand der URL bzw. virtual hosts config gemacht (sprich: URL http://webserv.name.de/admin = seite /srv/www/htdocs/admin/index.html
URL http://webserv.name.de = seite /srv/www/htdocs/index.html).
Beim Zugriff von aussen wird ein Portforwarding gemacht.
Du sendest Pakete an Port 80 (oder 20/21) an die öffentliche IP der FritzBox.
Diese beantwortet die Anfrage entweder selber, oder (wenn ein entsprechendes Port-Forwarding konfiguriert ist) sie leitet die Pakete direkt weiter an den internen PC.
Die Fritzbox packt dabei die Pakete aus und wechselt die Quell- und Ziel-IPs aus.
Anhand des anfragenden (Quell-)Ports weiss sie jedoch wo die Anfrage herkam, und da werden die Antwortpakete dann auch wieder zurückgeschickt.
Client-IP/TCP-Quellport------------------IP/TCP-Zielport-Fritzbox---------------------------Server
Die Unterscheidung, welche Seite der Webserver anzeigen soll wird anhand der URL bzw. virtual hosts config gemacht (sprich: URL http://webserv.name.de/admin = seite /srv/www/htdocs/admin/index.html
URL http://webserv.name.de = seite /srv/www/htdocs/index.html).
Beim Zugriff von aussen wird ein Portforwarding gemacht.
Du sendest Pakete an Port 80 (oder 20/21) an die öffentliche IP der FritzBox.
Diese beantwortet die Anfrage entweder selber, oder (wenn ein entsprechendes Port-Forwarding konfiguriert ist) sie leitet die Pakete direkt weiter an den internen PC.
Die Fritzbox packt dabei die Pakete aus und wechselt die Quell- und Ziel-IPs aus.
Anhand des anfragenden (Quell-)Ports weiss sie jedoch wo die Anfrage herkam, und da werden die Antwortpakete dann auch wieder zurückgeschickt.
Client-IP/TCP-Quellport------------------IP/TCP-Zielport-Fritzbox---------------------------Server
Das funktioniert natürlich nicht ! Die TCP Ports sind einzigartig pro Applikation und können auch immer nur auf einen einzigen Host im lokalen Netz geforwardet werden !
Hast du 2 Anwendungen im lokalen Netz, z.B. 2 Webserver dann musst du zwingend eine Port Translation machen, da sonst der Router diese Ports nicht mehr richtig zuordnen kann.
Z.B.
Webserver 1: loakle IP 172.16.1.1
Webserver 2: loakle IP 172.16.1.2
Dann lautet die Port Weiterleitungsliste z.B. so:
Eingehender Port TCP 80 -> ausgehend: lokale IP 172.16.1.1 Port TCP 80
Eingehender Port TCP 8080 -> ausgehend: lokale IP 172.16.1.2 Port TCP 80
Im Browser musst du dann http://meineseite.dyndns.org:8080 angeben wenn du auf den 2ten Webserver willst.
Analog geht das mit dem FTP Server bzw. allen Anwendungen bzw. Ports wenn mehrere davon im lokalen Netz vorhanden sind !
Kann dein Router keine Port Translation, dann müsste man den 2ten Webserver in der Konfig so umstellen das er per Default auf den Port 8080 hört. So gut wie alle DSL Router supporten aber Port Translation !!
Hast du 2 Anwendungen im lokalen Netz, z.B. 2 Webserver dann musst du zwingend eine Port Translation machen, da sonst der Router diese Ports nicht mehr richtig zuordnen kann.
Z.B.
Webserver 1: loakle IP 172.16.1.1
Webserver 2: loakle IP 172.16.1.2
Dann lautet die Port Weiterleitungsliste z.B. so:
Eingehender Port TCP 80 -> ausgehend: lokale IP 172.16.1.1 Port TCP 80
Eingehender Port TCP 8080 -> ausgehend: lokale IP 172.16.1.2 Port TCP 80
Im Browser musst du dann http://meineseite.dyndns.org:8080 angeben wenn du auf den 2ten Webserver willst.
Analog geht das mit dem FTP Server bzw. allen Anwendungen bzw. Ports wenn mehrere davon im lokalen Netz vorhanden sind !
Kann dein Router keine Port Translation, dann müsste man den 2ten Webserver in der Konfig so umstellen das er per Default auf den Port 8080 hört. So gut wie alle DSL Router supporten aber Port Translation !!
Wo liegt denn deine Hompage ?? Auch auf der 192.169.2.24 bzw. dem NAS ???
Nimm dir einen Sniffer wie den
http://www.wireshark.org/
oder den von MS:
http://www.microsoft.com/downloads/details.aspx?FamilyID=18b1d59d-f4d8- ...
und sniffer den Port TCP 80 Verbindungsaufbau einmal lokal mit und einmal von extern auf die 192.169.2.24.
Wenn du beide Traces vergleichst wirst du sofort sehen wo der Unterschied ist. Vermutlich fügt die FB da irgendwas ein, denn normal ist das nicht.
Es sollte immer nur die index.html geladen werden.
Nimm dir einen Sniffer wie den
http://www.wireshark.org/
oder den von MS:
http://www.microsoft.com/downloads/details.aspx?FamilyID=18b1d59d-f4d8- ...
und sniffer den Port TCP 80 Verbindungsaufbau einmal lokal mit und einmal von extern auf die 192.169.2.24.
Wenn du beide Traces vergleichst wirst du sofort sehen wo der Unterschied ist. Vermutlich fügt die FB da irgendwas ein, denn normal ist das nicht.
Es sollte immer nur die index.html geladen werden.
Also ich kanns mir jetzt auch nicht erklären warum der Webserver je nach Quell-IP verschiedene Webseiten ausliefert. Bist du sicher dass du aus dem internen Netz nicht http://192.168.x.x/admin oder sowas eingibst=
Yo das ist halt das ARP Protokoll - es findet heraus welche MAC-Adresse zur angefragten IP gehört, da im lokalen Netz eben per Ethernetstandard und damit per MAC-Adresse kommuniziert wird.
Beim Aufruf über den Namen stellt dein Client ja eine Verbindung zur öffentlichen IP deines Routers her (da diese IP mit dem DynDNS Namen verknüft ist), der Router schaut ins Portforwarding Table und sendet dann die Frames mit seiner eigenen Mac-Adresse zum networkdrive.
Aus Sicht des Networkdrives sind es jeweils Anfragen aus dem lokalen Netz - einmal sendet der Networkdrive die Antwort an den lokalen Client, einmal an den Router, der die Pakete dann routet und über die öffenltihce IP wiederrum dienem Client sendet.
Erklärt mir nun dennoch nicht warum das Netdrive versch. Webseiten anzeigt.
Beim Aufruf über den Namen stellt dein Client ja eine Verbindung zur öffentlichen IP deines Routers her (da diese IP mit dem DynDNS Namen verknüft ist), der Router schaut ins Portforwarding Table und sendet dann die Frames mit seiner eigenen Mac-Adresse zum networkdrive.
Aus Sicht des Networkdrives sind es jeweils Anfragen aus dem lokalen Netz - einmal sendet der Networkdrive die Antwort an den lokalen Client, einmal an den Router, der die Pakete dann routet und über die öffenltihce IP wiederrum dienem Client sendet.
Erklärt mir nun dennoch nicht warum das Netdrive versch. Webseiten anzeigt.
Ich würde sagen der einzige Unterschied ist dass bei der Internetanfrage dei IP das default-gateway ist (IP vom Router) und bei der PC Anfrage eben die IP vom PC. Eventuell ist das die Unterscheidung (bzw. der einizige Unterschied zw. beiden Anfragen) die den Webserver dazu bringt versch. Webseiten anzuzeigen.
Eventuell hat jemand noch ne andere Erklärung - mir fällt keine ein. Was sagt das Handbuch?
Der Webserver weiss vom Routing nichts, das macht ja der Router.
Eventuell hat jemand noch ne andere Erklärung - mir fällt keine ein. Was sagt das Handbuch?
Der Webserver weiss vom Routing nichts, das macht ja der Router.
Ah jo das ist richtig - in dem Fall wäre das genaugenommen "Destination-NAT/PAT". Die Ziel-IP wird übersetzt, nicht die Quellip. Ja, das wirds wohl sein woran der Webserver die Herkunft der Anfrage unterscheidet u. entsprechend die Webseite ausliefert.
Dann gibts noch die Varianten "NAT" wo beide IPs übersetzt werden, und "Source-NAT" wo nur die Quellip übersetzt wird. Und PAT ist das was eigentlich alle Heim-Router so machen - übersetzten mehrere privatge IPs in EINE öffentliche, und auen eine Port-Table auf wo vermerkt ist welche Session zu welcher Verbindung gehört damit mehrere gleichzeitig über eien IP ins Internet kommen.
Dann gibts noch die Varianten "NAT" wo beide IPs übersetzt werden, und "Source-NAT" wo nur die Quellip übersetzt wird. Und PAT ist das was eigentlich alle Heim-Router so machen - übersetzten mehrere privatge IPs in EINE öffentliche, und auen eine Port-Table auf wo vermerkt ist welche Session zu welcher Verbindung gehört damit mehrere gleichzeitig über eien IP ins Internet kommen.