Check ns off что это
Перейти к содержимому

Check ns off что это

  • автор:

Диагностика работы DNS

url image

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

Первичная диагностика

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

Здесь в секции 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


Также при возникновении каких-либо проблем на 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

Приведенный вариант - то, как должен отвечать правильно настроенный 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

Замечание: для получения всех записей можно указать тип 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 > @ ;; 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: ;. IN A ;; ANSWER SECTION: . 3600 IN A 123.123.123.123 ;; AUTHORITY SECTION: . 3600 IN NS ns2.firstvds.ru.. . 3600 IN NS ns1.firstvds.ru.. ;; 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.

Команды по работе с доменными именами: host, nslookup, dig, whois, ping

DNS (Domain Name System) — это система доменных имён, с помощью которой каждому имени домена сопоставляется его реальный IP адрес. В основе самого понятия DNS лежит представление о структуре доменного имени и зонах. Чтобы понять, как работать с доменными именами в Linux, нам необходимо изучить основные команды для работы с DNS, их синтаксис и примеры применения на практике. В этой статье рассмотрим следующие команды: host, nslookup, dig, whois, ping. Все практические задачи по работе с доменными именами мы покажем на нашем VPS под управлением серверной ОС CentOS 7. Для работы нам потребуется установить пакет утилит: bind-utils, без которого в CentOS 7 не будут работать команды host, nslookup, dig.

yum install bind-utils

установка bind-utils в CentOS 7

Также в синтаксисе некоторых команд мы будем использовать основные DNS записи для доменного имени (A, AAAA, MX, NS, SOA, TXT, CNAME, PTR), ниже расшифруем, что означает каждая из них.
Зарегистрировать домен Вы можете здесь.

Основные DNS записи для домена

Все владельцы доменов могут зайти в свой рабочий кабинет у хостинг-провайдера (или регистратора доменных имен) и посмотреть записи для своего домена, оформленные, как правило, в виде таблицы, которая содержит следующие поля:

  • Имя (хост, псевдоним);
  • Тип записи;
  • Значение (IP адрес, назначение, ответ и т.д.).

DNS записи для домена

Существуют следующие типы записей:

  • А (address record): адрес домена в IPv4, осуществляет привязку домена к IP адресу. Если у вас несколько IP адресов для одного домена, то сделайте несколько записей типа А.
  • АААА (address record): адрес домена в IPv6.
  • CNAME (canonical name record, т.е. каноническое имя): позволяет создавать псевдонимы и субдомены после создания записи типа A. Например, user1.test.com CNAME test.com.
  • MX (почтовый сервер): такой тип записи создает специальный поддомен для внутреннего почтового сервера. Например, для создания своего почтового сервера mail.test.com.
  • NS (сервер имён): служит для определения доменов (или адресов) серверов DNS, которые обслуживают этот домен.
  • TXT: информационная запись в текстовом виде.
  • SOA (Start Of Authority): указывает на каком именно сервере хранится полная информация о домене. Обозначает полное, уточненное доменное имя зоны, которое должно заканчиваться «точкой». Может быть использован символ @ (в случае, если уточненное имя домена берется из конфигурационного файла).
  • PTR: предназначение этой записи служит для осуществления связи IP-адреса сервера с каноническим именем этого же сервера.

Команда dig

Одна из основных команд Linux для работы с доменами — это dig (domain information groper). Утилита предоставляет возможность узнать о домене наиболее полную информацию, например, IP адрес, который привязан к данному доменному имени и еще ряд полезных для системного администратора параметров. Синтаксис команды dig следующий:

dig [@сервер] [имя домена] [тип записи] [флаги], где:

  • @cервер — указывает IP-адрес сервера DNS, если не указать этот параметр, то обращение идет к серверу DNS «по умолчанию»;
  • имя домена — указывает имя домена, о котором нужно получить информацию;
  • тип записи — тип записи DNS (А, MX, TXT, NS и т.д.);
  • флаги — с помощью флагов можно задать дополнительные опции утилиты dig.

Ниже укажем основные флаги утилиты dig:

  • +[no]all — используется для вывода на экран или сокрытия всех установленных «по умолчанию» флагов;
  • +[no]answer — необходима для отображения только ответа на запрос;
  • +short — выводит информацию о домене в сокращенном формате;
  • +[no]identify — применяется совместно с флагом +short для отображения информации об IP-адресе сервера;
  • +[no]comments — служит для вывода информации без комментариев;
  • +[no]trace — используется для вывода списка DNS серверов, через которые идет запрос на получение данных о домене.

