Quiero enviarme un gruñido después de que el servidor SuSE finalice el proceso de arranque. Recibí este mensaje socket_sendto(): unable to write to socket [101]: Network is unreachable in
.
¿Cómo puedo verificar desde la línea de comandos si la red es accesible y esperar en caso de que no lo sea?
command-line
networking
opensuse
Radek
fuente
fuente
ping -c 1 www.yourtrustedserver.com | grep " 0% packet loss"
? Lo que esto hace es hacer ping al servidor con un paquete, y greps la salida para la cadena "0% de pérdida de paquetes". (el espacio antes del 0% es importante) Si el comando devuelve una fila, está conectado, de lo contrario, no está conectado.Respuestas:
ping
a un host externo puede fallar por una multitud de razones, solo algunas de las cuales realmente dicen algo útil sobre el estado de su propia red.Como primer paso, abra una ventana de terminal y escriba
ip route ls
Debería ver una salida a lo largo de las líneas de
Esto indica que su red local es una conexión ethernet (
eth0
) con la dirección192.168.15.0
, y que se puede encontrar su puerta de enlace predeterminada a través de la cual accede al resto de Internet192.168.15.1
.A continuación, puede intentar con
ping
esa dirección:Si ve algo similar a lo anterior, su propia red local está, al menos, bien. En este punto, puede comenzar a buscar con herramientas más avanzadas como
traceroute
ver dónde puede fallar su conexión con el destino.Sin embargo, después de un rápido chequeo en Google de lo
growl
que realmente se supone que es, tengo la sensación de que algo más está yendo mal. ¿Puede ampliar su pregunta para darnos algunos detalles más sobre lo que está tratando de hacer, cómo lo está intentando y el resultado completo del error? La línea que nos está dando actualmente se corta abruptamente ...fuente
ip route get 1.2.3.4
es más confiable que solo hacerip route ls
. El primero tendrá en cuenta las reglas vigentes además de las rutas. También elimina la posibilidad de leer mal las tablas de enrutamiento.Una manera muy simple y rápida es usar el
ping
comando.Puedes simplemente escribir
(o cnn.com o cualquier otro host) y vea si obtiene algún resultado. Esto supone que los nombres de host se pueden resolver (es decir, dns está funcionando). Si no es así, es de esperar que pueda proporcionar una dirección IP / número válido de un sistema remoto y ver si se puede alcanzar.
Aquí está la página del comando man .
Actualización :
Como un ejemplo rápido, puede verificar el valor de retorno (por ejemplo, con
"echo $?"
) deping
para ver si el comando tuvo éxito (siempre puede canalizar la salida del comando a> /dev/nul
). Tenga en cuenta que uso-c 1
aquí, pero podría usar más.fuente
ping -c 2 -n <other host's IP>
y opere con el código de retorno: si es verdadero (0), entonces tiene conectividad; si es falso (1), entonces no puede hablar con esa máquina.mtr es una herramienta similar al ping pero le brinda más información como pérdida de paquetes, estadísticas sobre tiempos de viaje de paquetes, etc.
fuente