[dns-operations] good async DNS library

Mark Blackman mark at exonetric.com
Fri Apr 26 11:44:18 UTC 2019



> On 26 Apr 2019, at 12:40, Mark Blackman <mark at exonetric.com> wrote:
> 
> 
> 
>> On 26 Apr 2019, at 10:43, Klaus Darilion <klaus.mailinglists at pernau.at <mailto: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
> 

It might simpler to just fork a process of your existing code for every resolver request though.

- Mark

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


More information about the dns-operations mailing list