На моем MBP запущен BIND9 с зоной для разработчика TLD. Затем у меня есть /etc/resolver/dev
setup с сервером имен линий nameserver 127.0.0.1
так что разрешение только для этого TLD выполняется с использованием моего локального сервера BIND.
Если я пингую запись в файле зоны для dev
(например, ping test.dev
), ping правильно разрешает хост до 127.0.0.1
как BIND настроен на возврат. Однако если я использую dig для поиска записей DNS для этого хоста (например, dig test.dev
), я получаю следующее:
; <<>> DiG 9.9.4 <<>> test.dev
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 28496
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;test.dev. IN A
;; ANSWER SECTION:
test.dev. 0 IN A 67.215.65.132
;; Query time: 51 msec
;; SERVER: 208.67.222.222#53(208.67.222.222)
;; WHEN: Wed Dec 11 09:04:00 EST 2013
;; MSG SIZE rcvd: 52
Таким образом, dig использует DNS-сервер, настроенный для всех запросов, а не проходит локальный процесс разрешения, как ping. Чтобы сделать его более интересным, я вполне уверен, что это работало даже на Mavericks, поскольку я поместил это в руководство по установке, которое я создал, выполнив сам процесс.
Есть ли причина, по которой dig разрешается иначе, чем ping?