Дополнительно, могут быть использованы следующие опции для команды dig:

  • -4 — разрешает к использованию только IPv4;
  • -6 — разрешает к использованию только IPv6;
  • -x — служит для получения имени домена по его IP-адресу;
  • -f — предназначена, чтобы прочитать список доменов из файла;
  • -t — служит для обозначения типа записи, которую надо вывести на экран;
  • -p — показывает номер порта DNS сервера.

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

man dig

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

Например, введем в терминале:

dig freehost.com.ua

результаты выполнения команды dig

Как понять результаты выполнения этой команды? Информация условно поделена на три секции:

  • секция HEADER — показывает текущую версию утилиты dig, ID запроса и т. д.;
  • секция QUESTION SECTION — выводит на экран текущий запрос;
  • секция ANSWER SECTION — отображает ответ на созданный запрос (в нашем запросе выводит IP домена).

Если вы хотите получить только основные данные по домену, то стоит задать сокращенный запрос следующей командой:

dig freehost.com.ua +short

использование команды dig с флагом +short

При использовании флага +noall будет отключен вывод на экран информации всех трех секций:

dig freehost.com.ua +noall

Если вы хотите увидеть информацию только из секции ANSWER SECTION, то выполните следующую команду:

dig freehost.com.ua +noall +answer

использование команды dig с флагами +noall +answer

При необходимости получить такого рода информацию по нескольким доменам сразу, советуем создать специальный файл sites.txt в редакторе nano и занести туда доменные имена нужных сайтов, например:

nano sites.txt google.com yandex.ru freehost.com.ua

Далее следует выполнить команду в терминале:

dig -f sites.txt +noall +answer

получение информации с помощью dig для нескольких доменов сразу

Теперь попробуем получить определенные типы записей DNS (A, MX, NS, TXT и т.д.), для этого выполняем команду dig, применяя следующие флаги, например, для типа записи «почтовый сервер»:

dig freehost.com.ua MX

получение информации с помощью dig с флагом MX

Или же, если мы хотим получить ответ только для третьей секции утилиты dig:

dig freehost.com.ua MX +noall +answer dig freehost.com.ua NS +noall +answer dig freehost.com.ua A +noall +answer dig freehost.com.ua TXT +noall +answer dig google.com ANY +noall +answer

использование команды dig с флагами для определения типа записи

Сейчас попробуем указать конкретный сервер в синтаксисе команды dig (без указания сервера, утилита использует информацию из файла /etc/resolv.conf). Приведем пример с публичным сервером google.com:

dig @8.8.8.8 google.com +noall +answer

использование команды dig с параметром @сервер.

Для решения обратной задачи — получения имени домена по IP-адресу, выполним команду dig с опцией -x:

dig -x 178.20.156.90 dig -x 178.20.156.90 +short

команда dig с опцией -x

Попытаемся узнать, через какие DNS сервера идет запрос для получения информации о домене (команда трассировки в Linux):

dig +trace freehost.com.ua

использование команды dig с флагом +trace

Для вывода текущей версии утилиты dig воспользуемся опцией -v:

dig -v

версия утилиты dig

Для проверки синхронизации зоны со всеми NS введем команду:

dig freehost.com.ua +nssearch

использование команды dig с флагом +nssearch

Команда nslookup

Эта команда также позволяет получить информацию по домену или по IP адресу. Основной синтаксис написания nslookup:

nslookup [опции] [доменное имя] [сервер]

где [сервер] — указывать необязательно.

Самый простой пример использования nslookup приведем ниже:

nslookup freehost.com.ua

использование команды nslookup

Можем выполнить и обратную задачу — по IP адресу узнать доменное имя сайта.

nslookup 194.0.200.202

пример использования команды nslookup

Ниже приведем основные опции команды nslookup:

  • type – записывается тип записи DNS (к примеру, NS, TXT, SOA и др.);
  • port – указывается номер порта;
  • recurse – в случае, когда DNS не отвечает, использовать другие DNS;
  • retry – задается количество попыток;
  • timeout – время;
  • fail – в случае, когда DNS возвращает ошибку, необходимо использовать другой сервер.

