DNSCheck::Test::Nameserver(3)

NAME
DNSCheck::Test::Nameserver - Test a nameserver

DESCRIPTION
Test a single name server for a specific zone. The following tests are done:

•   The nameserver must be a valid hostname (according to DNSCheck::Test::Host).

•   The nameserver should not be recursive.

•   The nameserver must be authoritative for the zone.

•   The SOA record for the zone must be fetchable over both UDP and TCP.

•   The nameserver may provide AXFR for the zone.

METHODS

->new($parent, $zone, $nameserver)
    Create a new test object, and optionally set the zone and nameserver name that will be tested. If those two are set, the values will be used as defaults for many other methods.

->test($zone, $nameserver);
    Perform the default set of tests for a nameserver in a delegated domain. Uses the defaults set in new(), if any. Returns the number of problems found at level ERROR and CRITICAL (as well as detiled log info in the parent's logger object as usual).

    For this test, a lookup on the nameserver name will be made and all tests run on all addresses found (obeying global settings for use of IPv4 and IPv6, of course).

->test_by_ip($zone, $ip)
    Run as many tests as make sense on the nameserver at the given IP address.

->zone($zone)
    Get or set the default zone for this object.

->ns($name)
    Get or set the default nameserver name for this object.

->ns_check_id($ip, [$name])
    Run the version-fetching test for the specified server.

->ns_recursive($ip, [$name])
    Test if the specified server is recursive. As all tests here, returns the number of problems on levels ERROR and CRITICAL found, and populates the logger object.

->ns_authoritative($ip, [$name, $zone])
    Test if the specified server is authoritative for the given zone (nameserver name is only used for logging).

->ns_udp($ip, [$name, $zone])
    Test if the given server can be queried via UDP.

->ns_tcp($ip, [$name, $zone])
    Test if the given server can be queried via TCP.

->ns_axfr($ip, [$name, $zone])
    Test if the given server allows transfer of the given zone.

SEE ALSO
DNSCheck, DNSCheck::Logger, DNSCheck::Test::Host