Назад | Перейти на главную страницу

Почему Ping начинает показывать результаты только через минуту

Я запускаю систему Solaris 11 в локальной частной сети 192.168.100.0/24, и я запускаю ping -s чтобы получить непрерывный пинг.

От шлюза к моему серверу я получаю

root@mygateway:~# ping -s 192.168.100.42
PING 192.168.100.42: 56 data bytes
64 bytes from 192.168.100.42: icmp_seq=0. time=0.311 ms
64 bytes from 192.168.100.42: icmp_seq=1. time=0.255 ms
64 bytes from 192.168.100.42: icmp_seq=2. time=0.271 ms

Но когда я пингую с моего сервера на шлюз, пинг не показывает никаких выходных данных, но затем через 3 минуты он выводит результаты для ВСЕХ последних 3 минут с высоким временем и продолжает работать с хорошим временем.

root@myserver:~# date; ping -s 192.168.100.101
Tuesday, January 27, 2015 09:17:13 AM GMT
PING 192.168.100.101: 56 data bytes
64 bytes from 192.168.100.101: icmp_seq=0. time=0.467 ms
64 bytes from 192.168.100.101: icmp_seq=1. time=161000.816 ms
64 bytes from 192.168.100.101: icmp_seq=2. time=160001.061 ms
64 bytes from 192.168.100.101: icmp_seq=3. time=159001.295 ms
...
...
...
64 bytes from 192.168.100.101: icmp_seq=201. time=0.234 ms
64 bytes from 192.168.100.101: icmp_seq=202. time=0.254 ms

ssh с моего сервера на мой шлюз работает правильно.

Оцените ваш совет.

Зависание, которое вы видите, скорее всего, связано с ошибкой разрешения имени.

По умолчанию Solaris будет пытаться выполнить обратный поиск в DNS, чтобы сопоставить IP-адрес, который вы отправляете, с осмысленным именем. Вывод ping не выводится на экран до тех пор, пока разрешение имени не будет завершено или, в этом случае, не истечет время ожидания. По истечении времени ожидания вы увидите, что все полученные ответы будут выведены на экран примерно в одно и то же время с ошибочными данными времени, и каждый последующий эхо-запрос будет продолжаться в обычном режиме.

Это легче всего решить, добавив переключатель '-n' к вашей команде ping, чтобы предотвратить попытку поиска, т.е.

ping -s -n 192.168.100.101

Вы также можете рассмотреть возможность добавления обратных зон на свой DNS-сервер (при условии, что он у вас есть) или просто добавить сопоставление имени хоста / IP-адреса в файл хостов, если это небольшое развертывание.

После справки @paulos я изучил настройки DNS на своем сервере.

cat /etc/resolv.conf

показывает, что DNS-серверы были настроены на сервере, но с момента последнего использования эти серверы были отключены. Итак, решение в этом случае заключалось в выключении DNS-клиента.

svcadm disable svc:/network/dns/client:default

и перезагрузитесь.

Некоторые справочные ссылки:

Управление конфигурацией сети в ручном режиме

Шаги настройки DNS-клиента в Oracle Solaris 11