Приведем примеры команды, с использованием опции type (тип записи), например, для получения записей типа NS, MX, TXT, SOA и т.д.:

nslookup -type=ns freehost.com.ua nslookup -type=mx freehost.com.ua nslookup -type=txt freehost.com.ua nslookup -type=soa freehost.com.ua

примеры команды nslookup с использованием опции type

Техническую информацию о домене можно получить в ответе, запустив команду nslookup с параметром для типа записи SOA:

  • origin — источник информации;
  • mail addr — указывает email address администратора домена;
  • serial — показывает время в формате timestamp;
  • refresh — выводит время в секундах, в течении которого нужно повторить подключения, чтобы обновить информацию;
  • retry — указывает время в секундах, через которое необходимо опять повторить подключения к DNS, в случае, если он недоступен;
  • expire — показывает интервал времени в секундах, через который нужно считать информацию, полученную от первого DNS, устаревшей;
  • minimum — это время в секундах, которое проходит до следующего обновления.

Команда whois

Whois — это сервис, который позволяет узнать всю информацию о владельце домена. В ОС Linux эту команду можно вводить прямо в терминале. В CentOS 7 данная служба не установлена «по умолчанию», поэтому необходимо ее установить:

yum install jwhois

установка whois в CentOS 7

Итак, посмотрим всю информацию о владельце домена freehost.com.ua (ниже приведена только первая часть скриншота для примера):

whois freehost.com.ua

команда whois freehost.com.ua

Для изучения всех параметров команды whois выполните:

man whois

команда man whois

Команда ping

Команда ping известна всем пользователям сети, которые сталкивались с проблемами с соединением. Ping служит для того, чтобы узнать, есть ли связь с удаленным узлом сети, используя протокол ICMP (Internet Control Message Protocol). Принцип действия утилиты простой: на удаленный хост передается пакет с данными ICMP, с целью получить пакет с ответом — если он приходит, то удаленный узел считается доступным.

Синтаксис данной команды:

ping [опции] [адрес удаленного узла]

На скриншотах ниже показаны простые примеры использования команды ping:

ping 194.0.200.202

использование команды ping

ping freehost.com.ua

пример использования команды ping

Команда ping может исполняться достаточно долго, для выхода из этого режима необходимо нажать комбинацию клавиш: ctrl+c.

Ниже приведем некоторые опции утилиты ping с примерами:

  • -4 — применять ipv4 (по умолчанию);
  • -6 — применять только ipv6;
  • -b — пинговать широковещательный адрес;
  • -с — задать количество пакетов, которые необходимо отправить;
  • -D — показывать время в формате UNIX timestamp;
  • -f — работать в режиме флуда;
  • -i — задать интервал в секундах между отправкой пакетов;
  • -v — информация в подробном выводе.
ping -c 5 freehost.com.ua

опция -с утилиты ping

ping -f freehost.com.ua

опция -f утилиты ping

ping -i 0.3 freehost.com.ua

опция -i утилиты ping

ping -D freehost.com.ua

опция -D утилиты ping

Команда host

Еще одна команда для работы с DNS — это host. Она предназначена для получения информации о доменном имени, например, чтобы по имени домена узнать IP адрес:

host freehost.com.ua

команда host

Данную команду можно использовать со следующими опциями, например:

  • -l — выводит на экран всю информацию о домене;
  • -v — выдает результаты в подробном формате;
  • -w — принуждает утилиту host ждать ответ;
  • -r — используется для выключения режима рекурсии (в этом случае DNS-сервер не обращается за информацией к другим DNS-серверам, используется только локальная база);
  • -d — необходимо для включения режима отладки;
  • -t querytype — определяет тип запроса (например, -t TXT — возвращает только тип записи TXT для домена);
  • -a — служит для восстановления всех записей в DNS.

Заключение

В данной статье мы рассказали нашим читателям, как работать с системой доменных имён (DNS) с помощью команд host, nslookup, dig, whois, ping. В нашем материале приведены практические задачи, которые может решать системный администратор или пользователь Linux в своей ежедневной работе, применяя эти утилиты.

Для заказа VPS и его настройки вы всегда можете обратиться за помощью к специалистам компании FREEhost.UA.

Подписывайтесь на наш телеграмм - канал t.me/freehostua, чтоб быть в курсе новых полезных материалов. Смотрите наш Youtube канал на youtube.com/freehostua.

