como o ping -W funciona

0

Eu quero tentar usar o ping para detectar se um servidor está inativo. Então a ideia era fazer com que algo pingasse para sempre, e então se o ping atingisse o tempo limite (sinalização -W) ele retornaria e eu seria capaz de detectá-lo. Mas se eu pingar um ping de endereço inacessível parece apenas bloquear para sempre, onde eu esperaria que o tempo limite e retornar.

ping 1.1.1.1 -W 1 -v
PING 1.1.1.1 (1.1.1.1) 56(84) bytes of data.
^C
--- 1.1.1.1 ping statistics ---
10 packets transmitted, 0 received, 100% packet loss, time 9071ms
    
por richmb 03.03.2015 / 21:10

1 resposta

1

ping não foi bloqueado, apenas não exibiu as transmissões com falha enquanto estava sendo executado.

Veja as estatísticas quando parou.

10 packets transmitted, 0 received, 100% packet loss, time 9071ms

Você vê que os pacotes foram transmitidos, mas não recebidos. Você executou por ~ 10 segundos e transmitiu 10 pacotes e esperou por 1 segundo pelo período de tempo limite que você mencionou antes de enviar o próximo pacote.

Se você deseja visualizar as transmissões com falha, você pode usar a opção -f com um intervalo de ping adequado usando a opção -i interval . O valor de interval deve ser maior que 0,2 segundos. Você pode encontrar mais detalhes sobre a página de manual do ping executando man ping .

ping -f -i .5 -W 1 1.1.1.1

Produzirá uma saída como essa.

PING 1.1.1.1 (1.1.1.1) 56(84) bytes of data.
.......^C
--- 1.1.1.1 ping statistics ---
7 packets transmitted, 0 received, 100% packet loss, time 3048ms

Onde cada . representa uma transmissão sem nenhuma resposta e, em caso de resposta, um backspace será impresso, removendo-se . .

Acho que isto é o tipo de solução que você está procurando. Um script automatizado para verificar periodicamente a conectividade.

    
por 04.03.2015 / 08:41