No estoy seguro de la terminología; Intentaré ser lo más claro posible, pero tenga en cuenta que es posible que utilice mal alguna palabra.
Tengo varios servidores Ubuntu, todos conectados a la misma red. Puedo acceder a cada uno de estos servidores a través de SSH, pero sólo si estoy conectado a esa misma red a través de VPN.
Fondo:
Estoy intentando ejecutar un software de licencia que se supone que entrega la licencia a los otros servidores de la red. El software de licencia parece ejecutarse correctamente en el servidor designado y ese servidor también puede acceder al software de licencia. Cualquier otro servidor de la red no puede conectarse a este servidor que ejecuta el software de licencia.
Para solucionar este problema de red, en lugar de solucionar el software propietario, intenté ejecutar servidores Python Flask simples en cada uno de los servidores. Al igual que el software propietario, Flask parece funcionar correctamente pero no puedo conectarme desde otro servidor en la misma red, pero puedo conectarme desde el mismo servidor.
El problema:
Cuando ejecuto un simple"¡Hola Mundo!" servidor de matrazen Server_1
o Server_2
con host=0.0.0.0
y port=5000
puedo conectarme hacia Server_1
y Server_2
desde cualquier otro servidor usando ip_of_Server:5000
.
Sin embargo, si ejecuto el mismo servidor Flask Server_3
con los mismos parámetros, no puedo conectarme desde Server_1
o Server_2
. El error que recibo al intentar conectarme wget
es failed: No route to host.
. Cuando intento conectarme a través de Chrome, aparece ERR_CONNECTION_TIMED_OUT
.
También siempre puedo conectarme localhost:5000
desde cada uno de los servidores. Es decir, puedo conectarme al servidor de flask que se ejecuta Server_1
a Server_1
través de localhost:5000, pero no puedo conectarme al servidor de flask que se ejecuta Server_1
a Server_2
través de localhost:5000.
Lo que probé:
Inicialmente pensé que esto podría ser un problema de firewall.
Intenté 'deshabilitar' iptables
usando lo siguiente:
sudo iptables-save > /root/firewall.rules
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
Esto no pareció afectar la cuestión. También lo intenté sudo ufw disable
, pero igualmente, esto no afectó el problema.
Esto me lleva a creer que no es el firewall, pero no estoy seguro de si es cierto. Tampoco sé cómo continuar depurando este problema.
Respuesta1
El resultado de wget, 'No hay ruta al host', significa que ni Server_1
ni Server_2
tienen una 'ruta' hacia Server_3
, esto no es un problema de firewall o un problema de matraz, sino más bien un problema de IP (Protocolo de Internet).
Para solucionar este problema, sugiero asegurarse de que puede hacer "ping" Server_3
, asegurándose de que se esté conectando a Internet y que cuando use wget esté usando la dirección IP correcta, se necesitarían más detalles para señalar correctamente el error, como ejecutar un traceroute
.