Warum kann ich mich verbinden http://127.0.0.1:8000/ aber nicht zu http://192.168.1.6/

Ich bin mit OS X Mountain Lion auf einem Rechner mit lokalen IP-Adresse 192.168.1.6 (wie berichtet durch das Netzwerk-Dienstprogramm und ifconfig) und arbeite mit einer lokalen (Django) Entwicklung web-server auf port 8000, möchte ich verbinden, um eine virtuelle Maschine mit einem Gast-OS auf der gleichen Maschine.

Auf dem host-OS (also OS X läuft auf dem Metall der Maschine w/Adresse 192.168.1.6) kann ich eine Verbindung zu meinem test-web-server über den browser navigieren, um die Adresse 127.0.0.1:8000; oder localhost:8000; aber nicht, wenn die Verwendung der Maschine die lokale IP-Adresse. Hier ist, was macht diese extra verwirrend:

  • Der router ist nicht das filtern der ports; und, nur um sicher zu sein, habe ich es explizit ports weiterleiten 8000 und 22 bis 192.168.1.6; Und spricht von port 22,
  • Wenn ich starten Sie den SSH-Dienst, den ich anschließen kann (von der Kommandozeile) via ssh 192.168.1.6
  • Es ist kein browser-Problem, denn ich kann mir auch nicht telnet 192.168.1.6 port 8000 (connection refused), während ich kann telnet auf 127.0.0.1 port 8000, und ich kann auch telnet 192.168.1.6 port 22
  • Die firewall auf off gesetzt ist (wie berichtet in den Systemeinstellungen), sondern werden extra sicher, ich habe auch ein ipfw-Regel zum zulassen alles durch

Hier sind die ipfw-Regeln:

00100 allow tcp from any to any dst-port 8000
65535 allow ip from any to any

Hier ist eine zusätzliche Bestätigung, dass der port, in der Tat, angehört zu werden, von meinem test-server:

netstat -an | grep 8000
tcp4       0      0  127.0.0.1.8000         *.*                    LISTEN 

also, was ist hier Los? Irgendwie port 22 wird anders behandelt als port 8000, aber jeder Ort, den ich denken kann, zu suchen für diese Unterschiede kann ich nicht finden. Warum kann ich nicht in dieser Maschine ist port 8000 über seine lokale ip-Adresse?

InformationsquelleAutor shanusmagnus | 2013-10-03

Schreibe einen Kommentar