alibek Posted November 7, 2023 Posted November 7, 2023 Столкнулся со странным поведением. Есть DNS-сервер Unbound. Иногда с ним что-то происходит и он перестает работать. И выглядит это так: $ nslookup ya.ru <dns> <timeout> $ nslookup ya.ru 8.8.8.8 Server: 8.8.8.8 Address: 8.8.8.8#53 Non-authoritative answer: Name: ya.ru Address: 5.255.255.242 Name: ya.ru Address: 77.88.55.242 Name: ya.ru Address: 2a02:6b8::2:242 $ ping ya.ru PING ya.ru (77.88.55.242) 56(84) bytes of data. <timeout> $ ping 77.88.55.242 PING 77.88.55.242 (77.88.55.242) 56(84) bytes of data. 64 bytes from 77.88.55.242: icmp_seq=1 ttl=54 time=37.2 ms ... При выполнении команды ping ya.ru ответов на пинги нет (таймаут), хотя имя правильно ресолвится в IP-адрес. Но если выполнить команду ping <ip> (указав вместо имени IP-адрес), то ответы на пинги есть. Не могу понять, почему так. Вставить ник Quote
Умник Posted November 7, 2023 Posted November 7, 2023 На ICMP-ответы DNS никак не влияет, они у вас есть в любом случае. Когда вы передаете DNS-имя узла программе ping, она при каждом ICMP Reply пытается резольвить имя из обратной зоны для IP-адреса, который отвечает. Если передаете IP-адрес, то этого не происходит, поэтому ответ на экране в вашей ситуации появляется сразу, а не через DNS-таймаут (10 секунд). Как минимум так ведет себя ping в Ubuntu из пакета iputils. Предполагаю, что если бы вы запустили ping -n ya.ru, то строчки с ответами появлялись бы сразу. А ya.ru скорее всего резольвится, потому что имя лежит в кеше локального systemd-resolved. Вставить ник Quote
alibek Posted November 7, 2023 Author Posted November 7, 2023 Спасибо, похоже. Я действительно не ждал долго ответа пинга. Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.