Назад | Перейти на главную страницу

Убедитесь, что сервер имен зарегистрирован в реестре TLD

Допустим, мне принадлежит доменное имя example.com. Зарегистрирован у регистратора R. В моем аккаунте на R, Я зарегистрировал следующие серверы имен для .TLD реестр:

Допустим, еще нет доменов, использующих эти серверы имен для DNS. Как можно проверить за пределами моего R учетной записи, что серверы имен были успешно зарегистрированы в .TLD реестр?

Например, WHOIS компании VeriSign Inc. страница позволяет найти зарегистрированный .COM сервер имен:

Server Name: NS1.HOSTGATOR.COM
IP Address: 67.18.54.2
Registrar: ENOM, INC.
Whois Server: whois.enom.com
Referral URL: http://www.enom.com

Есть ли стандартный подход к поиску этой информации для любого реестра TLD?


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

Domain Name: HOSTGATOR.COM
Registrar: ENOM, INC.
Whois Server: whois.enom.com
Referral URL: http://www.enom.com

Сервер имен: NS1.P13.DYNECT.NET Сервер имен: NS2.P13.DYNECT.NET Сервер имен: NS3.P13.DYNECT.NET Сервер имен: NS4.P13.DYNECT.NET

Status: clientTransferProhibited
Updated Date: 05-jan-2013
Creation Date: 22-oct-2002
Expiration Date: 22-oct-2015

Вместо этого я ищу способ запросить один зарегистрированный сервер имен (например, ns1.example.tld) по реестру, чтобы найти IP-адрес, записанный реестром для этого сервера имен (например, 123.456.789.001).


Обновить:

Я связался с VeriSign для получения информации, и оказалось, что поиск VeriSign в WHOIS для серверов имен является собственностью. Вот их ответ:

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

- Бенджамин, Служба поддержки клиентов VeriSign, Inc.

Вторая часть @ Ответ Ииана ниже правильно. Сервер имен должен быть связан с доменом для поиска IP-адреса, зарегистрированного в реестре для этого сервера имен.

Вы можете нам покопаться и выбрать публичный DNS-сервер

dig 8.8.8.8 NS example.com

Это даст вам имена серверов имен, после чего вы можете просто найти их, например.

dig +short ns1.example.tld 
123.456.789.001

или если вы используете окна, вы можете использовать nslookup

nslookup
> server 8.8.8.8
> set type=ns
> example.com 

Тогда аналогично приведенному выше

nslookup ns1.example.tld

предоставит вам IP-адрес


Если вы хотите напрямую запросить tld, тогда

dig ns tld

предоставит список серверов имен TLD, затем вы можете напрямую запросить у них записи ns, например. tld

dig @ns666.tld ns example.tld

Обычно вы можете использовать Whois для запроса серверов имен:

$ whois -h whois.verisign-grs.com "nameserver =ns3.serverfault.com"

Whois Server Version 2.0

Domain names in the .com and .net domains can now be registered
with many different competing registrars. Go to http://www.internic.net
for detailed information.

   Server Name: NS3.SERVERFAULT.COM
   IP Address: 69.59.196.217
   Registrar: NAME.COM LLC
   Whois Server: whois.name.com
   Referral URL: http://www.name.com

>>> Last update of whois database: Fri, 18 Jan 2013 08:57:23 UTC <<<

Реализация этой функции зависит от TLD. .GOV, например, не возвращает запросы к серверу имен:

$ whois -h whois.nic.gov "nameserver =a.gov-servers.net" 
% DOTGOV WHOIS Server ready
No match for nameserver "A.GOV-SERVERS.NET".

>>> Last update of whois database: 2013-01-18T08:59:27Z <<<

На самом деле не существует надежного способа (т.е. метода, доступного для всех TLD), чтобы проверить, был ли хост зарегистрирован в реестре через общедоступные службы DNS или Whois. Вы не можете напрямую запрашивать связующие записи, и вы видите их только в том случае, если вы запрашиваете домен, используя искомые серверы имен. Поскольку вас интересуют серверы имен, не связанные ни с одним доменом, это не вариант.

Подход whois - ваш лучший выбор, но на него нельзя полагаться. В реестре может быть зарегистрирован сервер имен, но не нужно его помещать в Whois, если нет связанных доменов. Единственный 100% надежный способ проверить наличие сервера имен в реестре - это запросить реестр с помощью команды EPP CHECK. Поскольку они доступны только регистраторам, вам это мало поможет.

