Устранение неполадок dns-клиентов

Here are the 10 most used Nslookup commands that will help you to understand better your domain’s management:

1. How to find the A record of а domain.

You can use this command to see how many A records are there and see the IP Addresses of each one.

Command line:
$ nslookup example.com

2. How to check the NS records of a domain.

By checking the NS records, you can see which is the authoritative server for a specific domain.

Command line:
$nslookup -type=ns example.com

3. How to query the SOA record of a domain.

With this one, you can see the start of authority and get information about the zone.

Command line:
$nslookup -type=soa example.com

Command line:
$ nslookup -query=mx example.com

5. How to find all of the available DNS records of a domain.

This lookup has a large scope. Here we want to see all the available DNS records. After seeing all of them, we can do specific lookups for different types of DNS records.

Command line:
$ nslookup -type=any example.com

6. How to check the using of a specific DNS Server.

Apart from checking DNS records, you can use the Nslookup to review a particular DNS server and how it works. You can check if it is active or if it responds on time.

Command line:
$ nslookup example.com ns1.nsexample.com

7. How to check the Reverse DNS Lookup.

Many times you check the A records to see the IPs of a domain, but sometimes you need to verify if an IP address is related to a specific domain. For that purpose, we need a reverse DNS lookup.

Command line:
$ nslookup 10.20.30.40

8. How to check for a PTR record?

You can verify if an IP address belongs to a domain name by performing a reverse DNS query. For this purpose, you will need to check the PTR record that links an IP address to a domain name. You will need to put the IP address in reverse (185.136.96.96 changes to 96.96.136.185), and you need to add in-addr.arpa because it is stored in arpa’s top-level-domain.

Command line:
$ nslookup -type=ptr 96.96.136.185.in-addr.arpa

9. How to change the timeout interval for a reply.

You can manually choose the timeout time in seconds. You can increase it to give more time for the server to respond. You can also shorter it to see which servers can respond quicker.

Command line:
$ nslookup -timeout=20 example.com

10. How to enable debug mode.

Debug mode provides important and detailed information both for the question and for the received answer.

Command line:
$ nslookup -debug example.com

Маршрутизатор запрашивает несколько серверов преобразования имен

В зависимости от уровня сетевой активности маршрутизатор может запросить несколько серверов имен, перечисленных в конфигурации. Ниже представлен пример:

Это поведение весьма вероятно и имеет место, когда маршрутизатору требуется создать запись протокола разрешения адресов (ARP) для сервера DNS. По умолчанию маршрутизатор поддерживает ARP-запись в течение четырех часов. В периоды низкой активности маршрутизатору требуется дополнить ARP-запись и затем выполнить запрос DNS. Если ARP-запись для сервера DNS отсутствует в ARP-таблице маршрутизатора, при передаче только одного запроса DNS произойдет сбой. Поэтому отправляются два запроса: один для получения ARP-записи, если необходимо, а второй — для отправки запроса DNS. Такое поведение является обычным для приложений TCP/IP.

Как добавить статический маршрут в CentOS

Для управления маршрутизацией в CentOS может понадобиться добавить статический маршрут. Сделать это достаточно просто с помощью консольной команды. Для начала проверим существующие маршруты, используя netstat:

В данном случае у нас один маршрут для адреса 0.0.0.0/0.0.0.0 шлюз используется 192.168.159.2, он же шлюз по-умолчанию. То есть по сути, статических маршрутов никаких нет. Добавим один из них.

Допустим, у нас есть подсеть 192.168.8.0 маска 255.255.255.0, трафик в эту подсеть маршрутизирует шлюз 192.168.159.5 Добавляем маршрут:

Проверяем, появился ли добавленный маршрут в таблицу маршрутизации:

Все в порядке, маршрут добавлен. Делаем то же самое с помощью утилиты ip.

Но после перезагрузки этот статический маршрут будет удален. Чтобы этого не произошло и добавленные маршруты сохранялись, необходимо их записать в специальный файл. В папке /etc/sysconfig/network-scripts создаем файл с именем route-eth0 следующего содержания:

