[dns-operations] good async DNS library

Mark Blackman mark at exonetric.com
Fri Apr 26 11:40:56 UTC 2019

> On 26 Apr 2019, at 10:43, Klaus Darilion <klaus.mailinglists at pernau.at> wrote:
> Am 26.04.2019 um 05:04 schrieb Doug Barton:
>> On 4/25/19 2:08 PM, Klaus Darilion wrote:
>>> Hi all!
>>> For various monitoring scripts we use Perl's NET::DNS and
>>> Net::DNS::Async. Unfortunately they have various problems, ie
>>> Net::DNS::Async does not support DNSSEC and sending to other ports
>>> than 54, with Net::DNS's timeout/retries settings I never get the
>>> expected results ....
>>> Can someon recommend a DNS library (Perl, Python or PHP preferred)
>>> that supports:
>>> - async resolving
>>> - setting DO bit
>>> - EDNS0 options
>>> - proper timeout handling
>>> - sending queries to non-standard ports
>>> - (optional: TCP fallback)
>> Maybe if you sent your queries to port 53 you'd have better results?  ;)
>> Seriously though, it would be easier to help if you talked about what
>> you're trying to accomplish, rather than starting out with a proposed
>> solution. Also, please define what you mean by async, and why you think
>> you need it. (I know those may sounds like dumb questions, but it will
>> be easier to help you if you answer them.)
> My current task is to monitor zone freshness on our Anycast cloud. So,
> every second, I send SOA requests to every of our 30 global nodes and
> check the received serial.

What do you think of https://metacpan.org/pod/AnyEvent::DNS <https://metacpan.org/pod/AnyEvent::DNS>  

You will have to acquaint yourself with the AnyEvent idioms (“watchers” and “condition variables”) but the documentation claims to support your requirements

- Mark
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.dns-oarc.net/pipermail/dns-operations/attachments/20190426/ebf2e410/attachment.html>

More information about the dns-operations mailing list