Meu comando Ping parece não ter terminado. Isso significa que está sumindo?

10

Estou fazendo ping em um IP remoto. Eu sei muito pouco sobre o comando Ping. Quando faço ping no IP, ele continua indo e indo ... Eu não estou usando a opção -t .

Me$ ping 137.30.124.104
PING 137.30.124.104 (137.30.124.104): 56 data bytes
64 bytes from 137.30.124.104: icmp_seq=0 ttl=62 time=3.378 ms
64 bytes from 137.30.124.104: icmp_seq=1 ttl=62 time=3.825 ms
64 bytes from 137.30.124.104: icmp_seq=2 ttl=62 time=4.882 ms
64 bytes from 137.30.124.104: icmp_seq=3 ttl=62 time=1.822 ms
64 bytes from 137.30.124.104: icmp_seq=4 ttl=62 time=4.572 ms
....
64 bytes from 137.30.124.104: icmp_seq=290 ttl=62 time=3.273 ms

Isso significa que ele está executando o ping com êxito no IP? Ou que está tentando e falhando e tentando novamente? Como faço para parar?

    
por bernie2436 03.11.2013 / 18:29

2 respostas

15

É assim que o comando ping funciona. Você pode controlá-lo usando o interruptor de contagem, -c .

Exemplo

$ ping -c 2 skinner
PING skinner.bubba.net (192.168.1.3) 56(84) bytes of data.
64 bytes from skinner.bubba.net (192.168.1.3): icmp_req=1 ttl=64 time=1.00 ms
64 bytes from skinner.bubba.net (192.168.1.3): icmp_req=2 ttl=64 time=1.13 ms

--- skinner.bubba.net ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1002ms
rtt min/avg/max/mdev = 1.001/1.069/1.138/0.075 ms

Divisão da saída

Linhas como essa significam que ele está pingando com êxito o outro host:

64 bytes from skinner.bubba.net (192.168.1.3): icmp_req=2 ttl=64 time=1.13 ms

Estas linhas mostram detalhes sobre cada "ping", como ocorre entre o seu host e o host que você está tentando pingar.

6ª coluna

A coluna que contém esse valor, icmp_req=2 está informando qual pacote ICMP está relacionado. O comando ping fabrica pacotes de rede. Existem muitos tipos, você provavelmente já ouviu falar de TCP ou pacotes UDP. Outro tipo é o ICMP. O ICMP é semelhante ao SMS nas redes de telefonia celular. Seu objetivo principal é comandar e controlar a rede.

7ª coluna

A terceira coluna interessante é o TTL=64 . TTL - "aka. Time to Live", significa que o pacote irá atravessar apenas 64 nós antes de atingir o tempo limite. Portanto, se o sistema estiver a mais de 64 "saltos" longe do seu sistema, você não poderá fazer o ping, a menos que você aumente o TTL.

8ª coluna

Esta coluna mostra quanto tempo, no tempo, o ping levou a ocorrer (em milissegundos). Esta seria a coluna que se parece com isso: time=1.13 ms .

As outras colunas são bastante auto-explicativas.

Versões do ping

Diferentes comandos ping são implementados de maneira diferente nos vários Unixes. Então você precisa prestar atenção na versão.

$ ping -V
ping utility, iputils-sss20100418

Eu estou em um sistema Linux Fedora 14.

    
por 03.11.2013 / 18:43
1

A resposta do slm é ótima, mas se você quiser apenas verificar rapidamente se um host está ativo (e acessível, e respondendo ao ping), então você pode usar fping em vez de ping . Ele pinga o (s) host (s) e aguarda um curto período de tempo por uma resposta. O código de saída de fping reporta sucesso ou falha.

por exemplo,

cas@ganesh:~$ fping kali
kali is alive
cas@ganesh:~$ echo $?
0

cas@ganesh:~$ fping durga 
ICMP Host Unreachable from 203.xx.xxx.1 for ICMP Echo sent to durga (203.xx.xxx.14)
ICMP Host Unreachable from 203.xx.xxx.1 for ICMP Echo sent to durga (203.xx.xxx.14)
ICMP Host Unreachable from 203.xx.xxx.1 for ICMP Echo sent to durga (203.xx.xxx.14)
ICMP Host Unreachable from 203.xx.xxx.1 for ICMP Echo sent to durga (203.xx.xxx.14)
durga is unreachable
cas@ganesh:~$ echo $?
1

As mensagens 'ICMP Host Unreachable' podem ser descartadas redirecionando stderr para / dev / null. Por exemplo:

cas@ganesh:~$ fping durga 2>/dev/null 
durga is unreachable
    
por 05.11.2013 / 04:19