-
-
Notifications
You must be signed in to change notification settings - Fork 121
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
DNS lookups are not working with multiple system DNS servers #280
Comments
Hi @DMarby, If you believe this is a bug with c-ares could you also report this in their repository? If this is indeed a bug with c-ares the same issue should appear if you build libcurl from source using https://github.com/JCMais/curl-for-windows/tree/d6c10ce12588e723e7ffee52aae2df577391d99c and change the example.c in there: https://github.com/JCMais/curl-for-windows/blob/d6c10ce12588e723e7ffee52aae2df577391d99c/example.c to make a similar call to the one being made in Insomnia. Could you check if using the option handle.setOpt('DNS_SERVERS', "ip1, ip2") |
Hi @JCMais, Thanks for the quick reply, will build from that repo and test the example and let you know what the results are. As for using the |
👋 Hi @JCMais Product Owner for Insomnia here, we are getting quite a lot of reports of users being unable to make requests in Insomnia because of this change. Is it possible to revert? We do not want to lose the ability to rely on the system DNS and we don't have the time or capability to build out the really arduous task of gathering system DNS to supplement with the setOpt function. We are looking into building node-libcurl ourselves but that will obviously take some time and effort to setup as well - any help is greatly appreciated 😓 |
@DMarby @nijikokun Is the issue happening only on Windows? What I can do is release a new pre-release version, like
All the build scripts are available here https://github.com/JCMais/node-libcurl/tree/develop/scripts/ci and are under the same license as the repository, in case the Insomnia team wants to replicate the build steps. Windows builds are a bit different, in this case, the dependency is given directly in the |
This would be extremely helpful for the time being until we get to the bottom of the issue and or get our build system up 🙏
Are there any special environment variables defined within the CIs that we should know about? |
I have only reproduced it on Windows so far, unfortunately I have not been able to try it on macOS or Linux let, so I am not sure if it affects other platforms. |
Hi @JCMais, Still working on reproducing with just the If possible, releasing a version without cares would be of great help. We use |
There are a few, please see https://github.com/JCMais/node-libcurl/blob/develop/.github/workflows/build-and-release.yaml and https://github.com/JCMais/node-libcurl/blob/develop/.appveyor.yml.
I will do that later today or tomorrow morning, I will update this issue when it is available. |
Tested on macOS and Linux, it impacts all platforms
Thank you, this will help so many Insomnia users 🙏 |
Side note and potentially related issue we uncovered during discovery, also during retro on how this was missed it was brought up that the changelog and release notes have a typo stating Update: Yup, just got a report for it 😢 |
Thanks @nijikokun , yep that was a typo, it was supposed to be I will prob just remove c-ares altogether for now and wait until this is fixed. |
|
@nijikokun @DMarby FYI this has been fixed here: c-ares/c-ares#430 The node.js dependency has been updated here: nodejs/node@badd1fa |
@JCMais Unless I'm misunderstanding that PR, I think that only resolves the issue of "localhost" failing to be resolved, not the second issue of local DNS servers not being used? But I could very well be wrong about that |
@DMarby yeah, it seems to fix only the localhost issue. Not sure the other one has been reported tho. |
With the recent switch to the
c-ares
DNS resolver backend in version2.3.0
, it seems like DNS resolution is sometimes failing when using multiple DNS servers. A lot of our users have reported that they are unable to make requests due to this: Kong/insomnia#3234.Do you think it would be reasonable to stop using
c-ares
for the prebuilt binaries, given that there are likely a lot of other issues like this compared to the built-in system resolvers, and it's not possible to disable it during runtime?The text was updated successfully, but these errors were encountered: