IPアドレスの解決(Net::DNS)

ここでは、Net::DNSを使ってAレコードを取得する方法を説明したいと思います。

Net::DNSサンプル

以下に単純なサンプルを示します。


#!/usr/bin/perl

use Net::DNS;

$res = Net::DNS::Resolver->new;
$query = $res->search('www.yahoo.co.jp');

#失敗した場合
if (!$query) {
  print $res->errorstring;
  print "\n";
  exit;
}

#結果を1行づつ表示
foreach $rr ($query->answer) {
  if ($rr->type eq "A") {
    print $rr->address;
    print "\n";
  }
}

exit;


単一のホスト名(もしくはFQDN)に複数のIPアドレスが関連つけられていることがあるため、resolvの結果は複数になっています。

IPv6基礎検定

YouTubeチャンネルやってます!