Что такое NSLOOKUP и как пользоваться этой утилитой

В этой статье мы расскажем, что такое DNS lookup и какие сведения о сайте можно получить с помощью утилиты NSLOOKUP.

Что такое NSLOOKUP

Процесс поиска IP сайта называется DNS lookup. Самые распространённые способы узнать о ресурсных записях и DNS-серверах домена ― утилита dig и Whois. Об этих способах мы рассказывали в статье. Однако есть ещё один способ узнать данные DNS ― утилита NSLOOKUP.

NSLOOKUP — это утилита, которая находится на локальном компьютере и позволяет узнать содержимое DNS. Утилита работает только через командную строку терминала. Она позволяет определить:

  • IP-адрес,
  • A, NS, SOA, MX-записи для домена.

Как установить NSLOOKUP

В Windows и macOS ничего устанавливать не нужно. Утилита встроена в ОС. Если у вас одна их этих операционных систем, можете переходить в терминал и начинать с ней работу.

В Linux-системе утилита не установлена по умолчанию, поэтому её нужно настроить. Чтобы установить утилиту в CentOS и Ubuntu в терминале введите:

yum install nslookup 

В терминале Debian введите:

apt-get install nslookup 

Готово, можно пользоваться утилитой.

Теперь мы покажем команды, которые можно использовать. В основном утилита помогает посмотреть ресурсные записи. Что такое ресурсные записи и какие они бывают, вы можете прочитать в статье.

Как узнать A-запись домена

А-запись позволяет прикрепить домен к IP-адресу. Поэтому через неё можно найти IP.

nslookup site.com

Где site.com ― доменное имя, А-запись которого вы хотите узнать.

Перед вами появится такой ответ:

NSLOOKUP: указать DNS-сервер

Как узнать MX-запись

Для работы с электронной почтой в ресурсных записях прописывается MX-запись.

Чтобы увидеть MX-запись (DNS MX lookup), введите команду:

nslookup –type=MX site.com

Где site.com ― нужный домен.

Перед вами появится такой ответ:

Как определить NS-записи домена

С помощью NSLOOKUP можно увидеть и NS-записи, которые использует веб-ресурс.

Чтобы узнать NS-записи, введите:

nslookup –type=ns site.com

Где site.com ― нужное доменное имя.

Перед вами появится список NS-записей, прописанных на сайте:

Как определить SOA-запись

SOA-запись (Start of Authority) — начальная запись зоны. Подробнее о ней вы можете прочитать в статье Что такое SOA-запись и как ее проверить.

Чтобы определить SOA-записи, введите команду:

nslookup –type=SOA site.com

Где site.com ― нужный домен.

Как узнать все DNS-записи

Необязательно делать несколько отдельных запросов на каждую запись. Можно получить полный перечень одной командой. Для этого введите:

nslookup –type=any site.com

Где site.com ― нужный домен.

Как изменить интервал ожидания

У сервера есть установленное по умолчанию время, за которое он должен обработать запрос и дать ответ. Если он не успевает отвечать, пользователь видит ошибку. Если интернет слабый или сайт слишком тяжёлый, серверу может понадобится больше времени, чем установлено в его настройках. Чтобы ответ от сервера успел дойти, нужно увеличить время ожидания. С этим тоже справится NSLOOKUP. Введите команду:

nslookup –timeout=15 site.com
  • 15 ― это количество секунд, за которое должен придти ответ,
  • site.com ― нужное доменное имя.

Как включить интерактивный режим

Во всех командах, о которых мы говорили, в начале мы указывали «nslookup». Когда нужно сделать несколько запросов к утилите, вводить длинную команду неудобно. Слово «nslookup» в команде можно не вписывать, если включить интерактивный режим. Чтобы его включить, введите:

nslookup

Чтобы выйти из интерактивного режима, введите:

exit

Что значит authoritative и non-authoritative

Вы могли заметить, что в ответе на команды всегда есть строчка authoritative или non-authoritative.

Эти данные говорят о том, с какого сервера была получена информация.

Authoritative answer (авторитетный ответ) – это ответ, который получен от основного (официального) сервера.

Non-authoritative answer (неавторитетный ответ) – это ответ от промежуточного сервера. Это могут быть серверы интернет-провайдера или прокси-серверы.

