Применение whois для получения данных от InterNIC
Проблема
Вы хотите узнать, кому принадлежит домен (по аналогии с командой UNIX whois).
Решение
Воспользуйтесь модулем Net::Whois с CPAN:
use Net::Whois;
$domain_obj = Net::Whois::Domain->new($domain_name)
or die "Couldn't get information on $domain_name: $!\n";
# Вызвать методы объекта $domain_obj
# для получения имени, тега, адреса и т. д.
Комментарий
Сервис whois предоставляется службой регистрации доменных имен и предназначается для
идентификации владельца имени. Исторически в системах семейства UNIX эти данные получались
с помощью программы whois(1), которая возвращала около 15 строк информации, включая имена,
адреса и телефоны административных, технических и финансовых контактных лиц домена.
Модуль Net::Whois, как и whois(1), является клиентом службы whois. Он подключается к
серверу whois (по умолчанию используется whois.intemic.net, главный сервер доменов ".com",
".org.", ".net" и ".edu"). Доступ к данным осуществляется с помощью методов, вызываемых для объекта.
Чтобы получить информацию о домене, создайте объект Net::Whois::Domain. Например,
для получения данных о perl.org объект создается так:
$d = Net::Whois::Domain->new( "perl.org" )
or die "Can't get information on perl.org\n";
Гарантируется только получение имени домена и тега — уникального идентификатора
домена в учетных записях NIC:
print "The domain is called " . $d->domain . "\n";
print "Its tag is ", $d->tag, "\n";
Также могут присутствовать следующие данные: название организации, которой принадлежит
домен (например, "The Perl Institute"); адрес компании в виде списка строк (например,
("221В Baker Street", "London")) и страна (например, "United Kingdom" или
двухбуквенное сокращение "uk").
Кроме информации о самом домене также можно получить сведения о контактных лицах домена.
Метод contact возвращает ссылку на хэш, в котором тип контакта (например, "Billing"
или "Administrative") ассоциируется с массивом строк.
$contact_hasn = $d->contacts;
if ($contact_hash) {
print "Contacts:\n";
foreach $type (sort keys %$contact_hash) {
print "$type:\n";
foreach $line (@{$contact_hash->{$type)}) {
print " $line\n";
}
}
} else {
print "No contact information. \n";
}
См. также
Proverte kod v komentariyah gde pro list tam oshibki detskie
Оставить комментарий:
|
|