Hallo, ich führe eine Webanwendung auf Port 8000 aus. Wenn ich vom Hostserver localhost: 8000 darauf zugreife, reagiert sie in Ordnung. 127.0.0.1:8000 funktioniert ebenfalls, aber 192.168.1.7:8000 funktioniert nicht. 192.168.1.7 ist die IP meines Servers.
Auch wenn ich versuche, zu einer anderen Webanwendung zu wechseln, die auf Port 80 ausgeführt wird, funktioniert sie 192.168.1.7
Ich habe die UWW-Firewall aktiviert und die UWW-Standardeinstellung festgelegt. Ich benutze Ubuntu Server 12.04
Irgendwelche Vorschläge, warum ich über die IP-Adresse 8000 nicht auf Port 8000 zu meiner App gelangen kann?
Danke im Voraus!
netstat -tln | grep 8000
könnte etwas Licht auf das Problem werfen. Wenn der lokale Adresse des Servers127.0.0.1:8000
statt0.0.0.0:8000
, dann wird es nur über die Loopback - Schnittstelle erreichbar sein.Antworten:
Wie @JamesHenstridge hervorhebt, ist das beobachtete Verhalten nicht darauf zurückzuführen, dass Ubuntu Ihre Anwendung auf einigen IP-Adressen blockiert, sondern darauf, dass Ihre Anwendung explizit nur an die lokale Loopback-Schnittstelle (127.xxx) gebunden ist. Zumindest, wenn Sie keine Firewall installiert und eingerichtet haben, um diesen Port speziell zu blockieren.
Sie müssen in der Dokumentation Ihrer Anwendung nachsehen, ob eine Einstellung vorhanden ist, mit der sie andere (oder alle) Schnittstellen abhören kann.
quelle
In einer Konfigurationsdatei Ihrer Anwendung sollten Sie Ihre Anwendung so einrichten, dass sie ein externes externes IP abhört: Ihren Port. Dies bedeutet, dass es eine Konfigurationsdatei gibt, in der Sie eine Anweisung finden, die die Anwendung auffordert, entweder 127.0.0.1:xxxx oder localhost: xxxx abzuhören. Dies ist die IP, die mit einer internen IP (z. B. 192.168.1.40) oder einer externen IP geändert werden muss
Manchmal sollte die IP des lokalen Hosts durch 0.0.0.0:xxxx ersetzt werden. Dies bedeutet, dass die Anwendung auf eine Anfrage von einer beliebigen IP antworten sollte.
Iptables können auch dazu beitragen, Pakete von einer internen IP an eine externe IP weiterzuleiten.
quelle