DNS解析有时连接超时

DNS解析有时连接超时

祝大家美好的一天。发出命令: nslookup kafka.zxc.stage @dns1.prod 有时我会得到答案 - ;;连接超时;无法访问服务器

例如,当我每秒运行一个命令时,6 秒内有 6 个请求。部分答案“无法访问服务器”。

我觉得这很奇怪。我决定使用 tcpdump 实用程序进行查看。我举两个例子。当 nslookup 返回 A 记录并且“无法访问任何服务器”时。

一切安好。响应返回到控制台 -

3926 IP (tos 0x0, ttl 64, id 40303, offset 0, flags [none], proto UDP (17), length 202) 
dns-int.prod > kafka.zxc.stage.33173: [bad udp cksum 0x4e30 -> 0x6909!] 14677* q: A? kafka.stage. 2/2/2 kafka.stage. [10m] CNAME kafka.zxc.stage., kafka.zxc.stage. [10m] A 100.200.40.22 ns: stage.zone. [30m] NS dns2-int.prod., stage.zone. [30m] NS dns-int.prod . ar: dns-int.prod . [1h] A 100.100.100.200, dns2-int.prod. [30m] A 100.100.100.100 (174)

发送下一个请求,大约等待2-3秒,控制台返回“;;连接超时;无法到达服务器”-

4662 IP (tos 0x0, ttl 64, id 40543, offset 0, flags [none], proto UDP (17), length 129) 
dns-int.prod > kafka.zxc.stage.52157: [bad udp cksum 0x4de7 -> 0x6fe7!] 53* q: AAAA? kafka.zxc.stage. 0/1/0 ns: stage.zone. [4d] SOA dns1.prod. admindn.mail.(101)

据我了解,A记录适用于IPv4,而AAAA记录适用于IPv6。

我仍然不明白他为什么要尝试以这种方式发送请求。如果有人能指出我寻找解决方案的方向,我将非常高兴。我也会寻找解决方案。谢谢。

所有这一切,如果我向 dns1 发送 nslookup 不间断请求,dns2(从属)不会有错误。

nslookup 到 dns1 的示例 -

 # nslookup kafka.zxc.stage 100.100.100.100
Server:     100.100.100.100
Address:    100.100.100.100#53

kafka.zxc.stage canonical name = kafka.stage.
Name:   kafka.zxc.stage
Address: 100.200.40.22
;; connection timed out; no servers could be reached

发送答案,但连接超时?或者

# nslookup kafka.zxc.stage 100.100.100.100
;; connection timed out; no servers could be reached

这就是浮动问题。

时间太长了,我正在检查它

for i in {0..5}; do time dig @100.100.100.100 +short kafka.zxc.stage ; done 2>&1 | grep real
real    0m5.018s
real    0m5.012s
real    0m0.016s
real    0m0.013s
real    0m5.015s
real    0m10.021s

指定的配置未更改。但操作系统配置发生了变化。我正在进一步检查

答案1

虚拟IP错误,他不是在听,而是在工作。在 netstat 重新创建新行后 -

tcp        0      0 100.100.100.100:53         0.0.0.0:*               LISTEN      29671/named 

重新创建一下就一切OK了。

相关内容