Porta in ascolto su localhost: 8000 ma non su ip: 8000


9

Ciao, sto eseguendo un'applicazione Web sulla porta 8000. Quando accedo ad esso dall'host locale del server host: 8000 risponde ok, anche 127.0.0.1:8000 funziona, ma 192.168.1.7:8000 non funziona. 192.168.1.7 è l'ip del mio server.

Inoltre, se provo ad andare a un'altra applicazione Web in esecuzione sulla porta 80, funziona 192.168.1.7

Ho abilitato ufw firewall e impostato ufw default allow. Sto usando Ubuntu Server 12.04

Qualche suggerimento sul perché non riesco ad accedere alla mia app sulla porta 8000 usando l'indirizzo IP: 8000?

Grazie in anticipo!


1
L'applicazione probabilmente sta ascoltando l'indirizzo localhost (127.0.0.1) anziché tutti gli indirizzi locali (0.0.0.0). Tuttavia, non hai fornito informazioni sufficienti sulla tua app affinché le persone possano aiutarti a risolvere questo problema.
James Henstridge,

La mia app in esecuzione sulla porta 8000 è solo un sito Web. Forse questa copia / incolla di netstat rivelerà di più sulla mia rete:
Marionette,

3
Bene, correre netstat -tln | grep 8000potrebbe far luce sul problema. Se l'indirizzo locale del server è 127.0.0.1:8000anziché 0.0.0.0:8000, sarà raggiungibile solo tramite l'interfaccia di loopback.
James Henstridge,

controlla il tuo iptables

Risposte:


5

Come sottolinea @JamesHenstridge, il comportamento che stai osservando non è dovuto al fatto che Ubuntu blocca l'applicazione su alcuni IP, ma a causa della tua applicazione che si lega esplicitamente solo all'interfaccia di loopback locale (127.xxx). Almeno se non hai installato e impostato un firewall per bloccare specificamente quella porta.

È necessario consultare la documentazione dell'applicazione per vedere se esiste un'impostazione per farla ascoltare su altre (o su tutte) le interfacce.


Conosci anche il port forwarding sul tuo router? Se hai intenzione di connetterti da Internet sulla porta 8000 devi inoltrare la porta 8000 a quel computer ip.
wlraider70,

0

In un file di configurazione dell'applicazione, è necessario impostare l'applicazione per ascoltare un IP esterno: yourport. Significa che esiste un file di configurazione in cui è possibile trovare una direttiva che dice all'applicazione di ascoltare 127.0.0.1:xxxx o localhost: xxxx Questo è l'IP da modificare con un IP interno (es: 192.168.1.40) o un IP esterno

A volte, l'IP localhost deve essere sostituito da 0.0.0.0:xxxx, il che significa che l'applicazione deve rispondere a una richiesta da qualsiasi IP.

Iptables può anche aiutare a inoltrare i pacchetti da un IP interno a un IP esterno.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.