Jak ukryć „Host docelowy nieosiągalny” podczas uruchamiania polecenia ping

0

Kiedy uruchamiam polecenie ping, często robię to, mając na uwadze cel, aby dowiedzieć się, kiedy pojawiła się konkretna maszyna, np. Po ponownym uruchomieniu komputera. Ale ostatnio (czytaj: w ciągu ostatnich kilku lat) zauważyłem, że po 10 lub 15 sekundach nieotrzymania odpowiedzi, ping zaczyna się bardzo rozmawiać, co sekundę wyświetla „Destination Host Unreachable” co sekundę! To jest bardzo denerwujące. Jedną z wielkich zastosowań diagnostycznych ping stosować się, że każda produkcja w ogóle oznaczało, że gospodarz był w górę.

Więc jak mogę pozbyć się tego głupiego irytującego zachowania i pozwolić mu drukować tylko rzeczywiste pingi? Te „Destination Host Unreachable” nie będą stderr, tak jak oczekiwałbym dobrze zachowującego się programu z błędami, więc nie mogę przekierować stderr, aby się ich pozbyć!

Michael
źródło

Odpowiedzi:

1

„Host docelowy nieosiągalny” jest podawany, gdy system nie wie, jak wysłać żądanie ping do zdalnego hosta. Oznacza to, że Twój system lub router pomiędzy nimi nie ma pozycji / reguły tablicy routingu, która pozwala na przekazywanie pakietu do routera odpowiedzialnego za tę sieć.

I robi się „wyjątkowo rozmowny”, ponieważ dzieje się tak w przypadku każdego pakietu (tzn. Nie jest on tracony, ale w zasadzie pojawia się komunikat „nie wiem, jak dostarczyć ten pakiet” z powrotem dla każdego).

Możesz je jednak odfiltrować za pomocą grep

ping 192.168.5.1 | grep -v "host unreachable"
współpracownik
źródło
Mogę się mylić, ale wierzę, że pod Linuksem będzie działać w czasie rzeczywistym.
współpracownik
Poprawiłem się, byłem idiotą, usunięto głosowanie, dodano głosowanie.
terdon
Bardzo mile widziane.
współpracownik
0

Opcja -i może ci pomóc (ze strony podręcznika ping):

    -i interval
           Wait interval seconds between sending each packet.  The
           default  is  to wait for one second between each packet
           normally, or not to wait in flood mode. Only super-user
           may set interval to values less 0.2 seconds.
terdon
źródło