Быстро, доступно, безопасно!
Магазин готовых сайтов

DNS

DNS

База знаний -> DNS

спросить у ns1.example.com IPv4-адрес (A) для example.com: dig @ns1.example.com example.com A

спросить IPv6-адрес (AAAA) для example.com: dig @ns1.example.com example.com AAAA

спросить MX-записи (почта) для example.com: dig @ns1.example.com example.com MX

спросить TXT-записи (SPF/DMARC и т.п.) для example.com: dig @ns1.example.com example.com TXT

спросить NS-записи (какие DNS обслуживают домен) для example.com: dig @ns1.example.com example.com NS

спросить SOA (серийник/параметры зоны) для example.com: dig @ns1.example.com example.com SOA

спросить SRV-запись сервиса _sip._tcp.example.com: dig @ns1.example.com _sip._tcp.example.com SRV

спросить CAA-записи (сертификаты) для example.com: dig @ns1.example.com example.com CAA

запросить "всё сразу" (часто ограничивается): dig @ns1.example.com example.com ANY

обратный DNS (PTR) для 93.184.216.34: dig @ns1.example.com -x 93.184.216.34

вывести только итоговый IPv4 (быстрая проверка): dig @ns1.example.com example.com A +short

dig @ns1.example.com example.com A +noall +answer # вывести только секцию ANSWERdig @ns1.example.com example.com A +noall +answer +authority +additional # вывести ANSWER+AUTHORITY+ADDITIONAL для диагностики делегированияdig @ns1.example.com example.com A +comments # показать флаги/rcode/комментарии (AA/RA/AD, NXDOMAIN и т.п.)dig @ns1.example.com example.com A +stats # показать статистику (время ответа/размер/сервер)dig @ns1.example.com example.com A +time=2 +tries=1 # быстро проверить “жив/не жив” с короткими таймаутамиdig @ns1.example.com google.com A +recurse # проверить рекурсию (должен резолвить внешние домены, если это рекурсор)dig @ns1.example.com google.com A +norecurse # проверить поведение без рекурсии (не должен “придумывать” внешние ответы)dig @ns1.example.com example.com A +tcp # выполнить DNS-запрос по TCP/53 (проверка TCP)dig @ns1.example.com example.com A +notcp # выполнить DNS-запрос по UDP/53 (проверка UDP)dig @ns1.example.com example.com A +bufsize=512 # проверить ответы при маленьком EDNS-буфере (часто ловит проблемы фрагментации)dig @ns1.example.com example.com A +bufsize=1232 # типичный безопасный EDNS-буфер для интернетаdig @ns1.example.com example.com A +bufsize=4096 # проверить большие ответы с EDNSdig @ns1.example.com example.com A +noedns # проверить работу без EDNSdig @ns1.example.com example.com DNSKEY +dnssec # запросить DNSKEY (проверка DNSSEC-материала зоны)dig @ns1.example.com example.com DS +dnssec # запросить DS (проверка связки родитель→дочерняя зона)dig @ns1.example.com example.com A +dnssec # запросить A с DO-битом (проверка RRSIG/флагов)dig @ns1.example.com dnssec.works A +dnssec # тест валидирующего резолвера на “хорошей” DNSSEC-зонеdig @ns1.example.com dnssec-failed.org A +dnssec # тест валидирующего резолвера на “битой” DNSSEC-зоне (обычно SERVFAIL)dig example.com NS +trace # трассировка делегирования NS от корня (поиск места поломки)dig example.com A +trace # трассировка разрешения A от корня (поиск места поломки)dig @ns1.example.com version.bind TXT CH # получить версию BIND через CHAOS (если разрешено)dig @ns1.example.com hostname.bind TXT CH # получить hostname через CHAOS (если разрешено)dig @ns1.example.com id.server TXT CH # получить server-id через CHAOS (если настроено)dig @ns1.example.com example.com AXFR # попытка полного переноса зоны (AXFR)dig @ns1.example.com example.com IXFR=0 # попытка инкрементального переноса зоны (IXFR)host example.com ns1.example.com # быстрый запрос записей домена через указанный DNShost -t A example.com ns1.example.com # запрос A через hosthost -t AAAA example.com ns1.example.com # запрос AAAA через hosthost -t MX example.com ns1.example.com # запрос MX через hosthost -t TXT example.com ns1.example.com # запрос TXT через hosthost -t NS example.com ns1.example.com # запрос NS через hosthost -t SOA example.com ns1.example.com # запрос SOA через hosthost -a example.com ns1.example.com # запрос “всего, что сможет” через hosthost -v example.com ns1.example.com # подробный вывод hosthost 93.184.216.34 ns1.example.com # обратный PTR через hostnslookup example.com ns1.example.com # простая проверка резолвинга через nslookupnslookup -type=A example.com ns1.example.com # запрос A через nslookupnslookup -type=AAAA example.com ns1.example.com # запрос AAAA через nslookupnslookup -type=MX example.com ns1.example.com # запрос MX через nslookupnslookup -type=NS example.com ns1.example.com # запрос NS через nslookupnslookup -type=SOA example.com ns1.example.com # запрос SOA через nslookupdrill @ns1.example.com example.com A # альтернатива dig (ldns)drill -DT @ns1.example.com example.com A # drill с подробностями и таймингамиdrill -S @ns1.example.com example.com A # drill с DNSSEC-деталями (если поддерживается)delv @ns1.example.com example.com A # DNSSEC-валидация (если delv установлен)delv @ns1.example.com dnssec-failed.org A # проверка, что валидатор режет “битую” DNSSEC-зонуkdig @ns1.example.com example.com A # альтернатива dig (knot)kdig @ns1.example.com example.com A +tcp # DNS по TCP через kdigkdig @ns1.example.com example.com A +dnssec # DNS с DO-битом через kdigkdig @ns1.example.com example.com A +tls -p 853 # DoT (DNS over TLS) к ns1.example.com:853 (если поддерживается)unbound-host -d example.com ns1.example.com # запрос через unbound-host (подробно), если установленcat /etc/resolv.conf # посмотреть, какие DNS реально прописаны в системеresolvectl status # посмотреть активные DNS/домены/search на systemd-хосте (AlmaLinux)resolvectl query example.com # резолв через systemd-resolved (AlmaLinux)getent hosts example.com # проверить резолв через NSS (как это видят приложения)cat /etc/nsswitch.conf # проверить порядок источников резолвинга (files/dns и т.п.)nc -vz ns1.example.com 53 # проверить доступность TCP/53 (DNS по TCP)nc -vzu ns1.example.com 53 # проверить доступность UDP/53 (DNS по UDP, “проверка с оговорками”)nmap -sT -p 53 ns1.example.com # проверить TCP/53 сканеромnmap -sU -p 53 ns1.example.com # проверить UDP/53 сканеромnmap -sSU -p 53 ns1.example.com # проверить TCP+UDP 53ping -c 3 ns1.example.com # проверить общую сетевую достижимость (не DNS, но сеть)traceroute -n ns1.example.com # проверить маршрут до сервера (где может фильтроваться)tcpdump -ni any port 53 # смотреть весь DNS-трафик на машине (Linux)tcpdump -ni em0 port 53 # смотреть DNS-трафик на интерфейсе em0 (FreeBSD-пример)tcpdump -ni any host ns1.example.com and port 53 # смотреть DNS-трафик только к ns1.example.com (Linux)tcpdump -ni em0 host ns1.example.com and port 53 # смотреть DNS-трафик только к ns1.example.com (FreeBSD-пример)ss -lntup | grep ':53' # проверить, что на Linux кто-то слушает TCP/53 (на самом DNS-сервере)ss -lnup | grep ':53' # проверить, что на Linux кто-то слушает UDP/53 (на самом DNS-сервере)lsof -i :53 # показать процесс, который занимает порт 53 (Linux)sockstat -4 -6 -l | grep '.53' # показать слушающие 53 сокеты (FreeBSD)systemctl status named # статус BIND/named (AlmaLinux, если это BIND)systemctl status unbound # статус Unbound (AlmaLinux)service named status # статус BIND/named (FreeBSD)service unbound status # статус Unbound (FreeBSD)journalctl -u named -n 200 --no-pager # последние логи BIND (AlmaLinux)journalctl -u unbound -n 200 --no-pager # последние логи Unbound (AlmaLinux)tail -n 200 /var/log/messages # последние системные логи (часто DNS пишет сюда на FreeBSD)named-checkconf -z /etc/named.conf # проверить синтаксис BIND-конфига и загрузку зонnamed-checkzone example.com /var/named/example.com.zone # проверить файл зоны BIND для example.comrndc status # получить состояние BIND (если rndc настроен)rndc reload # перезагрузить конфиг/зоны BIND (проверка применения изменений)unbound-checkconf # проверить синтаксис конфига Unboundunbound-control status # состояние Unbound (если включён control-интерфейс)unbound-control lookup example.com # проверить, что Unbound реально резолвит внутри себяopenssl s_client -connect ns1.example.com:853 -servername example.com # проверить DoT: доступность 853 и отдачу сертификатаcurl -v '[https://ns1.example.com/dns-query?name=example.com&type=A](https://ns1.example.com/dns-query?name=example.com&type=A)' -H 'accept: application/dns-json' # проверить DoH (если у ns1.example.com есть такой endpoint)dnsperf -s ns1.example.com -d queries.txt # нагрузочный тест DNS по списку запросов (если dnsperf установлен)resperf -s ns1.example.com -d queries.txt # альтернативный нагрузочный тест резолвера (если resperf установлен)

Метки: dns

Опрос

В каком году был сделан ваш сайт? (голосов: 24)

  • до 2015 года - 23 (96%)
  • в 2015 - 0 (0%)
  • в 2016 - 0 (0%)
  • в 2017 - 0 (0%)
  • в 2018 - 1 (4%)
  • в 2019 - 0 (0%)