Если вы видите non-authoritative обратите внимание, что на промежуточном сервере может храниться кэш DNS-записей. То есть, если записи были изменены недавно, вы увидите кэш данных, где может быть неактуальная информация.

В наших примерах встречался только ответ non-authoritative:

Популярные статьи

  • Как указать (изменить) DNS-серверы для домена
  • Я зарегистрировал домен, что дальше
  • Как добавить запись типа A, AAAA, CNAME, MX, TXT, SRV для своего домена
  • Что такое редирект: виды и возможности настройки
  • Как создать почту со своим доменом

Что такое NS-запись DNS?

Что такое NS-запись DNS

Запись DNS NS - это тип записи ресурса в системе доменных имен (DNS), которая идентифицирует сервер имен, ответственный за разрешение запросов для определенного имени хоста. Узел может иметь несколько серверов имен, и каждый из них регистрирует альтернативный адрес, за который отвечает его сервер имен. Ниже мы более подробно рассмотрим назначение и функции NS-записей.

О компании NS Record

Запись NS (nameserver) определяет авторитетные серверы имен для домена. Авторитетные серверы имен - это серверы, которые используются для разрешения запросов к именам хостов и определения того, какие IP-адреса следует использовать для доступа к данному серверу.

В этих записях хранится информация о доменных именах, включая их названия, целевые IP-адреса и другую информацию, например время жизни (TTL). NS-записи устанавливаются и управляются регистраторами доменов - компаниями, специализирующимися на продаже и передаче доменов. По умолчанию каждый домен имеет основную и резервную NS-запись, указывающую на один и тот же сервер имен. Если, например, доменное имя меняется, NS-запись может быть обновлена, чтобы отразить это изменение.

Например, если у вас есть доменное имя "example.com", одна из ваших записей DNS может выглядеть следующим образом:

*Примечание: Если в вашей зоне DNS есть запись NS, но она указывает на сервер имен, который не работает, это означает, что для вашего домена нет точки контакта. Это происходит потому, что они сопоставляют адрес с сервером имен. Он указывает другим контроллерам домена, как найти имя вашего домена, а также куда отправлять передачи и обновления зоны.

Что такое сервер имен?

Сервер имен - это сервер, хранящий информацию о доменах. Каждый домен в Интернете имеет как минимум один сервер имен, но у многих доменов их несколько. Серверы имен отвечают за преобразование доменных имен в IP-адреса и наоборот.

Как работают серверы имен?

