Существование доменного имени через dig

Можно ли проверить существование доменного имени, проверив вывод «dig»? Внутри исходников привязки я нашел следующие константы:

0 DNS_R_NOEROR
1 DNS_R_FORMERR
2 DNS_R_SERVFAIL
3 DNS_R_NXDOMAIN
4 DNS_R_NOTIMP
5 DNS_R_REFUSED
6 DNS_R_YXDOMAIN
7 DNS_R_YXRRSET
8 DNS_R_NXRRSET
9 DNS_R_NOTAUTH
10 DNS_R_NOTZONE
16 DNS_R_BADVERS

<RCODE 11>     # 11 has no macro
<RCODE 12>     # 12 has no macro
<RCODE 13>     # 13 has no macro
<RCODE 14>     # 14 has no macro
<RCODE 15>     # 15 has no macro

На мой взгляд, NOERROR & SERVFAIL означает, что имя хоста существует (хотя это не означает, что IP-адрес связан с ним). NXDOMAIN означает, что он абсолютно не существует.

Я предпочитаю не использовать whois, потому что это довольно медленно. dig намного быстрее, так как мне просто нужно быть уверенным, что имя хоста еще не существует.

Может ли кто-нибудь пролить свет на мои предположения и другие макросы?

Спасибо


person Salvania    schedule 16.01.2011    source источник
comment
Вам нужно дать определение существованию. Вы имеете в виду зарегистрированный? Если да, то нет, так как вы можете зарегистрировать домен (и, следовательно, сделать его недоступным для всех остальных), но вообще не публиковать его в DNS. В противном случае вам просто нужно запросить авторитетные серверы имен реестра, и если они не ответят NXDOMAIN для домена, то это означает, что он существует, потому что он делегирован авторитетными серверами имен реестра. По крайней мере, это работает для домена непосредственно под TLD / суффиксом, но может не работать дальше, поскольку могут быть подстановочные знаки.   -  person Patrick Mevzek    schedule 17.01.2020


Ответы (3)


Что ж, в некоторых случаях это может сработать, но в большинстве случаев вы увидите неправильные результаты — некоторые домены зарегистрированы, но не имеют записи на сервере имен TLD. И для некоторых доменов настроена запись, но они не зарегистрированы, поскольку в некоторых реестрах настроены домены с подстановочными знаками:

$ dig asdfasdfasdfxvyxv123.de.com A +short 
91.213.214.122

$ whois -h whois.centralnic.com asdfasdfasdfxvyxv123.de.com
DOMAIN NOT FOUND

whois действительно медленный - поговорите с вашим провайдером домена, большинство реестров предлагают более быстрые методы проверки, зарегистрирован ли домен или нет (например, протокол EPP)

person Oliver Peter    schedule 01.08.2011

Нет, ты не можешь. По крайней мере, Dig может сообщить вам, есть ли у домена запись сервера имен, но даже если ответ отрицательный, это не означает, что домен доступен.

Единственный способ — выполнить запрос WHOIS.

person Simone Carletti    schedule 26.01.2011

Просто запросите записи SOA домена:

$ dig activcloud.eu +short soa
dns112.ovh.net. tech.ovh.net. 2018091203 86400 3600 3600000 300

пока

$ dig lmksjdflksd.eu +short soa

ничего не возвращает

person Julien    schedule 13.09.2018