dnsmasq并行查询正在等待肯定响应



我的dnsmasq.conf目前有一些上游服务器

all-servers
dns-loop-detect
no-resolv
server=10.0.0.100
server=10.0.0.101    
server=192.168.53.1
server=192.168.53.2

根据哪个服务器首先响应,有时客户端会得到NXDOMAIN响应。

但在发送否定响应之前,我想尝试另一台服务器。

有没有办法让dnsmasq表现得像CoreDNS的扇出插件?

每个到达CoreDNS扇出插件的传入DNS查询都将并行复制到每个列出的IP(即DNS服务器(
来自任何查询的DNS服务器的第一个非否定响应将作为对应用程序DNS请求的响应进行转发。

您可以使用iptables过滤来自上游DNS服务器的NXDOMAIN回复。

这样dnsmasq将超时,而不是获得NXDOMAIN

当与所有服务器dnsmasq配置选项配对时,这将达到您想要的效果。示例规则:

#iptables -A INPUT -s 10.0.0.100/32 -p tcp -m tcp --sport 53 -m u32 --u32 "0x36&0xf=0x3" -j DROP
#iptables -A INPUT -s 10.0.0.100/32 -p udp -m udp --sport 53 -m u32 --u32 "0x1c&0xf=0x3" -j DROP

您应该为每个上游DNS服务器设置这2条规则

最新更新