Допустим, вы хотите посетить [example.com](https://www.example.com). Ваш компьютер сначала найдет IP-адрес этого домена, запросив DNS-сервер (обычно предоставляемый вашим интернет-провайдером). Затем DNS-сервер возвращает IP-адрес сервера имен example.com, который отвечает за управление всеми записями, связанными с этим доменом. Работа серверов имен заключается в отслеживании всех записей, связанных с example.com: запись A (IP-адрес), записи MX (почтовый сервер), записи NS (сервер имен), записи TXT (текстовые данные), записи CNAME (псевдонимы) и т. д.

Когда вы посещаете [example.com](https://www.example.com) в своем браузере, ваш компьютер снова запрашивает эту информацию у одного из серверов имен example, прежде чем отобразить ее на вашем экране!

Пример NS-записи

RFC 1035 определяет синтаксис NS-записей. Вот пример NS-записей для домена domain.com

domain.com. 21600 IN NS vern.ns.cloudflare.com

В этом примере домен domain.com находится в зоне полномочий сервера имен с именем emely и vern .

21600 обозначает время жизни (TTL), то есть время, в течение которого запрос DNS хранится в памяти. IN означает Интернет, а NS - сервер имен.

Использование NS-записей

Записи серверов имен указывают первичный и вторичный DNS-серверы, ответственные за зону. Первичный сервер отвечает за преобразование имени зоны в IP-адрес, в то время как вторичный сервер отвечает за возврат IP-адреса записи хоста, связанной с этим именем.

Каждый DNS-сервер из зоны DNS должен иметь назначенную ему NS-запись, иначе он не сможет должным образом выполнять свои обязанности в зоне.

Это позволяет вести две отдельные базы данных: по одной для каждого типа сервера (первичного и вторичного), что гарантирует, что когда один сервер выходит из строя, другой может обрабатывать запросы.

Запись NS обеспечивает разрешение IP-адресов в случае выхода из строя первичного или вторичного DNS-сервера. Если ваш основной или дополнительный DNS-сервер выйдет из строя, то все запросы придется направлять через другие серверы, пока один из них не вернется в строй (т.е. резольвер). Вот здесь-то и пригодятся NS-записи - они могут направлять трафик на альтернативные серверы, имеющие резервную копию основного сервера. Таким образом, вы не рискуете столкнуться с полным простоем.

Обновление или изменение NS-записей

➜ Записи сервера имен обновляются, когда вы хотите изменить серверы имен вашего домена:

Если example.com администратор хотел blog.example.com разрешался через ns2.exampleserver.com вместо этого, они могут настроить это, обновив NS-запись.

➜ Они также обновляются, когда вы хотите, чтобы поддомен использовал другие серверы имен, чем его родительский домен:

Если example.com администратор хотел blog.example.com разрешался через ns1.exampleserver.com вместо ns2.exampleserver.com то они обновят запись NS для этого домена, а затем настроят его так, чтобы blog.example.com использовал ns1 в качестве сервера имен, а ns2 - в качестве резервного сервера имен (что происходит автоматически при изменении DNS).

Администратор домена может обновить свои записи, перейдя на страницу "Типы записей" в консоли управления DNS. Эти обновления распространяются по DNS в течение нескольких часов, поскольку им требуется некоторое время, чтобы достичь всех авторитетных серверов имен.

Разница между NS-записью и DNS A-записью

Записи NS и A используются для предоставления услуг DNS. Разница между ними заключается в том, что первые определяют серверы, предоставляющие услуги DNS для доменного имени, а записи A переводят имена хостов (таких как www, FTP, mail) в IP-адреса.

Запись

Запись A - это тип записи системы доменных имен (DNS), которая связывает имя хоста с адресом протокола Интернета (IP).

abc.example.com IN A 192.168.1.4.1 утверждает, что abc.example.com разрешается в 192.168.1.4.1

Адресные записи (A) являются основой файла зоны. Они предоставляют DNS достаточно информации для сопоставления доменных имен с конкретными IP-адресами узлов, которые получают свои отдельные записи в файле зоны.

В записи A (адрес) в поле владельца указано имя хоста, поэтому DNS может добавить доменное имя для получения полного доменного имени.

Поле RDATA записи A содержит IP-адрес этого хоста.

DNS NS Record

Записи DNS NS определяют авторитетные серверы имен для зоны.

В каждой зоне должна быть хотя бы одна запись, которая идентифицирует серверы имен, отвечающие за домен. Доступность зоны может быть увеличена за счет использования двух или более таких записей. Если первый сервер имен недоступен, зона все равно будет доступна через другой сервер.

Поле owner должно содержать либо полное доменное имя зоны с точкой в конце (например, example.com), либо знак at (@).

Раздел RDATA записи ресурса DNS содержит только одно поле: полное доменное имя (FQDN) сервера имен, который обрабатывает запросы для этой записи.

БЕСПЛАТНЫЙ инструмент поиска NS домена от PowerDMARC

Ваша NS-запись - одна из самых важных в конфигурации DNS вашего домена. Она определяет, какие серверы имен являются авторитетными для вашего домена и других имен хостов.

С помощью бесплатной программы PowerDMARC NS Lookup Tool вы можете быстро проверить тип DNS-записи, на которую настроен ваш домен. Инструмент предоставляет правильную NS-запись, которая включает тип DNS-записи, значение записи и TTL DNS-сервера. Он также предоставляет возможность поиска всех NS-записей для домена или определенного поддомена.

dns ns запись

Эксперт по безопасности доменов и электронной почты в PowerDMARC

Аона - менеджер по маркетингу в PowerDMARC, имеет более чем 5-летний опыт написания статей на темы кибербезопасности, специализируясь на безопасности доменов и электронной почты. Ахона получила диплом о высшем образовании по специальности "Журналистика и коммуникации", а с 2019 года начала работать в сфере безопасности.

Последние сообщения Ахона Рудра (см. все )

  • Типы угроз и уязвимостей кибербезопасности - 15 февраля 2024 г.
  • Настоящее ли это письмо? Как проверить, легально ли электронное письмо? - 15 февраля 2024 г.
  • Основные советы по безопасности электронной почты и Интернета для студентов колледжа - 22 января 2024 г.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *