A menudo, en el trabajo, necesito hacer ping a un servidor para comprobar si está activo. A veces recibo un mensaje que dice que no se pudo encontrar el host (¿nombre?) u otros errores que provocan una falta de respuesta.
¿Qué técnica existe para diagnosticar la causa de estos problemas? ¿Debería mirar primero la máquina de destino? ¿O mi máquina y su firewall? ¿Importa si la máquina que hace ping desde y hacia está en dominios diferentes? (Supongo que sí sólo si hay que cumplir con la configuración del firewall).
Gracias
Respuesta1
Un ping fallido significa que:
- Una solicitud de ping no llega al host de destino
- Una respuesta de ping no llega al host que envió la solicitud
Hay muchas razones por las que cualquiera de estas cosas puede suceder; la mayoría de estas razones se pueden dividir en problemas físicos o de software.
Al depurar, comienzo con el componente físico de la ruta de transmisión, es decir, las NIC, los cables de red y los dispositivos intermediarios.
Controles físicos
- El cable de red conecta los dos hosts. Si los dos hosts no están conectados directamente mediante un cable, asegúrese de que las NIC de envío y recepción estén conectadas al enrutador y/o puerto del conmutador correcto, ya que se pueden configurar para enrutar el tráfico de manera diferente.
Comprobaciones de software
- Asegúrese de que el sistema operativo reconozca las NIC de cada máquina. [1]
- Asegúrese de que ambas máquinas tengan una dirección IP, una máscara de subred, una puerta de enlace y una configuración de servidor de nombres válidas. [2]
- Asegúrese de que los hosts de envío y recepción tengan direcciones MAC válidas (sí, ya he tenido este problema antes) [3]
- Asegúrese de que los hosts emisores y receptores tengan información de caché ARP correcta para sus puertas de enlace [4]
- Existe la posibilidad de que el host emisor tenga una entrada de caché ARP para el host receptor o viceversa. Si existen dichas entradas, asegúrese de que sean correctas verificando que la dirección IP se asigne a la dirección MAC correcta. Si hay inconsistencias, elimine esas entradas del caché ARP.
- Verifique que los paquetes de ping (solicitudes de eco ICMP y respuestas de eco ICMP) no estén bloqueados por filtros en los firewalls de software locales o filtros que se ejecutan en dispositivos entre el host de envío y el de recepción.
- Si está utilizando un nombre de host para identificar el host receptor, intente usar la dirección IP directamente, ya que esto eliminará los problemas que surgen del proceso de resolución de nombres.
El mensaje de error devuelto por el comando ping también se debe considerar al solucionar problemas. Los mensajes de error que veo comúnmente incluyen:
Request Timed Out
Este es un mensaje muy genérico que indica que no se recibió una respuesta dentro del período de tiempo de espera. Esto puede ocurrir porque el host no pudo responder debido a la carga de trabajo y limitaciones de tiempo, o debido a problemas de conectividad o enrutamiento discutidos anteriormente.
Reply from {host}: Destination network unreachable
A menudo {host}
será la NIC de la máquina local o la puerta de enlace de la máquina. El mensaje significa que no pudo encontrar una ruta entre {host}
el host receptor (puede que me equivoque aquí)
Esta no es de ninguna manera una lista exhaustiva de razones por las cuales el ping puede fallar, sin embargo, cubre muchos problemas comunes. Espero que pueda ayudar a alguien la próxima vez que se rompa su red.
Las notas a pie de página siguientes se aplican a los sistemas basados en Windows NT, ya que aquí es donde tengo experiencia.
[1] Puede verificar que el sistema operativo tenga un controlador válido para su tarjeta de red verificando la presencia de cualquier elemento del Controlador de red en el nodo Dispositivos desconocidos en el Administrador de dispositivos. Si hay uno, necesita encontrar un controlador compatible para su tarjeta.
Verifique su tarjeta en el nodo Adaptador de red; suponiendo que su tarjeta esté en la lista, haga doble clic en ella y verifique si hay errores conocidos en la lista en Estado del dispositivo.
[2] Se puede acceder al cuadro de diálogo de configuración TCP/IP en Vista/Win 7 abriendo el Centro de redes y recursos compartidos -> Cambiar configuración del adaptador (panel izquierdo) -> haga clic con el botón derecho en el adaptador que le interesa y seleccione Propiedades (requiere elevación) y luego haga doble clic en Protocolo TCP/IP versión 4 o 6 dependiendo de lo que use (probablemente v4)
[3] al ejecutar el ipconfig /all
comando se mostrará la dirección MAC, así como la dirección IP, la máscara de subred, la puerta de enlace y los servidores de nombres. La dirección MAC está etiquetada como Dirección física en la salida.
[4] El ARP -a
comando muestra la tabla ARP actual para el host.
Respuesta2
Solo para agregar a lo anteriorRespuesta:
Nombre de host no encontrado: esto apunta a un problema de DNS en lugar de un problema de enrutamiento, por lo que deberá verificar su servidor DNS y su relación con el dispositivo desde el que está haciendo ping.
Para rastrear qué tan lejos está llegando su ping, intente usar tracert en lugar de ping para ver a qué dispositivo se llega antes de que falle la ruta (esto solo ayuda cuando el otro dispositivo no está en la misma subred que el dispositivo de inicio).
Respuesta3
Si recibes pings a veces, pero no en otras, y no puedes probarlos o detectarlos... aquí tienes algunas herramientas que te ayudarán a identificar problemas de red:
Ventanas: http://www.pingplotter.com/freeware.html rutando
Linux: http://en.wikipedia.org/wiki/MTR_%28software%29
Estas herramientas pueden ayudarle a decir que el quinto salto es aquel en el que las cosas se vuelven locas, y luego puede solucionar problemas de ese salto.
A veces, a través de las redes necesitas encontrar qué dispositivo está causando respuestas lentas y parece que no puedes encontrarlo durante un solo ping. Estas herramientas ayudan a identificarlo a través de una serie de pings manteniendo una "puntuación" y mostrándole un gráfico.
Tenga en cuenta que a los pings a veces también se les da menor prioridad, por lo que un ping lento no siempre significa que la red sea mala.
Además de la excelente y completa respuesta anterior, verifique que la NIC esté utilizando las velocidades de enlace adecuadas:
En Windows, podrías hurgar en la interfaz gráfica de usuario en las propiedades de red, y en Linux usarías "ethtool". Si los hosts a ambos lados de un enrutador/conmutador están configurados en 10 MB y Half Duplex, pero el enrutador/conmutador está configurado en 100 MB Full Duplex, arrojará errores extraños (por ejemplo). Sin embargo, esto es más común en una configuración nueva que en un sistema establecido.
Puede ver algunos de estos errores utilizando netstat:
netstat-S
o monitoreándolo constantemente, si eres un súper nerd:
para /L %i en (0,0,0) hacer @cls && netstat -S|find /I "Error" && @ping -n 1 -w 2000 224.0.0.0 >NUL && @cls
Si tiene errores, eso no es gran cosa; sin embargo, si tiene más y más errores por segundo, es probable que sea un problema de hardware/cableado/velocidad/dúplex.
Respuesta4
Si el ping no funciona, esto es lo que hago:
- Verifique que el nombre resuelva la IP correcta; a menudo es un problema no con los servidores sino con las computadoras portátiles de los compañeros de trabajo, etc.
- Si estoy seguro de que la IP es correcta, uso tracert para comprobar hasta dónde llego.
- Si no estoy seguro de que el servidor al que intento hacer ping esté reaccionando a los mensajes ICMP, uso telnet para abrir un puerto en el servidor y ver qué me dice.
- Compruebo si un compañero de trabajo puede acceder al servidor desde su PC