Допустим, еще нет доменов, использующих эти серверы имен для DNS. Как можно проверить за пределами моей учетной записи R, что серверы имен были успешно зарегистрированы в реестре .TLD?

Конечно, если у вас нет доменов, связанных с сервером имен, имеет ли это значение? Единственный гарантированный способ проверки - это зарегистрировать домен в TLD с помощью вашего сервера имен, запросить домен и проверить связь, которую вы получите от `dig @tldnameservers yourdomain ns.

Используйте nslookup или dig, чтобы запросить сервер gTLD о ваших серверах имен. Вы также можете использовать следующий веб-сайт для отслеживания делегирования DNS для вашего домена:

http://www.simpledns.com/lookup-dg.aspx

Для всех новых gTLD ICANN предписывает всем реестрам получать ответы whois на запросы серверов имен, чтобы проверять, зарегистрирован ли данный сервер имен (по имени или IP) в реестре. Это далеко не супер-полезный, но он существует.

Сначала запросите корневые серверы имен:

dig ns .

Затем запросите один из корневых серверов имен для серверов имен TLD (например, .net):

dig @m.root-servers.net. ns net.

(Или вы можете пропустить первый шаг и просто запросить dig ns net.

Теперь запросите у одного из этих серверов имен доменное имя с нужными серверами имен:

dig @m.gtld-servers.net. ns speedy.net.

Если TLD домена совпадает с TLD серверов имен (это не обязательно должен быть тот же домен), а серверы имен зарегистрированы на уровне TLD, вы получите IP-адреса серверов имен. :

; <<>> DiG 9.11.3-1ubuntu1.12-Ubuntu <<>> @m.gtld-servers.net. ns speedy.net.
; (2 servers found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 39877
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 4, ADDITIONAL: 9
;; WARNING: recursion requested but not available

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;speedy.net.                    IN      NS

;; AUTHORITY SECTION:
speedy.net.             172800  IN      NS      ns1.speedy.net.
speedy.net.             172800  IN      NS      ns2.speedy.net.
speedy.net.             172800  IN      NS      ns3.speedy.net.
speedy.net.             172800  IN      NS      ns4.speedy.net.

;; ADDITIONAL SECTION:
ns1.speedy.net.         172800  IN      A       205.251.197.253
ns1.speedy.net.         172800  IN      AAAA    2600:9000:5305:fd00::1
ns2.speedy.net.         172800  IN      A       205.251.192.194
ns2.speedy.net.         172800  IN      AAAA    2600:9000:5300:c200::1
ns3.speedy.net.         172800  IN      A       205.251.199.10
ns3.speedy.net.         172800  IN      AAAA    2600:9000:5307:a00::1
ns4.speedy.net.         172800  IN      A       205.251.194.116
ns4.speedy.net.         172800  IN      AAAA    2600:9000:5302:7400::1

;; Query time: 2 msec
;; SERVER: 192.55.83.30#53(192.55.83.30)
;; WHEN: Thu Jun 18 04:42:20 UTC 2020
;; MSG SIZE  rcvd: 287

В противном случае, если TLD отличается или серверы имен не зарегистрированы, вы получите имена серверов имен без IP-адресов:

dig @m.gtld-servers.net. ns speedymatch.com.

; <<>> DiG 9.11.3-1ubuntu1.12-Ubuntu <<>> @m.gtld-servers.net. ns speedymatch.com.
; (2 servers found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 10930
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 4, ADDITIONAL: 1
;; WARNING: recursion requested but not available

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;speedymatch.com.               IN      NS

;; AUTHORITY SECTION:
speedymatch.com.        172800  IN      NS      ns1.speedy.net.
speedymatch.com.        172800  IN      NS      ns2.speedy.net.
speedymatch.com.        172800  IN      NS      ns3.speedy.net.
speedymatch.com.        172800  IN      NS      ns4.speedy.net.

;; Query time: 2 msec
;; SERVER: 192.55.83.30#53(192.55.83.30)
;; WHEN: Thu Jun 18 04:45:02 UTC 2020
;; MSG SIZE  rcvd: 126

Повторите эти запросы для любого TLD, для которого вы хотите проверить серверы имен. Вам не нужно запрашивать каждый из серверов имен TLD, достаточно одного. Но если вы хотите, вы можете запросить их все.

Для тестирования вам понадобится домен в том же TLD, что и домен серверов имен. Если у вас нет такого домена для тестирования, вы можете сначала добавить новые серверы имен в качестве дополнительных серверов имен в дополнение к старым серверам имен, затем проверить, работает ли он, и только затем удалить старые серверы имен вашего домена.