Keneth, can you double-check your resolv.conf. Is 127.0.0.1 the only listed nameserver? In the past I've seen issues where Net::DNS only used the first nameserver from resolv.conf, and would fail all DNS queries if that host wasn't live. Dig is more aggressive, and will by default try various servers from resolv.conf until it finds one that works...
Here's the whole thing. I haven't touched it since August, when I first set the machine up.
; generated by /sbin/dhclient-script search lsi.lan ;nameserver 10.0.0.1 ;nameserver 10.0.0.127 nameserver 127.0.0.1
(The comment at the top is bogus; the DHCP client is configured to no longer overwrite the file.)
BTW, I just pulled the latest Net::DNS to check the source. It looks like the wait is done in send_udp in Net-DNS-0.48/lib/Net/DNS/Resolver/Base.pm. I don't see anything obviously wrong. But it would be nice if the SA debug flag caused the debug flag in Net::DNS to be set, so we can see its output as well.
