Я хочу обрабатывать запросы DNS для моего собственного домена.
Например у меня есть домен dnsrequest.me
и сервер имен указывает на мой сервер 178.62.242.84
(whois это подтверждает).
Итак, когда кто-то делает запрос DNS для dnsrequest.me
в первый раз Когда-либо, запрос DNS должен прибыть на 178.62.242.84
право? Но это не так.
Мой сервер прослушивает запросы DNS на порту port 53
и когда я делаю запрос к серверу напрямую, он действительно работает. На мой сервер приходит следующий запрос.
dig @178.62.242.84 -t ANY dnsrequest.me
Когда я выполняю nslookup, на мой сервер ничего не приходит
bash-4.3$ nslookup dnsrequest.me
;; Got SERVFAIL reply from 8.8.8.8, trying next server
Server: 8.8.8.8
Address: 8.8.8.8#53
** server can't find dnsrequest.me: NXDOMAIN
Кажется, в вашем клее DNS есть ошибка. Когда я делаю запрос для dnsrequest.me на авторитетных DNS-серверах .me, они возвращают IP вместо имени:
mtak@frisbee:~$ dig -t ns dnsrequest.me @89.188.44.44
; <<>> DiG 9.9.5-3-Ubuntu <<>> -t ns dnsrequest.me @89.188.44.44
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 50716
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 2, ADDITIONAL: 1
;; WARNING: recursion requested but not available
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;dnsrequest.me. IN NS
;; AUTHORITY SECTION:
dnsrequest.me. 86400 IN NS 178.62.242.84. <<IP address not allowed here
dnsrequest.me. 86400 IN NS 178.62.242.83. <<IP address not allowed here
;; Query time: 3 msec
;; SERVER: 89.188.44.44#53(89.188.44.44)
;; WHEN: Mon Oct 13 16:53:30 CEST 2014
;; MSG SIZE rcvd: 96
Однако, по мнению RFC 1035 результатом запроса NS должно быть имя хоста / fqdn (то есть запись A). Затем эта запись может указывать на конкретный IP-адрес, например:
mtak@frisbee:~$ dig -t ns mtak.nl @194.146.106.42
; <<>> DiG 9.9.5-3-Ubuntu <<>> -t ns mtak.nl @194.146.106.42
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 24256
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 3, ADDITIONAL: 3
;; WARNING: recursion requested but not available
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;mtak.nl. IN NS
;; AUTHORITY SECTION:
mtak.nl. 7200 IN NS ns0.transip.net. < NS records (to hostnames)
mtak.nl. 7200 IN NS ns1.transip.nl. < NS records (to hostnames)
mtak.nl. 7200 IN NS ns2.transip.eu. < NS records (to hostnames)
;; ADDITIONAL SECTION:
ns1.transip.nl. 7200 IN A 80.69.69.69 < A records (to IP address)
ns1.transip.nl. 7200 IN AAAA 2a01:7c8:b::53
;; Query time: 22 msec
;; SERVER: 194.146.106.42#53(194.146.106.42)
;; WHEN: Mon Oct 13 16:55:17 CEST 2014
;; MSG SIZE rcvd: 163
Лучше всего связаться с вашим регистратором и попросить его обновить записи за вас. Конфигурация должна выглядеть так:
dnsrequest.me. IN NS ns1.dnsrequest.me.
dnsrequest.me. IN NS ns2.dnsrequest.me.
ns1.dnsrequest.me. IN A 178.62.242.83
ns2.dnsrequest.me. IN A 178.62.242.84