The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.


Net::DNS::Lite - a pure-perl DNS resolver with support for timeout


    use Net::DNS::Lite qw(inet_aton);

    # drop-in replacement for Socket::inet_aton
    $Net::DNS::Lite::TIMEOUT = 5; # global timeout variable
    my $addr = inet_aton("");

    # or per-query timeout
    my $addr = inet_aton("", $timeout_in_seconds);


This module provides a replacement function for Socket::inet_aton, with support for timeouts.



maximum time (in seconds) inet_aton will block (default: 10)


if set, Net::DNS::Lite will cache the DNS responses internally using the supplied cache object. The cache object should support get, set, and remove functions (default: none)


maximum ttl of the cached entries (in seconds). Only has effect when $Net::DNS::Lite::CACHE is set.


Kazuho Oku

The module is based on the excellent AnyEvent::DNS by mlehmann.


This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

See <>