Перезагружаемся и проверяем, на месте ли маршрут:

Все в порядке, статический маршрут добавлен.

Nslookup command alternatives

Nslookup is one of the popular command-line software for DNS probing. You can use it to monitor your network and spot problematic areas. If you are interested in similar tools, you can see Ping, Traceroute, Dig, and Host too. You can use them together or find one that covers all of your diagnostic needs.

Need more details what is nslookup? Check the nslookup page on wikipedia.

Notes:

Authoritative answer – This is the answer that originates from the DNS Server which has the information about the zone file.Non-authoritative answer – When a nameserver is not in the list for the domain you did a lookup on.Different port – By default, the DNS servers use port 53.

(Visited 350,107 times, 369 visits today)

Summary

Article Name
10 most used Nslookup commands

Description
What is Nslookup? Check the 10 most used Nslookup commands that will help you to understand better your domain’s management.

Author

Publisher Name

ClouDNS.net

Enjoy this article? Don’t forget to share.

more

DNSnslookupnslookup cmdnslookup commandnslookup command examplenslookup commands

Установка и базовая настройка DHCP

В CentOS/RHEL можно установить DHCP-сервер с помощью менеджера пакетов из базового репозитория:

– установка DHCP сервера для CentOS/RHEL 8

– установка DHCP сервера для CentOS/RHEL 7

Конфигурационный файл DHCP сервиса — /etc/dhcp/dhcpd.conf. Откройте в него и добавьте описание DHCP зоны (IP подсети) с настройками, которые ваш DHCP сервер должен выдавать клиентам.

subnet 15.10.0.0 netmask 255.255.255.0 {
  range 15.10.0.100 15.10.0.200;
  option domain-name-servers 77.88.8.8, 8.8.8.8;
  option domain-name "winitpro.ru";
  option routers 15.10.0.1;
  option broadcast-address 15.10.0.255;
  default-lease-time 3600;
  max-lease-time 7200;
}

Краткое описание настраиваемых параметров DHCP зоны:

  • subnet – адресное пространство (IP сеть), которое обслуживает данный DHCP сервер;
  • option domain-name — параметр задает доменное имя, которое клиенты используют при запросах к DNS;
  • range – диапазон IP адресов, из которого будут назначаться адреса устройствам;
  • option domain-name-servers – адреса DNS серверов, которые будут использоваться клиентом;
  • option routers — IP адрес шлюза, который будет использоваться DHCP клиентом
  • default-lease-time, max-lease-time – время и максимальное время (в сек) на которое выдается IP адрес клиенту. После истечения этого времени IP клиент должен продлить срок аренды.
  • option broadcast-address — широковещательный (бродкаст) адрес IP сети;

Некоторые опции DHCP можно задать на уровне глобальных параметров DCHP сервера (в начале файла dhcpd.conf). Например:

option domain-name "winitpro.ru";
option domain-name-servers 77.88.8.8, 8.8.8.8;
default-lease-time 3600;
max-lease-time 7200;
authoritative;
log-facility local7;

Для проверки корректность настройки конфигурационного файла DHCP сервера используется команда:

На скриншоте с цифрой 1 показан пример проверки при корректной настройке конфигурационного файла DHCP. В сегменте с цифрой 2 показано, что при наличии ошибок в конфигурации утилита dhcpd указывает на них.

Добавьте сервис dhcpd в автозагрузку и запустите:

У меня сразу сервис не запустился. Служба dhcpd вернула ошибку:

Not configured to listen on any interfaces!

На виртуальной машине у меня два интерфейса, на одном прописан белый IP-адрес, а второй пустой. В подобном случае, нужно указать конкретный интерфейс для работы DHCP и прописать на нем адрес из сети, которую мы будем раздавать клиентам.

Откройте файл:

Добавьте в него следующую строку:

DHCPDARGS=ens5

