Quando eu sou ping
um servidor, existem dois tipos de resultados que posso obter:
- Tempo esgotado
- Mensagem de host inativo
Como o ping
comando sabe se um host está inativo? Em ambos os casos, o host não envia nenhuma resposta ao pacote de ping, então como ping
saber a diferença?
As diferenças entre as respostas não são determinadas pelo próprio ICMP, mas sim indiretamente.
O ICMP pode distinguir entre o seguinte:
Mas faz isso com outros recursos de rede. Os códigos 0, 1, 4 e 5 podem ser recebidos de um gateway. Os códigos 2 e 3 podem ser recebidos de um host.
Se, de acordo com as informações nas tabelas de roteamento do gateway, a rede de destino for inacessível (por exemplo, a distância até a rede for infinita), o gateway poderá enviar uma mensagem de destino inacessível ao host de origem da Internet do datagrama. Além disso, em algumas redes, o gateway pode determinar se o host de destino da Internet está inacessível. São os Gateways nessas redes que podem enviar mensagens de destino inacessível ao host de origem quando o host de destino estiver inacessível, portanto, não é realmente o ICMP que faz as determinações.
No caso em que no host de destino, o módulo IP não pode entregar o datagrama porque o módulo de protocolo ou porta de processo indicado não está ativo, então o host de destino pode enviar uma mensagem 'destination unreachable' para o host de origem.
Por fim, se um datagrama precisar ser fragmentado para ser encaminhado por um gateway, mas o sinalizador 'Não fragmentar' estiver ativado, o gateway descartará o datagrama e retornará uma mensagem de 'destino inalcançável'.
Agora, a diferença entre os 2 casos separados: Request Timed Out significa que nenhuma mensagem Echo Reply foi recebida dentro do tempo definido. Isso pode ser devido a muitas causas diferentes: falha de solicitação ARP, congestionamento de rede, filtragem de pacotes, erro de roteamento ou até mesmo um descarte silencioso.
Quando você recebe uma resposta de [endereço IP]: 'Host de destino inacessível', o problema ocorreu em/após um roteador remoto, cujo endereço é indicado pelo [endereço IP]. Portanto, é um roteador informando que há um problema entre ele e o endereço de destino.
Mensagem de host inativo:
Isso indica que você não conhece uma rota para o destino desejado ou um roteador remoto informa que não tem rota para o destino.
Tempo esgotado:
Indica a ausência de mensagens de resposta de eco. Nenhum pacote foi recebido dentro do tempo padrão.
Você não pode pingar se o computador não estiver conectado à internet porque ao pingar você realmente solicita o ip do host.