Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature Request: async dns #37

Open
binarycraft007 opened this issue Apr 4, 2023 · 2 comments
Open

Feature Request: async dns #37

binarycraft007 opened this issue Apr 4, 2023 · 2 comments
Labels
enhancement question Further information is requested

Comments

@binarycraft007
Copy link

Hi Mitchell,

Nice library, can we add async dns to the roadmap, because it's really helpful for network programming.

Thanks

@mitchellh
Copy link
Owner

I'd be happy to add this if there is a reasonable way to do this by operating system. I'm unfamiliar with the low level APIs available since I always used a higher level library for async DNS. It would help if you could suggest the low-level APIs on Linux, Windows, and Mac that could enable this.

@mitchellh mitchellh added question Further information is requested enhancement labels Apr 18, 2023
@rsepassi
Copy link
Contributor

libuv seems to just run getaddrinfo (Unix-like, GetAddrInfoW for Windows) in a thread pool.

https://github.com/c-ares/c-ares is what libcurl uses and seems to be manually constructing the DNS requests and directly communicating with the nameserver over TCP. Didn't see how it's getting the nameservers.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement question Further information is requested
Projects
None yet
Development

No branches or pull requests

3 participants