Ответ Томаса будет работать, только если вы знаете , к какому серверу «whois» подключиться.
Существует много разных способов выяснить это, но ни один из них (AFAIK) не работает одинаково для каждого реестра домена.
Некоторые доменные имена поддерживают запись SRV
для службы _nicname._tcp
в DNS, но есть проблемы с этим, потому что пока нет общепринятого стандарта о том, как запретить субдомену обслуживать SRV
записи, которые переопределяют эти официального реестра (см. http://tools.ietf.org/html/draft-sanz-whois-srv-00).
Для многих TLD можно отправить ваш запрос на <tld>.whois-servers.net
. Это на самом деле работает довольно хорошо, но имейте в виду, что это не будет работать во всех случаях, когда есть официально делегированные домены второго уровня.
Например, в .uk
есть несколько официальных поддоменов, но только некоторые из них управляются реестром .uk
, а другие имеют свои собственные службы WHOIS, а те не находятся в базе данных whois-servers.net
.
сбивают с толку и «неофициальные» реестры, такие как .uk.com
, которые равны в базе данных whois-servers.net
.
p.s. официальный разделитель конца строки в WHOIS, как и в большинстве протоколов IETF, равен CRLF
, а не просто LF
.