AdguardTeam / AdguardTeam/dnsproxy

SERVFAIL handling with --all-servers

未关闭
#354 1 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
bug
主要语言
Go
星标
3.3k
派生
343
PR 合并指标
30 天内没有已合并 PR

描述

Currently with `--all-servers` enabled, it seems like the fastest response is forwarded, even if that happens to be a `SERVFAIL`, which is pretty bad for some use cases. A `SERVFAIL` can indicate network problems, e.g. some DNS servers/proxies answer very quickly with `SERVFAIL`, when their own upstream is dead (which I guess is correct and reasonable), in this case `--all-servers` makes things even worse than using just a single server, because now if any upstream is dead, we're always failing.

I suggest changing `SERVFAIL` handling to by default only forward it, if all upstream servers happen to respond with `SERVFAIL`.

In case someone brings DNSSEC as argument, maybe `SERVFAIL`s can optionally be forwarded immediately, if coming with an appropriate EDE error code (RFC 8914).

(The `SERVFAIL` handling in fallback mode might be related: https://github.com/AdguardTeam/dnsproxy/issues/257)

贡献指南

这个仓库没有索引到贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。