Где ens5 — это имя сетевого интерфейса, котором будет обслуживать DHCP запросы.

Затем создайте файл конфигурации сетевого интерфейса (если он не создан):

TYPE="Ethernet"
DEVICE="ens5"
ONBOOT="yes"
BOOTPROTO="static"
IPADDR="15.10.0.5"
NETMASK="255.255.255.0"
DNS1=77.88.8.8

Выполните рестарт сети:

– для CentOS/RHEL 7 – для CentOS/RHEL 8

Когда настройки сети будут выполнены и применены, можно запустить сам сервис dhcpd:

Сервис успешно настроен и запущен. Чтобы DHCP-клиент мог получить адрес с нашего сервера, нужно добавить сервис в исключения в firewalld:

Если вы используете другой файерволл, откройте 67 UDP порт на нем.

Анализ и корректировка параметров соединения

Чтобы решить поставленную задачу, через анализ свойств сети необходимо воспользоваться средствами из панели управления.

Алгоритм последовательности действий следующий:

1) Через меню «Пуск» открыть «Панель управления» и затем, если в ПК установлена ОС ХР, то следует войти в «сетевые подключения», а если «Семерка», то перейти во вкладку «Центр упр.сетями» и открыть «Изменение параметров адаптера»;

2) Далее отобразится перечень подключений, из которого необходимо выделить применяемое и вызвав на нем контекстное меню, кликнуть строчку «Свойства»;

4) В случае выполнения каких-нибудь корректировок, то перед закрытием окна необходимо сохранить изменения.

Обратное преобразование имен

DNS используется в первую очередь для преобразования доменных имён в IP-адреса, но он также может выполнять обратный процесс, называемый Обратное преобразование имен или обратным отображением. Т.к. записи в прямой базе DNS структурированы иерархически по доменным именам, DNS не может эффективно выполнять поиск по IP адресу в такой базе. Для обратного преобразования в DNS используется специальный домен in-addr.arpa. Ресурсные записи в данном домене в поле Name содержат IP-адреса, в поле Type — PTR, а в поле Data — FQDN-имя соответствующее данному IP.

На схеме представлена структура домена arpa. Думаю, что тут все довольно наглядно. Домен arpa. имеет 2 поддомена in-addr и ip6, отвечающие за IPv4 и IPv6 адреса соответственно. Домен in-addr.arpa. имеет от *.0.in-addr.arpa. до *.255.in-addr.arpa. поддоменов, каждый из которых так же имеет по 256 поддоменов.

В целях уменьшения объёма нежелательной корреспонденции (спама) многие почтовые серверы могут проверять наличие PTR записи для хоста, с которого происходит отправка. В этом случае PTR запись для IP адреса должна соответствовать имени отправляющего почтового сервера, которым он представляется в процессе SMTP сессии.

Наглядно приведенную схему можно представить командами:

# dig www.ru.
...
;; QUESTION SECTION:
;www.ru.                                IN      A

;; ANSWER SECTION:
www.ru.                 52119   IN      A       194.87.0.50
...
# dig -x 194.87.0.50
...
;; QUESTION SECTION:
;50.0.87.194.in-addr.arpa.      IN      PTR

;; ANSWER SECTION:
50.0.87.194.in-addr.arpa. 30385 IN      PTR     www.ru.
....

При этом, команду dig -x 194.87.0.50 правильнее будет представить как dig 50.0.87.194.in-addr.arpa., то есть записи в поддоменах *.in-addr.arpa. представлены в так называемой обратной нотации (или reverse форме), то есть хосту с IP 194.87.0.50 будет соответствовать PTR-запись, имеющая FQDN 50.0.87.194.in-addr.arpa., которая в свою очередь указывает на домен www.ru..  Хочется отметить, что чаще всего за обратную зону и ее редактирование отвечает поставщик интернета.

Как и обещал, описываю ресурсную запись PTR в домене IN-ADDR.ARPA, соответствующая приведенной выше записи А для машины www.ru., будет иметь такой вид:

