Список Whois домена верхнего уровня с соответствующим регистратором
Я пытаюсь найти список TLD для соответствующего сервера whois, например
.com americanWhoisServer .net someOtherWhoisServer .au australianWhoisServer
В конце я стремлюсь к чему-то вроде словаря, где ключом является TLD, а значением является адрес сервера whois (например, whois.apnic.net).
Ах, я просто понял, что мне даны IP-адреса, а не доменные имена, но список все еще может пригодиться.
Как я могу определить, какой сервер Whois использовать, учитывая IP-адрес? Угадай и проверь?
5 ответов
Вы можете получить официальный (?) Список tld с http://data.iana.org/TLD/tlds-alpha-by-domain.txt а затем запросить whois-сервер IANA (whois.iana.org на порту 43) для каждый TLD, чтобы получить информацию об этом. Чуть более удобный для экспорта и официальный, чем список HTML tld на http://www.iana.org/domains/root/db/.
Не используйте статический, локальный список; Whois-серверы могут меняться во времени (хорошо, не каждый день, но это может случиться); чтобы найти сервер для данного домена или ip, начните с запроса к whois-серверу IANA, в основном подключитесь к whois.iana.org:43 и отправьте строку запроса, за которой следует "\ r \ n"; например, "ibm.com \ r \ n" или "72.163.5.201 \ r \ n", whois-сервер IANA затем вернет ответ, содержащий "подсказку", например, запрос для 72.163.5.201 вернет
% IANA WHOIS server
% for more information on IANA, visit http://www.iana.org
% This query returned 1 object
refer: whois.arin.net
inetnum: 72.0.0.0 - 72.255.255.255 organisation: ARIN status: ALLOCATED
whois: whois.arin.net
changed: 2004-08 source: IANA
Теперь проанализируйте ответ, выполнив поиск записи "whois:", извлеките имя сервера whois, отвечающего за IP-адрес или домен (в данном случае whois.arin.net), и повторите запрос, используя этот сервер; заметьте, однако, что в некоторых случаях (например, домены "com" и whois-сервер verisign) второй ответ, который вы получите, может, например, вернуть ссылку на другой whois-сервер, вот результат запроса против whois verisign для verisign Домен.com вернется
Domain Name: VERISIGN-GRS.COM
Registrar: CSC CORPORATE DOMAINS, INC.
Sponsoring Registrar IANA ID: 299
Whois Server: whois.corporatedomains.com
Referral URL: http://www.cscglobal.com/global/web/csc/digital-brand-services.html
Name Server: AV1.NSTLD.COM
Name Server: AV2.NSTLD.COM
Name Server: AV3.NSTLD.COM
Name Server: AV4.NSTLD.COM
Status: clientTransferProhibited https://www.icann.org/epp#clientTransferProhibited
Status: serverDeleteProhibited https://www.icann.org/epp#serverDeleteProhibited
Status: serverTransferProhibited https://www.icann.org/epp#serverTransferProhibited
Status: serverUpdateProhibited https://www.icann.org/epp#serverUpdateProhibited
Updated Date: 12-jan-2016
Creation Date: 08-sep-2000
Expiration Date: 08-sep-2016
в таком случае вам нужно найти строку "Whois Server:", извлечь имя сервера whois (в данном случае whois.corporatedomains.com) и повторить запрос; последнее предостережение, в некоторых случаях "реферал" может быть возвращен, даже если сервер тот, к которому вы только что обратились, поэтому вы должны проверить такое условие, чтобы избежать бесконечного цикла
Вы можете найти официальный список IANA (Орган по присвоению номеров в Интернете) по адресу http://www.iana.org/domains/root/db/ является хорошей отправной точкой / отправной точкой. В нем перечислены WHOIS (и серверы имен) для всех выделенных TLD, и это официальный список, но он недоступен в "простом для экспорта формате".
Список серверов для TLD и SLD можно найти по веб-адресу https://whois.sld.ro/servers-list.html и в единственных корневых доменах https://www.iana.org/domains/root/db
SLD / TLD Whois Server Last modified
.aaa whois.nic.aaa 2020-10-28
.gov.af whois.nic.af 2020-10-28
.com.af whois.nic.af 2020-10-28
.org.af whois.nic.af 2020-10-28
.edu.af whois.nic.af 2020-10-28
.ai whois.nic.ai 2020-10-28
.off.ai whois.nic.ai 2020-10-28
.com.ai whois.nic.ai 2020-10-28
....
Я регулярно составляю такой список из IANA и PSL в формате XML: https://github.com/whois-server-list/whois-server-list
Этот список содержит более 900 доменов верхнего уровня и соответствующих им серверов Whois. Дополнительно включает более 300 доменов второго уровня. Список часто обновляется.
У каждого клиента whois есть свой способ получения этой информации, так как не было принято ни одного стандарта.
GNU whois (как используется в Debian) имеет аппаратный список (не файл конфигурации, файл, включенный во время компиляции, с именем tld_serv_list).
Клиент whois во FreeBSD использует онлайновый (неофициальный) список, который хранится в DNS по адресу whois-servers.net:
% dig + короткое CNAME fr.whois-servers.net whois.nic.fr. % dig + короткое CNAME in.whois-servers.net whois.inregistry.net.