Мне просто любопытно, можно ли использовать dig, чтобы проверить, отвечает ли определенный сервер имен на рекурсивные запросы.
Спасибо!
Использовать dig
и проверьте статус RD
и RA
бит в ответе.
По умолчанию dig
отправит рекурсивный запрос (RD
установлен в заголовке запроса), если вы не установите +norecurse
флаг командной строки.
Если сервер поддерживает рекурсивные запросы, в ответе будет «доступна рекурсия». RA
установленный бит в заголовках ответа.
В RA
немного то диагностический тест для поддержки рекурсивных запросов.
Посмотрите, можете ли вы запросить у него запись DNS, для которой он не является авторитетным, например, попробуйте: host www.cnn.com ns.example.com
, где ns.example.com - это тестируемый сервер имен. Если он не отвечает на рекурсивные запросы, вы получите ОТКАЗ.
$ host www.cnn.com. ns1.example.com
Using domain server:
Name: ns1.example.com
Address: 192.168.183.130#53
Aliases:
Host www.cnn.com not found: 5(REFUSED)
тогда как DNS-сервер, который выполняет рекурсивные запросы:
$ host www.cnn.com. 8.8.8.8
Using domain server:
Name: 8.8.8.8
Address: 8.8.8.8#53
Aliases:
www.cnn.com has address 157.166.255.18
www.cnn.com has address 157.166.255.19
www.cnn.com has address 157.166.226.25
www.cnn.com has address 157.166.226.26
Другой вариант - использовать онлайн-проверку, такую как: