逆引き(Net::DNS)
ここでは、Net::DNSを使ってPTRレコードを取得する方法を説明したいと思います。 PTRレコードはIPアドレスからFQDNを解決するためのものです。
Net::DNSサンプル
以下に単純なサンプルを示します。
#!/usr/bin/perl
use Net::DNS;
$res = Net::DNS::Resolver->new;
# IPアドレス部分を変更して下さい
$query = $res->search('10.1.2.3', 'PTR');
#失敗した場合
if (!$query) {
print $res->errorstring;
print "\n";
exit;
}
#結果を1行づつ表示
foreach $rr ($query->answer) {
if ($rr->type eq "PTR") {
print $rr->ptrdname;
print "\n";
}
}
exit;
上記サンプルでは、10.1.2.3というプライベートIPアドレスに対しての問い合わせを行っているため、このままサンプルを実行しても何も結果は返って来ない可能性が非常に高いです。 10.1.2.3というIPアドレス部分は必要に応じて変更して下さい。