Использование:
# dig www.ru
; DiG 9.3.2 www.ru
;; global options: printcmd
;; Got answer:
;; ->>HEADER< <- opcode: QUERY, status: NOERROR, id: 1937
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 0
Здесь dig рассказывает о себе и информацию, которую он принял от DNS серверов. Вывод этой информации можно отключить, воспользовавшись ключом +[no]comments.
; QUESTION SECTION:
;www.ru. IN A
Информация, которую мы запрашиваем. Вывод этой информации можно отключить, воспользовавшись ключом +[no]question.
;; ANSWER SECTION:
www.ru. 74716 IN A 194.87.0.50
Ответ. www.ru имеет адрес 194.87.0.50. Вывод этой информации тоже можно отключить, воспользовавшись ключом +[no]answer. В самом конце заметки покажу, зачем это понадобиться.
;; AUTHORITY SECTION:
www.ru. 74716 IN NS ns.demos.su.
www.ru. 74716 IN NS ns1.demos.net.
Authority секция. Говорит нам о том, что www.ru обслуживают два DNS сервера. Вывод этой информации можно отключить, воспользовавшись ключом +[no]authority.
;; Query time: 26 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Sat Nov 18 16:58:25 2006
;; MSG SIZE rcvd: 92
Статистика. Вывод этой информации можно отключить, воспользовавшись ключом +[no]stats.
Dig может выполнять запросы A, NS, MX, TXT и ANY. Запросим адрес www.ru:
# dig www.ru A +noall +answer
www.ru. 72669 IN A 194.87.0.50
Запросим список NS серверов:
# dig www.ru NS +noall +answer
www.ru. 72619 IN NS ns.demos.su.
www.ru. 72619 IN NS ns1.demos.net.
Запросим список MX серверов:
# dig www.ru MX +noall +answer
www.ru. 86400 IN MX 5 hq.demos.ru.
Теперь запросим всё вместе.
# dig www.ru ANY +noall +answer
www.ru. 86364 IN MX 5 hq.demos.ru.
www.ru. 72554 IN NS ns1.demos.net.
www.ru. 72554 IN NS ns.demos.su.
www.ru. 72554 IN A 194.87.0.50
Быстрый ответ.
# dig www.ru +short
194.87.0.50
Быстрый ответ для MX.
# dig www.ru mx +short
5 hq.demos.ru.
Мало информации? Воспользуемся ключом +noall.
# dig +nocmd www.ru mx +noall +answer
www.ru. 84367 IN MX 5 hq.demos.ru.
Запросим SOA записи для зоны .ru используя ключ +multiline
# dig +nocmd ru any +multiline +noall +answer
ru. 0 IN SOA ns.ripn.net. hostmaster.ripn.net. (
4011206 ; serial
7200 ; refresh (2 hours)
900 ; retry (15 minutes)
2592000 ; expire (4 weeks 2 days)
3600 ; minimum (1 hour)
)
ru. 345600 IN NS ns.ripn.net.
ru. 345600 IN NS ns1.relcom.ru.
ru. 345600 IN NS ns2.nic.fr.
ru. 345600 IN NS ns2.ripn.net.
ru. 345600 IN NS ns5.msk-ix.net.
ru. 345600 IN NS ns9.ripn.net.
ru. 345600 IN NS sunic.sunet.se.
ru. 345600 IN NS auth60.ns.uu.net.
Смотрим PTR запись. Из IP адреса в имя.
# dig -x 194.87.0.50 +short
www.ru.
Отправляем запрос другому DNS серверу.
# dig @ns1.demos.net www.ru ANY +short
5 hq.demos.ru.
194.87.0.50
ns.demos.su.
ns1.demos.net.
ns.demos.su. ncc.demos.net. 2004121602 28800 7200 604800 86400
Запрашиваем много адресов по списку.
dig -f /home/brj/my-ip-list.txt
Tracing
# dig www.ru +trace +short
NS C.ROOT-SERVERS.NET. from server 127.0.0.1 in 0 ms.
NS D.ROOT-SERVERS.NET. from server 127.0.0.1 in 0 ms.
NS E.ROOT-SERVERS.NET. from server 127.0.0.1 in 0 ms.
NS F.ROOT-SERVERS.NET. from server 127.0.0.1 in 0 ms.
NS G.ROOT-SERVERS.NET. from server 127.0.0.1 in 0 ms.
NS H.ROOT-SERVERS.NET. from server 127.0.0.1 in 0 ms.
NS I.ROOT-SERVERS.NET. from server 127.0.0.1 in 0 ms.
NS J.ROOT-SERVERS.NET. from server 127.0.0.1 in 0 ms.
NS K.ROOT-SERVERS.NET. from server 127.0.0.1 in 0 ms.
NS L.ROOT-SERVERS.NET. from server 127.0.0.1 in 0 ms.
NS M.ROOT-SERVERS.NET. from server 127.0.0.1 in 0 ms.
NS A.ROOT-SERVERS.NET. from server 127.0.0.1 in 0 ms.
NS B.ROOT-SERVERS.NET. from server 127.0.0.1 in 0 ms.
A 194.87.0.50 from server ns1.demos.net in 79 ms.
Смотрим SOA информацию.
# dig www.ru +nssearch
SOA ns.demos.su. ncc.demos.net. 2004121602 28800 7200 604800 86400 from server ns.demos.su in 79 ms.
SOA ns.demos.su. ncc.demos.net. 2004121602 28800 7200 604800 86400 from server ns1.demos.net in 81 ms.
TTL и Кеш.
# dig +nocmd www.ru MX +noall +answer
www.ru. 83662 IN MX 5 hq.demos.ru.
и через несколько секунд.
# dig +nocmd www.ru MX +noall +answer
www.ru. 83156 IN MX 5 hq.demos.ru.
Ещё с помощью DIG можно «вытаскивать» зоны. Многие администраторы закрыли эту функцию. Помню что у ktk.ru запросы на передачу зоны были открыты. Пробуем.
# dig @ns.ktk.ru ktk.ru axfr +noanswer
; DiG 9.3.2 @ns.ktk.ru ktk.ru axfr +noanswer
; (1 server found)
;; global options: printcmd
;; Query time: 48 msec
;; SERVER: 80.253.225.3#53(80.253.225.3)
;; WHEN: Sat Nov 18 18:21:49 2006
;; XFR size: 735 records (messages 1)
COMMENTS_LIST_HEADER
Так и не понял, для чего )))