NAME

Zonemaster::Recursor - recursive resolver for Zonemaster

SYNOPSIS

my $packet = Zonemaster::Recursor->recurse($name, $type, $class);
my $pname = Zonemaster::Recursor->parent('example.org');

METHODS

recurse($name, $type, $class)

Does a recursive resolution from the root servers down for the given triplet.

parent($name)

Does a recursive resolution from the root down for the given name (using type SOA and class IN). If the resolution is successful, it returns the domain name of the second-to-last step. If the resolution is unsuccessful, it returns the domain name of the last step.

get_ns_from($packet, $state)

Internal method. Takes a packet and a recursion state and returns a list of ns objects. Used to follow redirections.

get_addresses_for($name[, $state])

Takes a name and returns a (possibly empty) list of IP addresses for that name (in the form of Net::IP::XS objects). When used internally by the recursor it's passed a recursion state as its second argument.

clear_cache()

Class method to empty the cache of responses to recursive queries.

root_servers()

Returns a list of ns objects representing the root servers. The list of root servers is hardcoded into this module.