У меня действительно странная проблема с моим DNS. Мое доменное имя ( strugee.net
) неразрешимо в одних сетях и разрешено в других.
Например, в моей домашней сети (в той же сети, где работает сервер):
% dig strugee.net
; <<>> DiG 9.10.3-P4 <<>> strugee.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 10086
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;strugee.net. IN A
;; ANSWER SECTION:
strugee.net. 1800 IN A 216.160.72.225
;; Query time: 186 msec
;; SERVER: 205.171.3.65#53(205.171.3.65)
;; WHEN: Sat Apr 16 15:42:36 PDT 2016
;; MSG SIZE rcvd: 56
Тем не менее, если я войду на сервер в Digital Ocean, домен не сможет решить:
% dig strugee.net
; <<>> DiG 9.9.5-9+deb8u3-Debian <<>> strugee.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 58551
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;strugee.net. IN A
;; Query time: 110 msec
;; SERVER: 2001:4860:4860::8844#53(2001:4860:4860::8844)
;; WHEN: Sat Apr 16 18:44:25 EDT 2016
;; MSG SIZE rcvd: 40
Но обращение к авторитетным серверам имен работает просто отлично:
% dig @dns1.registrar-servers.com strugee.net
; <<>> DiG 9.9.5-9+deb8u3-Debian <<>> @dns1.registrar-servers.com strugee.net
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 30856
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 5, ADDITIONAL: 1
;; WARNING: recursion requested but not available
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;strugee.net. IN A
;; ANSWER SECTION:
strugee.net. 1800 IN A 216.160.72.225
;; AUTHORITY SECTION:
strugee.net. 1800 IN NS dns3.registrar-servers.com.
strugee.net. 1800 IN NS dns4.registrar-servers.com.
strugee.net. 1800 IN NS dns2.registrar-servers.com.
strugee.net. 1800 IN NS dns1.registrar-servers.com.
strugee.net. 1800 IN NS dns5.registrar-servers.com.
;; Query time: 3 msec
;; SERVER: 216.87.155.33#53(216.87.155.33)
;; WHEN: Sat Apr 16 18:46:36 EDT 2016
;; MSG SIZE rcvd: 172
Ясно, что где-то есть проблема с большой сетью, которая не может разрешить мой домен, но я не могу понять, где. Я просмотрел dig
справочную страницу, чтобы найти варианты, которые могли бы помочь, но не нашел ничего особенно полезного.
Я нахожусь на Namecheap как регистратор доменов, а также хостинг DNS. У меня включена опция DNSSEC. В последнее время я не вносил никаких изменений в настройки DNS.
Как я могу отладить эту проблему и найти оскорбительный сервер имен?
источник
SERVFAIL
может указывать на проблему в восходящем направлении, но это все же указывает на пакет ответа.strugee.net
имеет пять записей NS, но никакихAAAA
записей оA
клее, только записи о клее. Хуже всего то, что эти пятьA
клейких записей указывают только на два разных IP-адреса. Это выглядит как довольно хрупкая установка. Даже если это не является основной причиной проблемы, на это стоит обратить внимание.Ответы:
daxd5 предложил хороший стартовый совет, но единственный реальный ответ здесь заключается в том, что вам нужно знать, как думать, как рекурсивный DNS-сервер. Поскольку на авторитетном уровне существует множество неверных конфигураций, которые могут привести к непоследовательности
SERVFAIL
, вам необходимы профессиональные средства проверки DNS или инструменты онлайн-проверки.В любом случае, цель не состоит в том, чтобы помочь вам, но я хотел убедиться, что вы понимаете, что нет окончательного ответа на этот вопрос.
В вашем конкретном случае я заметил, что
strugee.net
это зона, подписанная DNSSEC. Это видно из присутствияDS
иRRSIG
записей в справочной цепи:Прежде чем идти дальше, нам нужно проверить, действительно ли подпись действительна. DNSViz - это инструмент, часто используемый для этой цели, и он подтверждает, что проблемы действительно есть . Злой красный цвет на картинке говорит о том, что у вас есть проблема, но вместо того, чтобы наводить взгляд на все, мы можем просто развернуть Уведомления на левой боковой панели:
Проблема ясна: срок действия подписи в вашей зоне истек, а ключи необходимо обновить. Причина, по которой вы видите противоречивые результаты, заключается в том, что не на всех рекурсивных серверах включена проверка DNSSEC. Одни, которые проверяют, отбрасывают ваш домен, а для тех, кто этого не делает, это обычный бизнес.
Редактировать: DNS-инфраструктура Comcast, как известно, реализует проверку DNSSEC, и как один из их клиентов я могу подтвердить, что я также вижу
SERVFAIL
.источник
stugee.net
в выводе раскопок, который, очевидно, является опечаткой. DNSSEC часть этого анализа была сделана против правильного имени.В то время как вы действительно видите, что авторитетные серверы имен отвечают правильно, вам необходимо проследить всю цепочку разрешения DNS. Это, пройдитесь по всей иерархии DNS от корневых серверов вверх.
Это в основном проверяет, работают ли публичные DNS-серверы, и вы делаете то же самое, что должен делать ваш DNS-преобразователь. Таким образом, вы должны получать те же ответы, что и выше, на вашем сервере Digital Ocean, если что-то не так с их распознавателем DNS:
Если первые два запроса терпят неудачу, это сбой DNS на стороне Digital Ocean. Проверьте
/etc/resolv.conf
и попробуйте запросить дополнительный DNS-сервер. Если вторичный работает, просто переключите порядок для резольверов и попробуйте снова.источник