【发布时间】:2014-03-21 12:44:52
【问题描述】:
我正在尝试编写一个 Perl 脚本,该脚本应该获取特定域的名称服务器的 IP,如注册商中所写,就像我写的示例一样:
dig -t ns example.com @a.gtld-servers.com
并参加了附加部分。
我尝试使用 Net::DNS::Resolver::Recursive,但我得到的只是两个 NS 服务器的相同 IP 地址。 (在我的公司,我们填充 DNS 记录,因为每个 NS 都是一个独立的服务器,这就是我获得相同地址的原因。
这是我写的:
my $resolver = Net::DNS::Resolver::Recurse->new();
my @root_ns = map $_ . '.root-servers.net', 'a'..'m';
$resolver->hints( @root_ns );
my $ns_query = $resolver->query_dorecursion($domain, "NS");
foreach my $ns_rr ( $ns_query->additional ) {
print $ns_rr->name . " " . $ns_rr->rdatastr . "\n";
}
除了解析 dig 输出之外,有没有其他方法可以获取名称服务器的 IP?
【问题讨论】: