Назад | Перейти на главную страницу

Как убедиться, что смена DNS активна

У меня есть служба DNS от третьей стороны, которая предоставляет веб-приложение для изменения DNS. Я изменил настройки DNS, чтобы указать один из контролируемых мной доменов на наш новый IP-адрес, но прошло несколько часов, а статус не изменился.

Не очень хорошо разбираясь в том, как работают изменения DNS, я пытаюсь отладить то, что происходит - или, скорее, не происходит. Я понимаю, что DNS требует времени для глобального распространения по мере истечения срока действия кешей, но я хотел бы подтвердить, что изменение произошло на DNS-сервере моего провайдера и, таким образом, изменение уже началось.

Предыдущий IP был 1.1.1.1 и новое 2.2.2.2 (изменено для этой статьи)

Сначала я подтвердил, что домен действительно использует сервер имен, в который я могу вносить изменения:

ilari@alux:~$ dig mydomain.fi NS

; <<>> DiG 9.7.3 <<>> mydomain.fi NS
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 6569
;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 4

;; QUESTION SECTION:
;mydomain.fi.           IN  NS

;; ANSWER SECTION:
mydomain.fi.        77916   IN  NS  dns2.myprovider.com.
mydomain.fi.        77916   IN  NS  dns3.myprovider.com.
mydomain.fi.        77916   IN  NS  dns.myprovider.com.
mydomain.fi.        77916   IN  NS  dns4.myprovider.com.

;; ADDITIONAL SECTION:
dns.myprovider.com. 1582    IN  A   10.11.12.13
dns2.myprovider.com.    1442    IN  A   10.11.12.14
dns3.myprovider.com.    1715    IN  A   10.11.12.15
dns4.myprovider.com.    1457    IN  A   10.11.12.16

(Я изначально использовал whois mydomain.fi для этого, но теперь я понимаю, что это был неправильный способ, поскольку он фактически не запрашивает DNS, а только то, что написано об этом в записи whois, если что-то еще.)

После этого я попробовал использовать host для получения результатов напрямую с сервера провайдера. Я предполагаю, что это должно немедленно привести к отображению нового IP-адреса, но вместо этого:

ilari@alux:~$ host mydomain.fi dns.myprovider.com
Using domain server:
Name: dns.myprovider.com
Address: 10.11.12.13#53
Aliases: 

mydomain.fi has address 1.1.1.1

Это было спустя много часов. Я подумал, что его нужно было немедленно изменить на 2.2.2.2, поскольку он должен запрашивать точный сервер, на котором я вношу изменения из веб-интерфейса. Что я должен ожидать от результатов?

Как мне убедиться, что веб-интерфейс у моего провайдера работает, а DNS правильно изменился на их сервере?


Оказывается это был проблема в их конце. Веб-интерфейс не внес изменения должным образом, и IP-адрес на их DNS-сервере не был фактически изменен.

После того, как их проблема была решена, все еще оставалась задержка в несколько минут после того, как изменение было замечено с помощью host mydomain.fi dns.myprovider.com (и, конечно же, дольше, пока изменение не станет глобальным).

Изменение DNS становится «активным», как только вы его вносите и подтверждаете, что все авторитетных серверов (перечисленных в записях NS зоны) обслуживают новую запись. Ладададада указал вам на вопрос / ответ, в котором объясняется, как это проверить.

Изменение DNS «распространяется» после того, как срок действия кешей на всех серверах по всему миру истек и они получили новую информацию с авторитетных серверов. («распространение» - технически неправильное слово - на самом деле это истечение срока действия кеша - но это обычно используемый термин).

Вы можете управлять первым из них. Вы не можете контролировать второй ( TTL (Время жить) значение на записи должен теоретически ограничьте время истечения срока действия кешей, однако есть интернет-провайдеры, которые просто не соблюдают значения TTL - AOL, в частности, печально известен этим).

Какая настройка времени жизни (TTL) для записи mydomain.fi? Если TTL, скажем, один день, вы не увидите изменений до завтра.

Я люблю использовать копать землю чтобы проверить это:

dig hostname.to.check @dns.myprovider.com 

Обязательно проверьте все серверы имен, чтобы убедиться, что все они отвечают одинаково.

Squish.net также есть отличный инструмент для обхода DNS, который расскажет вам, как активные серверы имен будут отвечать на ваш запрос.