[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