有没有什么方法可以跟踪 DNS 请求来查看答案来自哪里?
我们的网络有内部 DNS 服务器,提供内部 IP 地址解析,我们使用 EasyDNS 来托管面向公众的 DNS。
情况是,EasyDNS 已正确设置了具有外部 IP 的某个地址,但是当我执行挖从我们的网络内部,我得到了(正确的)内部 IP - 但域名才不是似乎已在我们的任何内部 DNS 服务器上设置。我们的主 DNS 服务器 (Active Directory) 将域列为缓存,但没有说明来自何处。
我如何追踪 dig 从哪里获得结果?
答案1
如果使用 dig:
dig +trace ....
否则,运行 Wireshark 来捕获数据包。
答案2
我引用贾斯汀斯科特的回答,因为我很确定他是对的:
您是否在使用 NAT 路由?某些 NAT 路由器会检查 DNS 数据包并转换其处理的已知外部 IP,然后将其转换为响应中的内部 IP 地址,然后再沿网络转发数据包。