-
Notifications
You must be signed in to change notification settings - Fork 17.8k
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
net: support single-request resolv.conf option in pure Go resolver #29661
Conversation
This PR (HEAD: 2fb6da5) has been imported to Gerrit for code review. Please visit https://go-review.googlesource.com/c/go/+/157377 to see it. Tip: You can toggle comments from me using the |
Message from Bryan C. Mills: Patch Set 1: Run-TryBot+1 Please don’t reply on this GitHub thread. Visit golang.org/cl/157377. |
Message from Gobot Gobot: Patch Set 1: TryBots beginning. Status page: https://farmer.golang.org/try?commit=01e4ec79 Please don’t reply on this GitHub thread. Visit golang.org/cl/157377. |
Message from Gobot Gobot: Patch Set 1: Build is still in progress... Consult https://build.golang.org/ to see whether it's a new failure. Other builds still in progress; subsequent failure notices suppressed until final report. Please don’t reply on this GitHub thread. Visit golang.org/cl/157377. |
Message from Brad Fitzpatrick: Patch Set 2: Patch Set 1 was rebased Please don’t reply on this GitHub thread. Visit golang.org/cl/157377. |
Message from Brad Fitzpatrick: Patch Set 2: Run-TryBot+1 Please don’t reply on this GitHub thread. Visit golang.org/cl/157377. |
Message from Gobot Gobot: Patch Set 2: TryBots beginning. Status page: https://farmer.golang.org/try?commit=0e58454d Please don’t reply on this GitHub thread. Visit golang.org/cl/157377. |
Message from Gobot Gobot: Patch Set 2: TryBot-Result+1 TryBots are happy. Please don’t reply on this GitHub thread. Visit golang.org/cl/157377. |
Message from Jean-François Bustarret: Patch Set 2: Gentle ping; Brad; Mikio; The code is ready to review. Thanks ! Please don’t reply on this GitHub thread. Visit golang.org/cl/157377. |
Message from Brad Fitzpatrick: Patch Set 3: Patch Set 2 was rebased Please don’t reply on this GitHub thread. Visit golang.org/cl/157377. |
Message from Brad Fitzpatrick: Patch Set 3: Run-TryBot+1 Please don’t reply on this GitHub thread. Visit golang.org/cl/157377. |
Message from Gobot Gobot: Patch Set 3: TryBots beginning. Status page: https://farmer.golang.org/try?commit=e7b25020 Please don’t reply on this GitHub thread. Visit golang.org/cl/157377. |
Message from Brad Fitzpatrick: Patch Set 3: (1 comment) Please don’t reply on this GitHub thread. Visit golang.org/cl/157377. |
Message from Gobot Gobot: Patch Set 3: TryBot-Result+1 TryBots are happy. Please don’t reply on this GitHub thread. Visit golang.org/cl/157377. |
This PR (HEAD: d481acf) has been imported to Gerrit for code review. Please visit https://go-review.googlesource.com/c/go/+/157377 to see it. Tip: You can toggle comments from me using the |
Message from Jean-François Bustarret: Patch Set 4: (1 comment) Please don’t reply on this GitHub thread. Visit golang.org/cl/157377. |
Message from Jean-François Bustarret: Patch Set 4: Gentle ping Brad & co: the code is ready for review. Thanks ! Please don’t reply on this GitHub thread. Visit golang.org/cl/157377. |
Message from Brad Fitzpatrick: Patch Set 4: Run-TryBot+1 Code-Review+2 Please don’t reply on this GitHub thread. Visit golang.org/cl/157377. |
Message from Gobot Gobot: Patch Set 4: TryBots beginning. Status page: https://farmer.golang.org/try?commit=5fff4e87 Please don’t reply on this GitHub thread. Visit golang.org/cl/157377. |
Message from Gobot Gobot: Patch Set 4: Build is still in progress... Other builds still in progress; subsequent failure notices suppressed until final report. Consult https://build.golang.org/ to see whether they are new failures. Keep in mind that TryBots currently test exactly your git commit, without rebasing. If your commit's git parent is old, the failure might've already been fixed. Please don’t reply on this GitHub thread. Visit golang.org/cl/157377. |
Message from Brad Fitzpatrick: Patch Set 5: Patch Set 4 was rebased Please don’t reply on this GitHub thread. Visit golang.org/cl/157377. |
Message from Brad Fitzpatrick: Patch Set 5: Run-TryBot+1 Please don’t reply on this GitHub thread. Visit golang.org/cl/157377. |
Message from Gobot Gobot: Patch Set 5: TryBots beginning. Status page: https://farmer.golang.org/try?commit=7adfbb89 Please don’t reply on this GitHub thread. Visit golang.org/cl/157377. |
Message from Gobot Gobot: Patch Set 5: TryBot-Result+1 TryBots are happy. Please don’t reply on this GitHub thread. Visit golang.org/cl/157377. |
Message from Jean-François Bustarret: Patch Set 5: Is this mergeable ? After merging, my plan is to rebase https://go-review.googlesource.com/c/go/+/156366 to fix conflicts. Thanks. Please don’t reply on this GitHub thread. Visit golang.org/cl/157377. |
There is a DNS resolution issue in Kubernetes (UDP response packets get dropped due to a race in conntrack between the parallel A and AAAA queries, causing timeouts in DNS queries). A workaround is to enable single-request / single-request-reopen in resolv.conf in order to use sequential A and AAAA queries instead of parallel queries. With this PR, the pure Go resolver searches for "single-request" and "single-request-reopen" in resolv.conf and send A and AAAA queries sequentially when found. Fixes #29644 Change-Id: I906b3484008c1b9adf2e3e9241ea23767e29df59 GitHub-Last-Rev: d481acf GitHub-Pull-Request: #29661 Reviewed-on: https://go-review.googlesource.com/c/go/+/157377 Run-TryBot: Brad Fitzpatrick <[email protected]> TryBot-Result: Gobot Gobot <[email protected]> Reviewed-by: Brad Fitzpatrick <[email protected]>
This PR is being closed because golang.org/cl/157377 has been merged. |
There is a DNS resolution issue in Kubernetes (UDP response packets get dropped due to a race in conntrack between the parallel A and AAAA queries, causing timeouts in DNS queries).
A workaround is to enable single-request / single-request-reopen in resolv.conf in order to use sequential A and AAAA queries instead of parallel queries.
With this PR, the pure Go resolver searches for "single-request" and "single-request-reopen" in resolv.conf and send A and AAAA queries sequentially when found.
Fixes #29644