phpman > perldoc > Net::DNS::Resolver::Recurse(3pm)

Markdown | JSON | MCP    

NAME
    Net::DNS::Resolver::Recurse - DNS recursive resolver

SYNOPSIS
        use Net::DNS::Resolver::Recurse;

        my $resolver = new Net::DNS::Resolver::Recurse();
        $resolver->debug(1);

        $resolver->hints('198.41.0.4');     # A.ROOT-SERVER.NET.

        my $packet = $resolver->send( 'www.rob.com.au.', 'A' );

DESCRIPTION
    This module is a subclass of Net::DNS::Resolver.

METHODS
    This module inherits almost all the methods from Net::DNS::Resolver. Additional module-specific
    methods are described below.

  hints
    This method specifies a list of the IP addresses of nameservers to be used to discover the
    addresses of the root nameservers.

        $resolver->hints(@ip);

    If no hints are passed, the priming query is directed to nameservers drawn from a built-in list
    of IP addresses.

  query, search, send
    The query(), search() and send() methods produce the same result as their counterparts in
    Net::DNS::Resolver.

        $packet = $resolver->send( 'www.example.com.', 'A' );

    Server-side recursion is suppressed by clearing the recurse flag in query packets and recursive
    name resolution is performed explicitly.

    The query() and search() methods are inherited from Net::DNS::Resolver and invoke send()
    indirectly.

  callback
    This method specifies a code reference to a subroutine, which is then invoked at each stage of
    the recursive lookup.

    For example to emulate dig's "+trace" function:

        my $coderef = sub {
            my $packet = shift;

            printf ";; Received %d bytes from %s\n\n",
                    $packet->answersize, $packet->answerfrom;
        };

        $resolver->callback($coderef);

    The callback subroutine is not called for queries for missing glue records.

ACKNOWLEDGEMENT
    This package is an improved and compatible reimplementation of the
    Net::DNS::Resolver::Recurse.pm created by Rob Brown in 2002, whose contribution is gratefully
    acknowledged.

COPYRIGHT
    Copyright (c)2014,2019 Dick Franks.

    Portions Copyright (c)2002 Rob Brown.

    All rights reserved.

LICENSE
    Permission to use, copy, modify, and distribute this software and its documentation for any
    purpose and without fee is hereby granted, provided that the original copyright notices appear
    in all copies and that both copyright notice and this permission notice appear in supporting
    documentation, and that the name of the author not be used in advertising or publicity
    pertaining to distribution of the software without specific prior written permission.

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
    BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
    NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
    DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
    OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

SEE ALSO
    Net::DNS::Resolver

Net::DNS::Resolver::Recurse(3pm)
NAME SYNOPSIS DESCRIPTION METHODS ACKNOWLEDGEMENT COPYRIGHT LICENSE SEE ALSO

Generated by phpman v3.7.12 Author: Che Dong Under GNU General Public License
2026-06-13 18:03 @216.73.217.0
CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Valid XHTML 1.0 TransitionalValid CSS!

^_back to top