50.0.87.194 IN PTR www.ru.

Имя 50.0.87.194 не заканчивается точкой и поэтому является относительным. Вопрос: относительным относительно чего? Ни в коем случае не относительно «www.ru.». Для того чтобы эта запись была FQDN, домен по умолчанию должен называться «IN-ADDR.ARPA.». Этого можно добиться либо поместив записи PTR в отдельный файл, в котором доменное имя зоны по умолчанию — IN-ADDR.ARPA. (заданный в файле начальной загрузки демона named), либо изменив этот домен с помощью директивы $ORIGIN. Если домен по умолчанию определен как 0.87.194.IN-ADDR.ARPA., то запись можно представить так:

50 IN PTR www.ru.

NetworkManager

Проверить статус можно командой

systemctl status NetworkManager

NetworkManager.service — Network Manager
Loaded: loaded (/usr/lib/systemd/system/NetworkManager.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2021-02-18 17:30:13 EET; 1 months 30 days ago
Docs: man:NetworkManager(8)
Main PID: 841 (NetworkManager)
Tasks: 5
CGroup: /system.slice/NetworkManager.service
├─ 841 /usr/sbin/NetworkManager —no-daemon
└─9599 /sbin/dhclient -d -q -sf /usr/libexec/nm-dhcp-helper -pf /var/run/dhclient-ens192.pid -lf /var/lib/NetworkManager/dhclient-5c2584c5-7d87-4826-ba2a-79713eb62a9a-ens192.lease -cf /var/lib/Net…

Dec 16 17:41:43 localhost.localdomain NetworkManager: <info> dhcp4 (ens192): gateway 10.1.103.254
Dec 16 17:41:43 localhost.localdomain NetworkManager: <info> dhcp4 (ens192): lease time 7200
Dec 16 17:41:43 localhost.localdomain NetworkManager: <info> dhcp4 (ens192): nameserver ‘10.10.10.1’
Dec 16 17:41:43 localhost.localdomain NetworkManager: <info> dhcp4 (ens192): nameserver ‘10.1.0.2’
Dec 16 17:41:43 localhost.localdomain NetworkManager: <info> dhcp4 (ens192): domain name ‘urn.su’
Dec 16 17:41:43 localhost.localdomain NetworkManager: <info> dhcp (ens192): domain search ‘urn.su.’
Dec 16 17:41:43 localhost.localdomain NetworkManager: <info> dhcp (ens192): domain search ‘hel.fi.urn.su.’
Dec 16 17:41:43 localhost.localdomain NetworkManager: <info> dhcp (ens192): domain search ‘ad.urn.su.’
Dec 16 17:41:43 localhost.localdomain NetworkManager: <info> dhcp4 (ens192): state changed bound -> bound
Dec 16 17:41:43 localhost.localdomain dhclient: bound to 10.1.102.211 — renewal in 2903 seconds.

Синтаксис

Параметры

Параметр Описание
выход из nslookup Выход из программы командной строки Nslookup.
nslookup Finger Подключается к серверу finger на текущем компьютере.
nslookup help Отображает краткую сводку по подкомандам.
nslookup ls Выводит сведения для домена DNS.
nslookup lserver Изменяет сервер по умолчанию на указанный домен DNS.
nslookup root Изменяет сервер по умолчанию на сервер для корня пространства имен домена DNS.
nslookup server Изменяет сервер по умолчанию на указанный домен DNS.
nslookup set Изменяет параметры конфигурации, влияющие на работу функций Lookup.
nslookup set all Выводит текущие значения параметров конфигурации.
nslookup set class Изменяет класс запроса. Класс указывает группу протоколов сведений.
nslookup set d2 Включает или выключает режим полной отладки. Выводятся все поля каждого пакета.
nslookup set debug Включает или выключает режим отладки.
nslookup set domain Изменяет имя домена DNS по умолчанию на указанное имя.
nslookup set port Изменяет порт сервера DNS-имен TCP/UDP по умолчанию на указанное значение.
nslookup set querytype Изменяет тип записи ресурса для запроса.
nslookup set recurse Сообщает серверу DNS-имен о необходимости запрашивать другие серверы, если эти сведения отсутствуют.
nslookup set retry Задает число повторных попыток.
nslookup set root Изменяет имя корневого сервера, используемого для запросов.
nslookup set search Добавляет DNS-имена доменов в списке поиска доменов DNS в запрос, пока не будет получен ответ. Это применимо, когда набор и запрос уточняющего запроса содержат по крайней мере одну точку, но не заканчиваются точкой в конце.
nslookup set srchlist Изменяет имя домена DNS по умолчанию и список поиска.
nslookup set timeout Изменяет начальное число секунд ожидания ответа на запрос.
nslookup set type Изменяет тип записи ресурса для запроса.
nslookup set vc Указывает, следует ли использовать виртуальный канал при отправке запросов на сервер.
nslookup view Сортирует и перечисляет выходные данные предыдущей подкоманды Ls или команд.

Комментарии

  • Если компутертофинд является IP-адресом и запрос предназначен для типа записи ресурса A или ptr , возвращается имя компьютера.

  • Если компутертофинд является именем и не имеет точки в конце, имя домена DNS по умолчанию добавляется к имени. Это поведение зависит от состояния следующих подкоманд Set : domain, срчлист, дефнамеи Search.

  • Если ввести дефис (-) вместо компутертофинд, Командная строка изменится на интерактивный режим nslookup .

  • Если запрос на поиск завершается неудачей, программа командной строки выдает сообщение об ошибке, в том числе:

    Сообщение об ошибке Описание
    истекло время ожидания Сервер не ответил на запрос по истечении определенного промежутка времени и определенного числа повторных попыток. Время ожидания можно установить с помощью команды nslookup set timeout . Число повторных попыток можно задать с помощью команды nslookup set retry .
    Нет ответа от сервера Сервер DNS-имен не работает на компьютере сервера.
    Записи отсутствуют Сервер DNS-имен не содержит записи ресурсов текущего типа запроса для компьютера, хотя имя компьютера является допустимым. Тип запроса указывается с помощью команды nslookup set QueryType .
    Несуществующий домен Имя компьютера или домена DNS не существует.
    Подключение отклонено или сеть недоступна Не удалось установить подключение к серверу DNS-имен или серверу finger. Эта ошибка обычно возникает при запросах Ls и finger .
    Сбой сервера Сервер DNS-имен обнаружил внутреннюю несогласованность в своей базе данных и не смог вернуть допустимый ответ.
    Препятству Серверу DNS-имен отказано в обслуживании запроса.
    Ошибка формата Сервер DNS-имен обнаружил, что пакет запроса имеет неправильный формат. Это может указывать на ошибку в nslookup.

Диагностика разрешения имен (nslookup, dig)

Разобравшись с сетевой связностью и маршрутизацией приходим к следующему этапу — разрешение доменных имен. В большинстве случаев в работе с удаленными сервисами мы не используем IP-адреса, а указываем доменные имена удаленных ресурсов. За перевод символических имен в IP-адреса отвечает служба DNS — это сеть серверов, которые содержат актуальную информацию о соответствии имен и IP в пределах доверенных им доменных зон.

Самый простой способ проверить работает ли разрешение имен — запустить утилиту ping с указанием доменного имени вместо IP-адреса (например, ping ya.ru). Если ответные пакеты от удаленного сервера приходят, значит все работает как надо. В противном случае нужно проверить прописан ли DNS-сервер в сетевых настройках и удается ли получить от него ответ.

Способы выяснения какой DNS-сервер использует наш сервер различаются в зависимости от используемой версии и дистрибутива ОС Linux. Например, если ОС используется Network Manager для управления сетевыми интерфейсами (CentOS, RedHat и др.), может помочь вывод команды nmcli:

Скриншот №7. Команда nmcli

В настройках сетевого интерфейса, в разделе DNS configuration, мы увидим IP-адрес сервера. В Ubuntu 18.04 и выше, использующих Netplan, используем команду systemd-resolve —status:

Скриншот №8. Команда systemd-resolve —status

Используемый сервер также будет указан в настройках интерфейса, в разделе DNS Servers. В более старых версиях Ubuntu потребуется проверить содержимое файлов /etc/resolve.conf и /etc/network/interfaces. Если сервер не указан, воспользуйтесь статьей для ОС Ubuntu 18.04 или CentOS, чтобы скорректировать настройки.

Проверить работу сервиса разрешения имен нам помогут утилиты nslookup или dig. Функционально они почти идентичны: G-вывод утилиты dig содержит больше диагностической информации и гибко регулируется, но это далеко не всегда нужно. Поэтому используйте ту утилиту, которая удобна в конкретной ситуации. Если эти команды недоступны, потребуется доставить пакеты на CentOS/RedHat:

для Debian/Ubuntu:

После успешной установки сделаем тестовые запросы:

Скриншот №9. Тестовые запросы

В разделе Answer Section видим ответ от DNS сервера — IP-адрес для A-записи с доменным именем ya.ru. Разрешение имени работает корректно:

Скриншот №10. Подтверждение корректной работы

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

Что же делать, если в ответе отсутствует IP-адрес? Возможно, DNS-сервер недоступен. Для проверки можно отправить тестовый запрос на другой DNS-сервер. Обе утилиты позволяют эти сделать. Направим тестовый запрос на DNS-сервер Google:

Скриншот №11. Отправка тестового запроса 1

Скриншот №12. Отправка тестового запроса 2

Если имена разрешаются публичным DNS-сервером корректно, а установленным по умолчанию в ОС нет, вероятно, есть проблема в работе этого DNS-сервера. Временным решением данной проблемы может быть использование публичного DNS-сервера в качестве сервера для разрешения имен в операционной системе. В том случае, если разрешение имен не работает ни через локальный, ни через публичный DNS сервер — стоит проверить не блокируют ли правила файрвола отправку на удаленный порт 53 TCP/UDP пакетов (именно на этом порту DNS-серверы принимают запросы).

Часто используемые параметры:

  • nslookup имя сервер — разрешить доменное имя, используя альтернативый сервер;
  • nslookup –type=тип имя — получить запись указанного типа для доменного имени (например, nslookup -type=mx ya.ru – получить MX-записи для домена ya.ru);
  • dig @сервер имя — разрешить доменное имя, используя альтернативый сервер;
  • dig имя тип — получить запись указанного типа для доменного имени (например, dig ya.ru mx — получить MX-записи для домена ya.ru).

Как обычно, полный набор опций и параметров для указанных утилит можно найти во встроенной справке операционной системы, используя команду man.

191028
Санкт-Петербург
Литейный пр., д. 26, Лит. А

+7 (812) 403-06-99

700
300

ООО «ИТГЛОБАЛКОМ ЛАБС»

700
300

Узнать имя своего хоста

Существует несоколько способов узнать имя своего хоста.

Часто для этого достаточно просто посмотреть в терминал

Пример моего терминала

$

andrei — это имя пользователя
localhost — это имя хоста

Downloads — имя текущей директории

Посмотреть порядок можно выполнив

echo $PS1

\$

u — пользователь
h — хост

W — Working Directory — Рабочая диретория

Другие способы

hostname

localhost.localdomain

hostname -f

localhost

uname -n

localhost.localdomain

hostnamectl

Static hostname: localhost.localdomain
Icon name: computer-vm
Chassis: vm
Machine ID: 35e254eda578c54084b96e06d5f285cf
Boot ID: afb44fef8d764f30bb89550849b02fde
Virtualization: kvm
Operating System: CentOS Linux 7 (Core)
CPE OS Name: cpe:/o:centos:centos:7
Kernel: Linux 3.10.0-1160.36.2.el7.x86_64

What is Nslookup?

First, let’s talk about what Nslookup is – it is a small but very powerful network administration command-line software. It has a simple interface, but it is useful. The Nslookup command is available on many of the popular computer operating systems like Windows, macOS, and Linux distros. You can use it to perform DNS queries and receive: domain names or IP addresses, or any other specific DNS Records.

There are Nslookup online tools too. You can access such a site full of online network tools and search for the option for nslookup. You can define your query for a specific DNS record, to identify the domain, the port in use, and timeout in seconds. For better security, we recommend you to use the software on your computer.

If you want high speed, you must use Anycast DNS services! Check this article about Anycast DNS!

Установка ifconfig

yum provides ifconfig

или

yum whatprovides ifconfig

Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.funet.fi
* epel: www.nic.funet.fi
* extras: ftp.funet.fi
* updates: ftp.funet.fi
base/7/x86_64/filelists_db | 7.2 MB 00:00:01
epel/x86_64/filelists_db | 12 MB 00:00:03
extras/7/x86_64/filelists_db | 224 kB 00:00:00
ssh-products/x86_64/filelists_db | 89 kB 00:00:00
updates/7/x86_64/filelists_db | 3.4 MB 00:00:01
net-tools-2.0-0.25.20131004git.el7.x86_64 : Basic networking tools
Repo : base
Matched from:
Filename : /sbin/ifconfig

ifconfig входит, например, в состав net-tools

Установим net-tools

sudo yum install net-tools

10 основных команд dig

1. Запрос домена.»A» записи 

# dig yahoo.com

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.10.rc1.el6_3.2 <<>> yahoo.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<

Команда dig выполняется для поиска «А» записи для домена yahoo.com. Dig команда считывает с /etc/resolv.conf  запросы к DNS-серверу, перечисленные в нем.

Давайте поймем вывод команды:
Строки, начинающиеся с «;»  — это комментарии.
Первая строка говорит нам версию dig (9.8.2).
Далее, dig показывает заголовок ответа который получил от DNS-сервера
В данном случае это запрос для «A» записи yahoo.com. «IN » означает, что это Интернет поиск (в классе Интернет).
Раздел говорит нам что yahoo.com имеет IP-адрес 72.30.38.140
Наконец есть некоторая статистика о запросе. Вы можете отключить эту статистику с помощью опции + nostats.

2. Запрос домена записи «А»  + (short ) короткий вывод
По умолчанию dig  довольно многословен (много выводит всего). Один из способов сократить вывод заключается в использовании варианта с «+short» который будет резко сокращать вывод, как показано ниже.

# dig yahoo.com +short

99.130.13.44
72.30.38.144
124.136.254.169

Примечание: По умолчанию dig  ищет «А» записи указанного домена но можно указать другие записи также. Запись MX или Mail Exchange говорит почтовым серверам как производить маршрут  для электронной почты домена. Аналогично TTL, SOA и др.

3. Запросы MX-записи для домена
Запросы разных типов ресурса DNS записи.

# dig yahoo.com MX

4. Запросы SOA записи для домена

# dig yahoo.com SOA

$ dig SOA inux-notes.org @lakas.ns.cloudflare.com.

5. Запросы TTL записей для домена 

# dig yahoo.com TTL

6. Только запрос и ответ

# dig yahoo.com +nocomments +noquestion +noauthority +noadditional +nostats

7. Запросы ALL DNS-записей

# dig yahoo.com ANY +noall +answer

8. Посмотреть обратный DNS 

# dig -x 75.35.31.143 +short

ir1.fp.vip.sp2.yahoo.com.

9. Запросы к нескольким отчетам DNS
Конкретные запросы DNS а именно запросы для нескольких веб-сайта (для MX, NS и т.д. записей).

# dig yahoo.com mx +noall +answer redhat.com ns +noall +answer

dig yahoo.com mx +noall +answer redhat.com ns +noall +answer

10. Создать файл  .digrc
Создать файл  .digrc в $HOME/.digrc  и сохранить параметры dig по умолчанию.

dig yahoo.com

11. Как определить серверы имен, связанных с доменом?

$ dig NS +short linux-notes.org

lakas.ns.cloudflare.com.bella.ns.cloudflare.com.

12. Как выглядит делегация в моей зоне?

$ dig linux-notes.org +trace

dig linux-notes.org +trace

 13. Какое значение в кэше отдает resolver?

$ dig google.com @8.8.8.8

dig google.com @8.8.8.8

14. Вывод синхронизированы ли зоны со всеми NS?

$ dig linux-notes.org  +nssearch

SOA bella.ns.cloudflare.com. dns.cloudflare.com. 2016847280 10000 2400 604800 3600 from server 173.245.58.74 in 33 ms.SOA bella.ns.cloudflare.com. dns.cloudflare.com. 2016847280 10000 2400 604800 3600 from server 173.245.59.194 in 33 ms.

 Если вы заинтересованы только в сравнении с серийным номером, можно отфильтровать нежелательное и отсортировать результаты и так же удалить все дубликаты строк:

$ dig linux-notes.org  +nssearch | cut -d ' ' -f 4 | sort | uniq  -c

2 2016847280

Итак, теперь вы знаете, около трех кодов ошибок DNS:  NXDOMAIN, REFUSED и NOERROR. Есть другие коды возврата DNS (коды состояния), которые объясняются следующим образом:

NOERROR (RCODE:0): DNS Query completed successfully — DNS запрос выполнен успешно.FORMERR (RCODE:1): DNS Query Format Error — DNS ошибка формата на запрос.SERVFAIL (RCODE:2): Server failed to complete the DNS request — Серверу не удалось завершить запрос DNS.NXDOMAIN (RCODE:3): Domain name does not exist — Доменное имя не существует.NOTIMP (RCODE:4): Function not implemented — Функция не реализована.REFUSED (RCODE:5): The server refused to answer for the query — сервер отказался отвечать на запрос.YXDOMAIN (RCODE:6): Name that should not exist, does exist — Имя, которое не должно существовать, существует.XRRSET (RCODE:7): RRset that should not exist, does exist — RRset который не должен существовать, существует.NOTAUTH (RCODE:9): Server not authoritative for the zone — Сервер не является авторитетным для зоны.NOTZONE (RCODE:10): Name not in zone —  Имя не в зоне.

В этой статье «Установка dig в CentOS» постарался рассказать как установить и как пользоваться утилитой dig.

Проблемы с зонными ошибками

Выполните следующие проверки:

  • Проверьте Просмотр событий как для основного, так и для дополнительного DNS-сервера.

  • Проверьте сервер источника, чтобы узнать, не отправит ли он передачу данных для безопасности.

  • Проверьте вкладку зонные передачи свойств зоны в консоли DNS. Если сервер ограничит передачу зоны на список серверов, например на вкладке серверы имен в свойствах зоны, убедитесь, что сервер-получатель находится в этом списке. Убедитесь, что сервер настроен на отправку зонных передач.

  • Проверьте наличие проблем на основном сервере, выполнив действия, описанные в разделе . Когда появится запрос на выполнение задачи на клиенте, выполните задачу на сервере-получателе.

  • Проверьте, не работает ли на сервере-получателе другая реализация сервера DNS, например BIND. Если это так, проблема может быть вызвана одной из следующих причин:

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

    • если зона прямого просмотра на Windows сервере содержит тип записи (например, запись SRV), которую сервер-получатель не поддерживает, то на сервере-получателе могут возникнуть проблемы с извлечением зоны.

Проверьте, запущена ли на сервере-источнике другая реализация сервера DNS, например BIND. если да, то возможно, что зона на сервере источника включает несовместимые записи ресурсов, которые Windows не распознает.

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

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Мой редактор ОС
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: