- Зачастую, в силу того, что информация в сети распространяется не мгновенно, привязанные к серверу домены начинают работать не сразу. Чтобы не тратить время впустую, ожидая обновления кеша DNS, желательно сразу проверить настройку вашего DNS-сервера и убедиться, что по истечении 72 часов (это максимальное время обновления глобального кеша DNS) ваш домен заработает.
Содержание
- 1 Первичная диагностика
- 1.1 Whois
- 1.2 dig +trace
- 1.3 dig с NS-серверов
- 1.4 dig с первичного сервера имен
- 2 Проблемы и решения
- 2.1 dig возвращает пустой ответ
- 2.1.1 Некорректные права/владелец
- 2.1.2 Отсутствие A-записей для дочерних NS
- 2.1.3 CNAME и другие записи
- 2.1.4 Отсутствие A-записи
- 2.1.5 Запрещены запросы к DNS-серверу
- 2.2 Connection timed out
- 2.3 Transfer failed
- 2.4 Отсутствие закрывающей точки
- 2.5 Список полезной литературы
- 2.1 dig возвращает пустой ответ
Первичная диагностика
Whois
Начать диагностику следует с запроса whois:
[root@dns ~]# whois firstvds.ru % By submitting a query to RIPN's Whois Service % you agree to abide by the following terms of use: % http://www.ripn.net/about/servpol.html#3.2 (in Russian) % http://www.ripn.net/about/en/servpol.html#3.2 (in English). domain: FIRSTVDS.RU nserver: ns1.firstvds.ru. 82.146.43.2 nserver: ns2.firstvds.ru. 94.250.248.160 state: REGISTERED, DELEGATED, VERIFIED org: CJSC "Pervyj" registrar: REGTIME-REG-RIPN admin-contact: http://whois.webnames.ru created: 2002.08.07 paid-till: 2014.08.08 free-date: 2014.09.08 source: TCI Last updated on 2014.03.18 03:36:35 MSK
В данном примере мы видим, что домен проделегирован на сервера имен ns1.firstvds.ru. и ns2.firstvds.ru. с указанием IP-адресов (дочерние NS-сервера всегда прописываются с указанием IP). Это корректный вывод whois и примерно так должен выглядеть ответ whois для зарегистрированного и проделегированного домена. Исключение составляет IP, он указывается только для дочерних NS-серверов.
Также следует обратить внимание на пункты «state» и «Status» (для доменов в зонах .com./.org): в поле «state» обязательно должны быть пометки REGISTERED и DELEGATED, в поле «Status» — «Ok». Для отсеивания всего лишнего из вывода whois можно использовать следующую команду:
[root@dns ~]# whois firstvds.ru | grep -Ei 'name server|nserver|state|status' nserver: ns1.firstvds.ru. 82.146.43.2 nserver: ns2.firstvds.ru. 94.250.248.160 state: REGISTERED, DELEGATED, VERIFIED
[root@dns ~]# whois ispserver.com | grep -Ei 'name server|nserver|state|status' Name Server: NS1.ISPVDS.COM Name Server: NS2.ISPVDS.COM Status: ok Domain Status: ok Name Server: NS1.ISPVDS.COM Name Server: NS2.ISPVDS.COM
Замечание: для доменов в зоне .com/.org следует обращать внимание только на первые две записи «Name Server».
Если домен не зарегистрирован или зарегистрирован недавно, можно увидеть такую картину:
[root@dns ~]# whois fvdstest.ru % By submitting a query to RIPN's Whois Service % you agree to abide by the following terms of use: % http://www.ripn.net/about/servpol.html#3.2 (in Russian) % http://www.ripn.net/about/en/servpol.html#3.2 (in English). No entries found for the selected source(s). Last updated on 2014.03.18 03:46:37 MSK
Информация во whois может обновляться в течение трех часов, поэтому если вы уже приобрели домен, нужно некоторое время подождать. Это также касается смены NS-серверов домена.
dig +trace
dig — утилита, предоставляющая пользователю интерфейс командной строки для отправки запросов к DNS-серверам. Первый запрос, который нас интересует, — трассировка запросов к домену:
[root@dns ~]# dig firstvds.ru +trace ; <<>> DiG 9.8.1-P1 <<>> firstvds.ru +trace ;; global options: +cmd . 10045 IN NS l.root-servers.net. . 10045 IN NS h.root-servers.net. . 10045 IN NS a.root-servers.net. . 10045 IN NS i.root-servers.net. . 10045 IN NS g.root-servers.net. . 10045 IN NS d.root-servers.net. . 10045 IN NS j.root-servers.net. . 10045 IN NS m.root-servers.net. . 10045 IN NS c.root-servers.net. . 10045 IN NS b.root-servers.net. . 10045 IN NS e.root-servers.net. . 10045 IN NS f.root-servers.net. . 10045 IN NS k.root-servers.net. ;; Received 228 bytes from 8.8.8.8#53(8.8.8.8) in 2311 ms ru. 172800 IN NS e.dns.ripn.net. ru. 172800 IN NS f.dns.ripn.net. ru. 172800 IN NS b.dns.ripn.net. ru. 172800 IN NS d.dns.ripn.net. ru. 172800 IN NS a.dns.ripn.net. ;; Received 341 bytes from 192.36.148.17#53(192.36.148.17) in 934 ms firstvds.ru. 345600 IN NS ns1.firstvds.ru. firstvds.ru. 345600 IN NS ns2.firstvds.ru. ;; Received 97 bytes from 193.232.156.17#53(193.232.156.17) in 548 ms firstvds.ru. 3600 IN A 195.211.221.106 ;; Received 45 bytes from 94.250.248.160#53(94.250.248.160) in 71 ms
Здесь мы видим, что сперва были опрошены корневые сервера имен, которые направили запрос на сервера зоны .ru, которые, в свою очередь, отправили его на сервера, отвечающие за зону firstvds.ru, и с них был получен IP-адрес домена. Тут могут быть различные варианты, например:
[root@dns ~]# dig firstvds.ru +trace ; <<>> DiG 9.8.1-P1 <<>> firstvds.ru +trace ;; global options: +cmd . 10045 IN NS l.root-servers.net. . 10045 IN NS h.root-servers.net. . 10045 IN NS a.root-servers.net. . 10045 IN NS i.root-servers.net. . 10045 IN NS g.root-servers.net. . 10045 IN NS d.root-servers.net. . 10045 IN NS j.root-servers.net. . 10045 IN NS m.root-servers.net. . 10045 IN NS c.root-servers.net. . 10045 IN NS b.root-servers.net. . 10045 IN NS e.root-servers.net. . 10045 IN NS f.root-servers.net. . 10045 IN NS k.root-servers.net. ;; Received 228 bytes from 8.8.8.8#53(8.8.8.8) in 2311 ms ru. 172800 IN NS e.dns.ripn.net. ru. 172800 IN NS f.dns.ripn.net. ru. 172800 IN NS b.dns.ripn.net. ru. 172800 IN NS d.dns.ripn.net. ru. 172800 IN NS a.dns.ripn.net. ;; Received 341 bytes from 192.36.148.17#53(192.36.148.17) in 934 ms firstvds.ru. 345600 IN NS ns1.oldfirstvds.ru. firstvds.ru. 345600 IN NS ns2.oldfirstvds.ru. ;; Received 97 bytes from 193.232.156.17#53(193.232.156.17) in 548 ms firstvds.ru. 3600 IN A 188.120.252.3 ;; Received 45 bytes from 94.250.248.160#53(94.250.248.160) in 71 ms
Здесь мы видим несоответствие NS-серверов, на которые проделегирован домен, и тех, на которые указывают сервера зоны .ru (ns1.oldfirstvds.ru. и ns2.oldfirstvds.ru.).
Еще вариант:
[root@dns ~]# dig firstvds.ru +trace ; <<>> DiG 9.8.1-P1 <<>> firstvds.ru +trace ;; global options: +cmd . 9554 IN NS i.root-servers.net. . 9554 IN NS b.root-servers.net. . 9554 IN NS c.root-servers.net. . 9554 IN NS k.root-servers.net. . 9554 IN NS e.root-servers.net. . 9554 IN NS h.root-servers.net. . 9554 IN NS d.root-servers.net. . 9554 IN NS f.root-servers.net. . 9554 IN NS l.root-servers.net. . 9554 IN NS g.root-servers.net. . 9554 IN NS m.root-servers.net. . 9554 IN NS j.root-servers.net. . 9554 IN NS a.root-servers.net. ;; Received 228 bytes from 8.8.8.8#53(8.8.8.8) in 2399 ms ru. 172800 IN NS a.dns.ripn.net. ru. 172800 IN NS b.dns.ripn.net. ru. 172800 IN NS d.dns.ripn.net. ru. 172800 IN NS e.dns.ripn.net. ru. 172800 IN NS f.dns.ripn.net. ;; Received 341 bytes from 128.63.2.53#53(128.63.2.53) in 1061 ms ru. 3600 IN SOA a.dns.ripn.net. hostmaster.ripn.net. 4021899 86400 14400 2592000 3600 ;; Received 90 bytes from 193.232.128.6#53(193.232.128.6) in 78 ms
Сервера зоны .ru ничего не знают об NS-серверах, обслуживающих зону запрашиваемого домена. Последние два случая могут быть обусловлены как проблемами в работе DNS, так и тем, что информация о домене еще не обновилась на корневых серверах имен, поэтому потребуется дальнейшая диагностика.
dig с NS-серверов
В этом случае мы запрашиваем информацию напрямую с NS-серверов, которые планируется использовать для указанного домена. Пример для запроса с ns1 (для ns2 запрос выглядит аналогично):
[root@dns ~]# dig firstvds.ru @ns1.firstvds.ru. ; <<>> DiG 9.8.1-P1 <<>> firstvds.ru @ns1.firstvds.ru. ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 39440 ;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 ;; WARNING: recursion requested but not available ;; QUESTION SECTION: ;firstvds.ru. IN A ;; ANSWER SECTION: firstvds.ru. 3600 IN A 195.211.221.106 ;; Query time: 67 msec ;; SERVER: 82.146.43.2#53(82.146.43.2) ;; WHEN: Tue Mar 18 09:30:41 2014 ;; MSG SIZE rcvd: 45
Здесь в секции ANSWER SECTION был возвращен IP, в который NS-сервер резолвит домен, при нормальной работе этот IP должны возвращать оба NS-сервера, если IP отличается от того, что вы назначили домену на основном сервере, то зона нуждается в обновлении. В ISPmanager, к примеру, это можно сделать кнопкой «Передать» в разделе «Доменные имена», если же у вас DNS-сервер настроен без использования панели, то зона, как правило, будет обновлена самостоятельно, либо по истечении TTL зоны, либо по запросу вторичного сервера имен, если используется механизм уведомлений (опция notify yes в BIND).
Также NS-сервер может вообще не ответить:
[root@dns ~]# dig fvdstest.ru @ns1.firstvds.ru. ; <<>> DiG 9.8.1-P1 <<>> firstvds.ru @ns1.firstvds.ru ;; global options: +cmd ;; connection timed out; no servers could be reached
В этом случае следует убедиться, что внешний DNS-сервер доступен и на нем не заблокирован 53-й порт (если есть такая возможность).
Еще один вариант — пустой ответ:
[root@dns ~]# dig fvdstest.ru @ns1.firstvds.ru. ; <<>> DiG 9.8.1-P1 <<>> fvdstest.ru @ns1.firstvds.ru. ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 35308 ;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0 ;; WARNING: recursion requested but not available ;; QUESTION SECTION: ;fvdstest.ru. IN A ;; Query time: 123 msec ;; SERVER: 82.146.43.2#53(82.146.43.2) ;; WHEN: Tue Mar 18 09:41:57 2014 ;; MSG SIZE rcvd: 29
Также при возникновении каких-либо проблем на NS-серверах следует произвести диагностику первичного DNS-сервера.
dig с первичного сервера имен
Служит для запроса информации непосредственно с сервера, на котором создан домен:
[root@dns ~]# dig firstvds.ru @188.120.241.90 ; <<>> DiG 9.7.1-P2 <<>> firstvds.ru @188.120.241.90 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 26391 ;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2 ;; WARNING: recursion requested but not available ;; QUESTION SECTION: ;firstvds.ru. IN A ;; ANSWER SECTION: firstvds.ru. 3600 IN A 188.120.241.90 ;; AUTHORITY SECTION: firstvds.ru. 3600 IN NS ns1.firstvds.ru. firstvds.ru. 3600 IN NS ns2.firstvds.ru. ;; ADDITIONAL SECTION: ns1.firstvds.ru. 3600 IN A 82.146.43.2 ns2.firstvds.ru. 3600 IN A 82.146.35.143 ;; Query time: 71 msec ;; SERVER: 188.120.241.90#53(188.120.241.90) ;; WHEN: Thu Apr 14 15:12:51 2011 ;; MSG SIZE rcvd: 113
Приведенный вариант — то, как должен отвечать правильно настроенный DNS-сервер, в случае возникновения проблем следует перейти к более детальному изучению обстановки на корневом сервере имен.
Проблемы и решения
Вся необходимая для диагностики информация о проблемах, возникшим в работе первичного сервера имен, содержится в логах. По умолчанию DNS-сервер пишет в системный лог /var/log/messages, однако в конфигурации может быть задано ведение логов в отдельном файле, поэтому следует свериться с конфигурацией вашего DNS-сервера. В этом разделе рассмотрены наиболее часто встречающиеся в логах ошибки.
dig возвращает пустой ответ
Пустой ответ означает то, что на VDS либо отсутствует файл зоны этого домена, либо то, что при подгрузке файла зоны возникли проблемы. Также причиной может быть отсутствие A-записи в файле зоны. Если в первом случае достаточно будет создать домен на сервере (через ISPmanager или с помощью ручной правки файла зоны, если ISPmanager отсутствует), то во втором потребуется изучить логи DNS-сервера.
Некорректные права/владелец
Первая ошибка, которую мы рассмотрим — permission denied:
Mar 17 05:53:58 fvds named[19765]: zone fvdstest.com/IN: loading from master file /etc/bind/fvdstest.com failed: permission denied Mar 17 05:53:58 fvds named[19765]: zone fvdstest.com/IN: not loaded due to errors.
Ошибка говорит о некорректных правах на файл зоны или о некорректном владельце файла:
[root@dns ~]# ls -l /etc/bind/fvdstest.com -rw-r----- 1 root root 444 Mar 17 05:50 /etc/bind/fvdstest.com
В данном случае проблема именно с владельцем, им должен быть пользователь, от которого запущен bind:
[root@dns ~]# ls -l /etc/bind/fvdstest.com -rw-r----- 1 bind bind 444 Mar 17 05:50 /etc/bind/fvdstest.com
Также следует обратить внимание на права и группу самой директории /etc/bind/:
[root@dns ~]# ls -ld /etc/bind/ drwxr-sr-x 2 root bind 4096 Mar 15 18:42 /etc/bind
Отсутствие A-записей для дочерних NS
Следующая ошибка в логе:
Mar 17 05:56:55 fvds named[19933]: zone fvdstest.com/IN: NS 'ns1.fvdstest.com' has no address records (A or AAAA) Mar 17 05:56:55 fvds named[19933]: zone fvdstest.com/IN: NS 'ns2.fvdstest.com' has no address records (A or AAAA) Mar 17 05:56:55 fvds named[19933]: zone fvdstest.com/IN: not loaded due to errors.
Проблема в том, что в NS-записях указаны дочерние домены третьего уровня, для которых отсутствует A-запись: ‘ns1.fvdstest.com’ и ‘ns2.fvdstest.com’, соответственно, нужно либо указать другие, уже настроенные на другом домене, NS-сервера, либо прописать соответствующие A-записи:
ns1 IN A 10.10.10.10 ns2 IN A 11.11.11.11
CNAME и другие записи
Еще одна достаточно распространенная ошибка:
Mar 17 06:08:39 fvds named[20701]: zone fvdstest.com/IN: loading from master file /etc/bind/fvdstest.com failed: CNAME and other data Mar 17 06:08:39 fvds named[20701]: zone fvdstest.com/IN: not loaded due to errors.
Записи A и CNAME не могут одновременно сосуществовать для одного домена/поддомена:
test.fvdstest.com. IN A 10.10.10.10 test.fvdstest.com. IN CNAME google.com
После устранения всех ошибок в логе должна появиться следующая запись:
Mar 17 06:13:12 fvds named[20914]: zone fvdstest.com/IN: loaded serial 2014022800
Однако, даже после этого мы можем получить пустой ответ на запрос утилитой dig. Тут вариантов не так много:
Отсутствие A-записи
По умолчанию утилита dig запрашивает именно A-запись домена, поэтому пустой ответ может означать, что эта запись отсутствует. Пример A-записи:
fvdstest.com. IN A 10.10.10.10
Тут стоит отметить, что в некоторых случаях необходимости в A-записи нет, и чтобы проверить, как отдается та или иная запись, нужно сообщить утилите dig тип запрашиваемой записи:
[root@dns ~]# dig fvdstest.com @188.120.234.14 MX ; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> fvdstest.com @10.10.10.10 MX ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 47888 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 2, ADDITIONAL: 3 ;; QUESTION SECTION: ;fvdstest.com. IN MX ;; ANSWER SECTION: fvdstest.com. 3600 IN MX 10 mail.fvdstest.com. fvdstest.com. 3600 IN MX 20 mail.fvdstest.com. ;; AUTHORITY SECTION: fvdstest.com. 3600 IN NS ns2.fvdstest.com. fvdstest.com. 3600 IN NS ns1.fvdstest.com. ;; ADDITIONAL SECTION: mail.fvdstest.com. 3600 IN A 123.123.123.123 ns1.fvdstest.com. 3600 IN A 10.10.10.10 ns2.fvdstest.com. 3600 IN A 11.11.11.11 ;; Query time: 1 msec ;; SERVER: 188.120.234.14#53(188.120.234.14) ;; WHEN: Mon Mar 17 08:30:16 2014 ;; MSG SIZE rcvd: 151
Замечание: для получения всех записей можно указать тип ANY, также полезным будет ключ +short, позволяющий выводить сокращенный ответ:
[root@dns ~]# dig fvdstest.com @10.10.10.10 +short ANY "v=spf1 ip4:123.123.123.123 a mx ~all" fvds.com. root.fvds.com. 2014022800 10800 3600 604800 86400 ns1.fvdstest.com. ns2.fvdstest.com. 20 mail.fvdstest.com. 10 mail.fvdstest.com. 123.123.123.123
Запрещены запросы к DNS-серверу
В конфигурации DNS-сервера могут быть разрешены запросы только с определенных адресов (как правило, разрешаются запросы только со slave-сервера). В случае с DNS-сервером BIND это директива allow-query{}. В этом случае мы увидим в логе следующую запись:
Mar 17 06:29:22 fvds named[21971]: client 188.120.234.14#49834: query 'fvdstest.com/A/IN' denied
Вариантов диагностики в этом случае два: либо временно добавить свой адрес в список разрешенных, либо делать запросы непосредственно с сервера, на котором расположен slave. Если slave настроен так, чтобы делать запросы не с основного IP на интерфейсе, утилите dig нужно будет указать ключ «-b xxx.xxx.xxx.xxx», где xxx.xxx.xxx.xxx – IP на интерфейсе, с которого разрешены запросы к master:
[root@dns ~]# dig fvdstest.com @188.120.234.14 +short -b 188.120.234.14 ANY "v=spf1 ip4:123.123.123.123 a mx ~all" fvds.com. root.fvds.com. 2014022800 10800 3600 604800 86400 ns1.fvdstest.com. ns2.fvdstest.com. 20 mail.fvdstest.com. 10 mail.fvdstest.com. 123.123.123.123
Connection timed out
[root@dns ~]# dig fvdstest.com ; <<>> DiG 9.7.1-P2 <<>> fvdstest.com @10.10.10.10 ;; global options: +cmd ;; connection timed out; no servers could be reached
Данный вывод говорит о том, что на сервере, с которого производится запрос информации о доменном имени, возникли проблемы. Это может быть как неработающий named, так и блокировка 53 порта с помощью файрвола.
Transfer failed
[root@dns ~]# dig fvdstest.com @10.10.10.10 AXFR ; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> fvdstest.com @10.10.10.10 AXFR ;; global options: +cmd ; Transfer failed.
Mar 17 07:18:51 fvds named[23074]: client 188.120.234.14#50652: zone transfer 'fvdstest.com/AXFR/IN' denied
Эта ошибка говорит о том, что в конфигурации DNS-сервера запрещен трансфер зоны на адрес, с которого пришел запрос (директива allow-transfer{} в BIND). В плане диагностики проблема идентична ситуации с ограничением на запросы.
Отсутствие закрывающей точки
Иногда в ответе dig можно наблюдать такую картину
[root@dns ~]# ; <<>> DiG 9.7.1-P2 <<>> <domain> @<IP-адрес VDS> ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 1253 ;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 0 ;; WARNING: recursion requested but not available ;; QUESTION SECTION: ;<domain>. IN A ;; ANSWER SECTION: <domain>. 3600 IN A 123.123.123.123 ;; AUTHORITY SECTION: <domain>. 3600 IN NS ns2.firstvds.ru.<domain>. <domain>. 3600 IN NS ns1.firstvds.ru.<domain>. ;; Query time: 70 msec ;; SERVER: 92.63.103.212#53(92.63.103.212) ;; WHEN: Fri Apr 15 15:49:16 2011 ;; MSG SIZE rcvd: 97
Проблема заключается в том, что при создании доменного имени были указаны некорректные сервера имен. Конкретно в данном случае пропущена закрывающаяся точка в доменном имени ns1.firstvds.ru.
При загрузке сайта initial connection очень большой, 20 секунд. После этой загрузки все страницы грузятся моментально. Грешу на DNS, использую vps от reg.ru. Как проверить конкретно DNS на ошибки? Я так понимаю проблема с тем, что dns меняет ip на доменное имя, поэтому грузится долго
-
Вопрос заданболее трёх лет назад
-
3652 просмотра
В общем, решение оказалось проще некуда, поставил dns сервера для vps серверов от reg.ru …
Пригласить эксперта
Проверка резолвинга имени от DNS серверов маршрутизатора:
nslookup example.com
Проверка по DNS серверу от Гугла:
nslookup example.com 8.8.8.8
Есть разница?
А теперь проверить как работает связь до сервера сайта:
tracert example.com
-
Показать ещё
Загружается…
12 июн. 2023, в 19:14
25000 руб./за проект
12 июн. 2023, в 18:45
15000 руб./за проект
12 июн. 2023, в 18:41
20000 руб./за проект
Минуточку внимания
Одной из самых частых ошибок связанных с подключением к интернету в Windows, является ошибка: «DNS-сервер не отвечает». При этом, пропадает доступ к интернету. На значке подключения скорее всего будет желтый треугольник, а в браузере, при попытке открыть сайт, вы скорее всего увидите ошибку «Не удается найти DNS-адрес», «err name not resolved «, или что-то в этом роде. Проблема эта вызвана сбоем в работе DNS-сервера, который отвечает за перенаправленные IP-адреса на домен. Если говорить о причинах возникновения этой ошибки, то виновником может быть как сам компьютер, так и маршрутизатор, или оборудование на стороне провайдера.
Сама ошибка «DNS-сервер не отвечает» появляется в результате диагностики сетей Windows. Запустить диагностику очень просто. Достаточно нажать правой кнопкой мыши на значок подключения к интернету, и выбрать «Диагностика неполадок».
Иногда, может появляться ошибка: «Параметры компьютера настроены правильно, но устройство или ресурс (DNS-сервер) не отвечает».
Вот такие ошибки. Если вы не знаете что делать, то сейчас мы рассмотрим несколько эффективных советов, которые должны помочь избавится от данных ошибок. В итоге, интернет на вашем компьютере заработает, и сайты начнут открываться. Решения будут одинаковыми для Windows 10, Windows 8, и Windows 7.
Обновление: для Windows 11 я подготовил отдельную статью: ошибка DNS-сервер не отвечает в Windows 11.
Как исправить ошибку «DNS-сервер не отвечает»?
Для начала, я советую выполнить несколько простых решений. Есть шанс, что они помогут, и вам не придется разбираться с более сложными настройками.
- Если у вас интернет подключен через роутер, или модем (по Wi-Fi, или по кабелю), и вы наблюдаете ошибку «DNS-сервер не отвечает», то попробуйте просто перезагрузить роутер. Отключите питание роутера где-то на минуту, и включите обратно. Не важно какой у вас роутер, TP-Link, D-link, ASUS, или еще какой-то.
- Перезагрузите свой компьютер, или ноутбук. В данном случае не важно, интернет у вас идет через роутер, или кабелем напрямую от провайдера. Просто выполните перезагрузку.
- Если интернет подключен через роутер, то проверьте, работает ли интернет на других устройствах. Нет ли там ошибки с ответом DNS-сервера.
- При подключении через маршрутизатор, если есть возможность, можно подключить интернет напрямую к компьютеру. Для проверки.
- Постарайтесь вспомнить, после чего появилась ошибка DNS, и проблемы с доступом к интернету. Может после смены каких-то настроек, или установки программ.
Если эти советы не помогли, то попробуйте применить решения, о которых я напишу ниже.
Проверяем службу DNS-клиент
Прежде чем что-то менять, я рекомендую посмотреть, работает ли служба «DNS-клиент». Нажмите на клавиатуре сочетание клавиш Win + R. В появившемся окне введите команду services.msc, и нажмите Ok.
В новом окне ищем службу «DNS-клиент», нажимаем на нее правой кнопкой мыши, и выбираем «Свойства».
Тип запуска должен быть «Автоматически». И если у вас кнопка «Запустить» будет активной, то нажмите на нее. Дальше: «Применить» и «Ok».
Если служба у вас была отключена, и вы ее включили, то после перезагрузки компьютера интернет должен заработать.
Меняем настройки DNS-серверов в свойствах подключения
Дальше мы проверим настройки DNS-серверов в свойствах подключения, через которое компьютер подключен к интернету. Если там прописаны какие-то адреса, то можно попробовать выставить автоматическое получение, либо прописать DNS-адреса от Google. Этот способ очень часто позволяет избавится от ошибки «DNS-сервер не отвечает».
Нам нужно открыть окно со всеми подключениями. Для этого можно нажать правой кнопкой мыши на значок подключения к интернету, и выбрать «Центр управления сетями…». Дальше переходим в «Изменение параметров адаптера».
Дальше правой кнопкой мыши нажимаем на то подключение, через которое вы подключены к интернету (к роутеру), и выбираем «Свойства». Если подключение по Wi-Fi, то это подключение «Беспроводная сеть», если по кабелю, то «Ethernet» (Подключение по локальной сети).
У меня, например, проблема с DNS при подключении по Wi-Fi сети через роутер.
В новом окне выделите «IP версии 4 (TCP/IPv4)», и нажмите «Свойства». Если в новом окне у вас прописан какой-то DNS-сервер, то можно попробовать выставить автоматическое получение адресов, и проверить подключение к интернету после перезагрузки компьютера.
Но чаще всего помогает следующее: ставим переключатель возле «Использовать следующие адреса DNS-серверов», и прописываем DNS от Google:
8.8.8.8
8.8.4.4
Нажимаем «Ok» и перезагружаем компьютер.
Такое решение помогает очень часто. Если у вас проблема с получение DNS на всех устройствах, которые подключены через один роутер, то эти адреса можно прописать в настройках роутера, тогда они будут применяться для всех устройств. Как правило, сделать это можно в настройках вашего роутера, в разделе «Интернет», или «WAN». Где задаются параметры для подключения к провайдеру.
Для примера, покажу как это сделать на роутере TP-Link:
Не забудьте сохранить настройки.
Очищаем кэш DNS и другие сетевые параметры
Нужно просто запустить командную строку, и по очереди выполнить несколько команд, которые выполнять очистку кэша DNS-адресов, и других сетевых настроек. Этот способ подойдет как для Windows 10, так и для Windows 7 (8).
Командную строку нужно запустить от имени администратора. Если у вас Windows 10, то просто нажмите правой кнопкой мыши на меню пуск, и выберите «Командная строка (администратор)». В Windows 7, в поиске можно набрать «cmd», нажать правой кнопкой на «cmd» в результатах поиска, и выбрать «Запустить от имени администратора».
По очереди копируем и выполняем такие команды:
ipconfig /flushdns
ipconfig /registerdns
ipconfig /renew
ipconfig /release
Вот так:
В Windows 10 можно еще попробовать выполнить сброс сетевых настроек. Это практически то же самое.
После этого перезагрузите компьютер.
Обновление: отключаем или удаляем антивирус Avast
В комментариях Сергей написал, что ему помогло только удаление антивируса Avast. Если у вас установлен именно этот антивирус, то возможно он стал причиной того, что DNS-сервер перестал отвечать.
По своему опыту могу сказать, что антивирус Avast очень часто вмешивается в сетевые настройки Windows, из-за чего появляются разные проблемы с подключением к интернету. То интернет перестает работать после удаления антивируса, то ошибка DNS, или сетевой адаптер не имеет допустимых параметров настройки IP.
Можно попробовать для начала полностью остановить работу антивируса. Если это не решит проблему, то удалить его. Можно переустановить его, только без дополнительных модулей. Как это сделать, я писал в статье по ссылке выше (о решении проблемы с параметрами IP).
Что делать, если не получилось исправить ошибку?
Если вы все проделали правильно, но Windows по прежнему пишет что DNS-сервер не отвечает, то у меня есть еще пару советов:
- Смените статус сети с общественной на частную. У нас на сайте есть подробная инструкция.
- Попробуйте на время полностью отключить антивирус, или встроенный в него брандмауэр (веб-антивирус, сетевой экран).
- Если никак не можете исправить эту ошибку, то позвоните в поддержку своего интернет-провайдера. Не редко проблемы с DNS бывают по их вине.
Обязательно напишите, если у вас получилось избавится от этой ошибки. Напишите какой способ помог. Может у вас сработало какое-то другое решение, которого нет в статье. Ну и оставляйте свои отзывы в комментариях.
DNS-сервер фактически является приложением, которое работает на отдельном физическом сервере или совместно с другими серверами и обрабатывает все запросы, содержащие доменные имена.
Как только вы зарегистрировали доменное имя, оно начинает обслуживаться DNS-сервером, и любое обращение к домену по имени проходит через него. С момента привязки доменного имени к DNS-серверу может пройти до 72 часов, чтобы домен начал работать. Если по истечении этого срока домен не заработал или возникла ситуация, когда работающий домен перестал отвечать на запросы, проведите быструю диагностику DNS.
С чего начать?
Используйте утилиту whois для первичной диагностики DNS. Актуально для Linux-систем.
Выполните команду:
whois ispserver.ru
В примере показан корректный вывод ответа на whois, который в большинстве случаев должен быть именно таким.
Whois выводит информацию о домене, в данном примере — ispserver.ru. Серверы имен, которые обслуживают домен — ns1.ispvds.com, ns2.ispvds.com — это первичный и вторичный DNS-серверы. На ns1.ispvds.com вносятся изменения зоны ispserver.ru, ns2.ispvds.com периодически синхронизирует свои записи с первичным DNS-сервером. В случае дочерних DNS-серверов (расположенных на самом делегируемом домене) в выводе whois рядом с именем сервера имен указывается его IP-адрес.
Строка с меткой “state:” обозначает статус, в котором находится домен. REGISTERED и DELEGATED в этой строке указывают на то, что домен зарегистрирован и делегирован.
Для получения краткой информации о домене используйте команду whois с параметрами:
whois ispserver.ru | grep -Ei 'name server|nserver|state'
Если домен не зарегистрирован (такого домена не существует), то ответ на whois будет следующим:
Используйте утилиту dig для обращения из командной строки к серверу DNS. Выполните трассировку маршрута пакетов к DNS-серверу командой:
dig ispserver.ru +trace
Первые 13 строк, начинающиеся со знака “.”, обозначают, что сначала были опрошены серверы имен корневой зоны, затем было сделано перенаправление на зону .ru (строки, начинающиеся с “.ru”), а затем запрос был отправлен на серверы имен домена ispserver.ru — ns1.ispvds.com, ns2.ispvds.com. Предпоследняя строка указывает на то, что серверы имен передали IP-адрес домена ispserver.ru в ответ на запрос.
Если при трассировке на каком-то шаге передача запроса происходит не на нужный DNS-сервер (например, серверы зоны .ru не перенаправляют пакет на серверы ns1.ispvds.com, ns2.ispvds.com), это означает, что информация о домене либо еще не обновилась, либо появились какие-то проблемы при работе DNS-сервера.
Опросите конкретный DNS-сервер, обслуживающий ваш домен, командой
dig ispserver.ru ns1.ispvds.ru
Секция ANSWER SECTION содержит IP-адрес, возвращенный DNS-сервером. Этот IP должен совпадать с тем, который вы назначали домену. Если он отличается, обновите доменную зону или подождите, пока она обновится автоматически. Все DNS-серверы должны возвращать один и тот же IP-адрес для домена.
Ошибка “Connection timed out”
Если в ответ на команду dig вы получаете сообщение “Connection timed out”, это означает, что DNS-сервер не отвечает.
Проверьте, доступен ли DNS-сервер и открыт ли на нем 53 порт.
Опросите первичный сервер имен командой
dig ispserver.ru <IP-адрес> где IP-адрес - IP сервера, на котором расположен домен.
При правильной работе DNS должен выводиться корректный IP-адрес домена.
Решение основных проблем с DNS
Описание всех возникших проблем DNS-сервера читайте в лог-файле DNS, который по умолчанию находится по следующему пути: /var/log/messages. Расположение может быть изменено в зависимости от настроек вашего сервера. Через ISPmanager лог-файл можно просмотреть через “Менеджер файлов”.
Далее описаны наиболее часто возникающие проблемы DNS, которые можно обнаружить командой dig или в лог-файле.
Пустой ответ на команду dig
Под пустым ответом на команду dig понимается отсутствие секции ANSWER в выводе.
Как правило, причинами такого ответа могут быть:
- не существует такого доменного имени;
- домен не зарегистрирован на VPS;
- не создана А-запись для домена.
Проверьте, зарегистрирован ли домен на сервере. Зайдите в ISPmanager в раздел “Сайты” и убедитесь, что в списке существует запись вашего доменного имени. В данном примере это isptest.com, которого в списке нет. Нажмите на кнопку “Создать сайт” и создайте новый сайт.
Если у вас нет панели управления ISPmanager, проверьте, есть ли файл зоны домена, вручную.
Удостоверьтесь, что на сервере для вашего домена корректно созданы А-записи. Зайдите в ISPmanager в раздел “Управление DNS”. Выделите домен и нажмите кнопку “Управлять DNS записями”.
Среди ресурсных записей найдите А-запись и удостоверьтесь, что каждая запись содержит значение IP-адрес сервера, на котором расположен домен. В обратном случае исправьте несоответствия или создайте записи заново.
Если вы не используете панель управления ISPmanager, выполните проверки вручную на сервере. Пример А-записи в конфигурационном файле named.conf:
ispserver.com. IN A 10.10.10.10
Ошибка “Permission denied”
Следующая запись лог-файле DNS означает, что были неправильно назначены права на файл зоны или владелец файла /etc/bind/ispsrv.com
Oct 12 15:23:50 ispsrv named[18761]: zone ispsrv.ru/IN: loading from master file /etc/bind/ispsrv.com failed: permission denied Oct 12 15:23:50 ispsrv named[18761]: zone ispsrv.ru/IN: not loaded due to errors.
Удостоверьтесь, что служба bind запущена от имени того же пользователя, что и владелец файла ispsrv.com. Выполните команду
[root@dns ~]# ls -l /etc/bind/ispsrv.com -rw -r
Следующий результат этой команды говорит о том, что владельцем /etc/bind/ispsrv.com является суперпользователь root:
1 root root 444 Oct 12 16:00 /etc/bind/fvdstest.com
Также проверьте права на саму папку /etc/bind/ командой:
[root@dns ~]# ls -ld /etc/bind/ drwxr-sr-x
Следующий результат указывает на то, что директория доступна пользователям root и bind:
2 root bind 4096 Oct 12 16:07 /etc/bind
Ошибка “No address records (A or AAAA)”
Следующие строки в лог-файле DNS означают, что ресурсная А-запись отсутствует для дочернего NS:
Oct 12 15:23:50 ispsrv ds named[19931]: zone ispsrv.ru/IN: NS 'ns1.ispsrv.com' has no address records (A or AAAA) Oct 12 15:23:50 ispsrv named[19931]: zone ispsrv.ru/IN: NS 'ns2.ispsrv.com' has no address records (A or AAAA) Oct 12 15:23:50 ispsrv named[19931]: zone ispsrv.ru/IN: not loaded due to errors.
В данном случае для DNS-серверов ns1.ispsrv.com и ns2.ispsrv.com отсутствуют А-записи. Сделайте следующие записи в фале named.conf:
ns1 IN A 10.10.10.10 ns2 IN A 11.11.11.11
Ошибка “CNAME and other data”
Следующие строки в лог-файле DNS означают, что для одного домена прописаны одновременно А и CNAME ресурсные записи:
Oct 12 16:13:30 ispsrv named[20701]: zone ispsrv.ru/IN: loading from master file /etc/bind/fvdstest.com failed: CNAME and other data Oct 12 16:13:30 ispsrv named[20701]: zone ispsrv.ru/IN: not loaded due to errors.
Конфликт вызывает запись вида:
ispsrv.com. IN A 10.10.10.10 ispsrv.com. IN CNAME isptest.com
Оставьте только одну необходимую запись.
Ошибка “Query denied”
Следующие строки в лог-файле DNS означают, что ваш запрос к DNS-серверу запрещен:
Oct 12 16:53:03 ispsrv named[03771]: client 188.120.234.14#49834: query ‘ispsrv.com/A/IN’ denied
А таком случае DNS-сервер возможно настроен так, что запросы к нему разрешены только от дочернего DNS (slave).
Ошибка “Transfer failed”
Следующие строки в лог-файле DNS означают, что в конфигурации DNS запрещен трансфер на данный IP-адрес зоны домена:
Oct 12 17:13:13 ispsrv named[83374]: client 188.126.231.143#50652: zone transfer ispsrv.com/AXFR/IN' denied
Команда dig указывает на эту ошибку следующим ответом:
; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> ispsrv.com @10.10.10.10 AXFR ;; global options: +cmd ; Transfer failed.
Ошибка в синтаксисе
Если вы случайно допустили синтаксическую ошибку в конфигурации файла доменной зоны, то в ответе на команду dig появятся не ожидаемые вами обозначения. Например,
;; QUESTION SECTION: ;<domain>. IN A ;; ANSWER SECTION: <domain>. 3600 IN A 123.123.123.123 ;; AUTHORITY SECTION: <domain>. 3600 IN NS ns2.ispsrv.ru.<domain>. <domain>. 3600 IN NS ns1.ispsrv.ru.<domain>.
<domain> означает, что после ns1.ispsrv.ru не поставлена точка. Исправьте ошибку, поставив закрывающую точку: ns1.ispsrv.ru.
Во время интернет-серфинга пользователи часто встречаются с ошибкой «DNS-сервер не отвечает» при открытии сайтов. Что делать в таких ситуациях и как исправить проблему — расскажем в этой статье.
Каждый сайт в интернете обладает уникальным адресом. Для пользователя он представлен в виде осмысленного набора букв, например, yandex.ru, но в глобальной сети используется цифровое значение для обозначения веб-ресурсов. Его называют IP-адрес и он может выглядеть следующим образом: 176.108.10.5.
Разумеется, пользователям удобнее запоминать буквы, чем цифры, поэтому существует DNS-сервер, который отвечает за транслирование IP-адреса в символы и наоборот. И если при обращении к странице появляется текст «DNS-сервер не отвечает», значит запрос пользователя не был корректно транслирован.
Причины появления
Причины, по которым возникает такая ошибка, могут быть двух разновидностей:
1. Проблема на стороне провайдера: возможно, DNS-сервер недоступен, отключили электричество, проводятся технические работы и др.
2. Проблема на стороне пользователя: отключен интернет, сбросились параметры роутера, проблемы с драйверами и т.д.
Как решить проблему
Прежде чем приступать к решению, определим, на каком этапе проявляется ошибка, связанная с недоступностью адресов DNS-сервера.
Подключим к роутеру другие устройства. Если на них также проявляется ошибка, значит проблема в сетевом устройстве. Если же DNS недоступен только при работе с компьютером, а на планшете работает корректно, начинаем разбираться с ПК.
Проблема с роутером
Начнем проверку с сетевого оборудования, поскольку это наиболее простой и быстрый способ. Выключаем роутер из сети электропитания и ждем 2-3 минуты. Затем включаем вновь и проверяем доступность ресурсов.
Далее проверяем не сбились ли настройки роутера: заходим в панель управления роутера и вносим в нее данные которые предоставлял интернет-провайдер. И, наконец, если устарела прошивка роутера, переходим во вкладку, которая отвечает за обновление ПО и выполняем обновление:
Если в модели роутера не предусмотрено автоматическое обновление, переходим на официальный сайт производителя, находим модель используемого роутера, скачиваем последнюю версию ПО и устанавливаем его.
Важно! После обновления роутер необходимо перезагрузить.
Проверяем выполненную работу: открываем браузер и проверяем доступность сайтов.
Смена DNS-адреса
Ошибка DNS может возникать и из-за проблем на рабочем компьютере. Расскажем об одном из методов, который позволяет исправить ошибку.
Важно! Так как ручная настройка DNS-сервера на Windows 7, 8 и 10 аналогична, расскажем об этом на примере одной из версий этих ОС.
На компьютере нажимаем сочетание клавиш Win + R и вводим команду ncpa.cpl. Откроется окно «Сетевые подключения». Выбираем текущее подключение, открываем контекстное меню, нажав правую кнопку мыши и выбираем «Свойства»:
В открывшемся окне выбираем строку, отмеченную на изображении «1», нажимаем «Свойства»:
На экране отобразится информация о текущем значении IP и DNS-адресов:
Выбираем пункт, как показано на скриншоте выше. Заполняем строки следующим образом: в качестве предпочитаемого DNS-сервера указываем 8.8.8.8, а в строке ниже — 8.8.4.4. Данные параметры получены с официального сайта Google, но существуют и другие общедоступные адреса крупных компаний: Yandex, Comodo, OpenDNS (Cisco) и др. Они также поставляются парами: основной и альтернативный DNS-сервер.
Важно! Обязательно указывайте альтернативный адрес. Если предпочитаемый адрес окажется недоступен, обращение пойдет к альтернативному.
Для надежности можно указать в качестве основного DNS-сервера адрес, например, компании Google, а в качестве запасного — Comodo. Такая схема гарантирует, что пользователь всегда будет иметь доступ к доступным DNS-серверам.
Проверка службы DNS
Если настройка DNS-сервера выполнена по инструкции, но ошибка осталась, проверяем службу Domane Name System. Одновременно нажимаем на клавиатуре Win+R, вводим services.msc и нажимаем «Enter»:
Откроется рабочая область, которая содержит службы Windows. Выбираем строку, выделенную синим цветом. Открываем контекстное меню и выбираем пункт «Перезапустить» — служба перезагрузится. Можно проверять доступность сайтов.
Обнуление кэша
Еще один вариант решения проблемы — очистка кэша DNS. Запускаем командную строку с правами локального администратора:
Откроется окно терминала. По очереди прописываем следующие команды:
ipconfig /flushdns
ipconfig /registerdns
ipconfig /renew
ipconfig /release
По окончанию перезагружаем компьютер и пробуем повторно зайти на недоступный ранее сайт.
Настройка антивируса
Если параметры компьютера настроены правильно, но ошибка по-прежнему проявляется, проверяем настройки антивирусного ПО. Сразу оговоримся — не существует плохого антивируса, просто многие из них блокируют подключения к некоторым сайтам, либо DNS-серверам.
К примеру, антивирус Avast блокирует доступ на основе собственной базы знаний. В таких случаях необходимо отключить модуль межсетевого экрана и обновить страницу в браузере. Если это не помогло, полностью отключаем защиту антивируса на 15 минут и пробуем повторно.
Чтобы избегать подобных проблем, настраиваем «белый список» в опциях файрвола и добавляем в него только проверенные ресурсы. Или, как вариант, попробуйте другой антивирусный продукт, предварительно удалив старый.
Общение с интернет-провайдером
Также проблема может возникать на стороне интернет-провайдера. Когда появляется сообщение «DNS-сервер не отвечает», в первую очередь необходимо обратиться к своему интернет-провайдеру и описать возникшую проблему. Если провайдер проводит технические работы или на участке вашего проживания наблюдаются проблемы, вам об этом сообщат и, при необходимости, озвучат временной интервал, в течение которого подключение к интернету будет восстановлено.
Вам также может быть интересно
- DNS для домена бесплатно
- Как делегировать домен на сервер
- Всё про DNS-сервисы
191028
Санкт-Петербург
Литейный пр., д. 26, Лит. А
+7 (812) 403-06-99
700
300
ООО «ИТГЛОБАЛКОМ ЛАБС»
191028
Санкт-Петербург
Литейный пр., д. 26, Лит. А
+7 (812) 403-06-99
700
300
ООО «ИТГЛОБАЛКОМ ЛАБС»






























