I end up with the IPv4 checks being marked as GOOD, an the IPv6 tests being marked as BAD.%tld_v4_masters = ( "server1" => "10.1.1.1", "server2" => "10.1.1.2", "server3" => "10.1.1.3", "server4" => "10.1.1.4", ); %tld_v6_masters = ( "server1" => "2620:10a:aaaa::1", "server1" => "2620:10a:aaaa::2", "server1" => "2620:10a:aaaa::3", "server1" => "2620:10a:aaaa::4", ); ###################################################################### +#################### ### SUB: &verifymasters; - Verify and Determine which zone masters to +compare myself against ###################################################################### +#################### sub verifymasters { print "Running verifymasters...\n"; foreach $tryzm (values %$prizms) { print "[DEBUG(verifymasters)] Verifying ZM $tryzm with test candid +ate zone $testcandidate...\n" if ($debug); $res = new Net::DNS::Resolver; $res->tcp_timeout (1) ; $res->retry (1) ; $res->retrans (1) ; $query = $res->nameservers($tryzm); $query = $res->query($testcandidate, "SOA"); my $serial=($query->answer)[0]->serial, if ($query); if (length($serial) > 2) { print "[DEBUG(verifymasters)] Marking ZM $tryzm as GOOD!\n" if ( +$debug); $goodzms++; } else { print "[DEBUG(verifymasters)] Marking ZM $tryzm as BAD!\n" if ($ +debug); } } if ($goodzms < 4) { foreach $tryzm (values %$seczms) { print "[DEBUG(verifymasters)] Verifying ZM $tryzm with test cand +idate zone $testcandidate...\n" if ($debug); $res = new Net::DNS::Resolver; $res->tcp_timeout (1) ; $res->retry (1) ; $res->retrans (1) ; $query = $res->nameservers($tryzm); $query = $res->query($testcandidate, "SOA"); my $serial=($query->answer)[0]->serial, if ($query); if (length($serial) > 2) { print "[DEBUG(verifymasters)] Marking ZM $tryzm as GOOD!\n" if + ($debug); $goodzms++; } else { print "[DEBUG(verifymasters)] Marking ZM $tryzm as BAD!\n" if +($debug); } } } }
In reply to Net::DNS::Resolver using IPv6 transport in nameservers by elsifsheep
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |