Мне было интересно, в чем может быть причина того, что
dig @8.8.8.8 stackoverflow.com
терпит неудачу с
;; connection timed out; no servers could be reached
ошибка.
А tracert -p 53 8.8.8.8
работал нормально, я разрешил порт в нашем брандмауэре.
Как узнать до каких точек приходят пакеты?
Я только что добавил в свой локальный iptables правило для блокировки исходящего UDP-пакета на 53-м порту и получаю ту же ошибку, что и вы. Затем я удалил это правило и заблокировал порт на своем брандмауэре, и снова получил тот же результат, что и ожидался.
Чтобы ответить на ваш вопрос, вам необходимо использовать свои навыки сетевого и системного администрирования, чтобы разработать маршрут, по которому пакеты проходят через вашу сеть, а затем проверить соответствующие правила iptables / брандмауэра на каждом маршрутизаторе / хосте, чтобы выяснить, какой из них блокирует ваши запросы.
Я не думаю, что это можно сделать быстрее.
используйте флаг + трассировки
+ [no] trace Переключить отслеживание пути делегирования от корневых серверов имен для просматриваемого имени. По умолчанию трассировка отключена. Когда трассировка включена, dig выполняет итеративные запросы для разрешения искомого имени. Он будет следить за обращениями с корневых серверов, показывая ответ от каждого сервера, который использовался для разрешения поиска.
dig +trace @8.8.8.8 stackoverflow.com
; <<>> DiG 9.3.6-P1-RedHat-9.3.6-20.P1.el5_8.1 <<>> +trace @8.8.8.8 stackoverflow.com
; (1 server found)
;; global options: printcmd
. 24299 IN NS a.root-servers.net.
. 24299 IN NS b.root-servers.net.
. 24299 IN NS c.root-servers.net.
. 24299 IN NS d.root-servers.net.
. 24299 IN NS e.root-servers.net.
. 24299 IN NS f.root-servers.net.
. 24299 IN NS g.root-servers.net.
. 24299 IN NS h.root-servers.net.
. 24299 IN NS i.root-servers.net.
. 24299 IN NS j.root-servers.net.
. 24299 IN NS k.root-servers.net.
. 24299 IN NS l.root-servers.net.
. 24299 IN NS m.root-servers.net.
;; Received 228 bytes from 8.8.8.8#53(8.8.8.8) in 35 ms
com. 172800 IN NS a.gtld-servers.net.
com. 172800 IN NS b.gtld-servers.net.
com. 172800 IN NS c.gtld-servers.net.
com. 172800 IN NS d.gtld-servers.net.
com. 172800 IN NS e.gtld-servers.net.
com. 172800 IN NS f.gtld-servers.net.
com. 172800 IN NS g.gtld-servers.net.
com. 172800 IN NS h.gtld-servers.net.
com. 172800 IN NS i.gtld-servers.net.
com. 172800 IN NS j.gtld-servers.net.
com. 172800 IN NS k.gtld-servers.net.
com. 172800 IN NS l.gtld-servers.net.
com. 172800 IN NS m.gtld-servers.net.
;; Received 507 bytes from 198.41.0.4#53(a.root-servers.net) in 351 ms
stackoverflow.com. 172800 IN NS ns1.serverfault.com.
stackoverflow.com. 172800 IN NS ns2.serverfault.com.
stackoverflow.com. 172800 IN NS ns3.serverfault.com.
;; Received 149 bytes from 192.5.6.30#53(a.gtld-servers.net) in 184 ms
stackoverflow.com. 3600 IN A 64.34.119.12
stackoverflow.com. 3600 IN NS ns3.serverfault.com.
stackoverflow.com. 3600 IN NS ns1.serverfault.com.
stackoverflow.com. 3600 IN NS ns2.serverfault.com.
;; Received 165 bytes from 64.34.119.33#53(ns1.serverfault.com) in 102 ms