阿里云ecs上自建dns server 有时候会先后返回回2条不同的解析记录

在阿里云的ecs上配置了bind9 的dns server , 在公司网络(移动)家里网络(移动)环境下执行 dig gdi.aihomi.com @47.100.88.206,结果有时候是解析出配置好的: 118.31.178.194, 有时候还是会返回原来的:47.110.211.50image.png image.png 使用wireshark抓包后可以看到,有时候会返回2条记录:image.png image.png image.png image.png 提了工单后,阿里云回复测试没有复现。

然后我自己这边开了一个热点,手机卡是联通的,测试了几次也是没有出现返回2条的情况,并且返回的是配置的ip。为了测试一下是不是网络问题,我又在ucloud的一台主机上测试,结果和我开热点是一样的,正确无误。(同时也在dns server 这个主机上进行了测试,也是正确的)。

请问先后返回2条回应,是什么造成的,从上面现象看,感觉是移动网络运营商的问题,但是不能确定,也不知道是什么原理和问题。 我遇到了这个问题,刚好在开源中国看到,希望能够得到阿里云官方的回复,请查看

展开
收起
因为相信,所以看见。 2020-05-24 22:07:16 942 分享 版权
阿里云 AI 助理回答

遇到您描述的DNS解析结果不一致的问题,可能涉及多个层面的因素,包括但不限于:

  1. 本地DNS缓存:客户端(如您的电脑、手机)和网络中的递归DNS服务器可能会缓存DNS记录。即使您更改了权威DNS服务器上的记录,之前的缓存记录仍然可能在有效期内被返回给查询者。不同网络环境下的DNS缓存策略可能不同,导致看到不同的结果。

  2. DNS TTL(生存时间):当您修改DNS记录时,设置的TTL值会影响旧记录何时失效。如果TTL较长,那么更改后的一段时间内,部分客户端或递归DNS服务器仍可能返回旧的IP地址。

  3. 网络运营商DNS劫持或重定向:某些ISP(互联网服务提供商)可能会实施DNS劫持或透明代理,以实现广告推送、内容过滤或其他目的。这可能导致即便您的BIND9 DNS服务器正确配置,用户通过特定网络访问时,还是会被返回经过修改的DNS响应。

  4. BGP路由问题:虽然较为罕见,但BGP(边界网关协议)路由问题也可能影响DNS解析结果。如果数据包在到达您的DNS服务器或从服务器返回的路径上遇到异常路由,可能会间接影响解析结果。

  5. BIND9配置问题:尽管您提到在其他环境下测试正常,但仍需确认BIND9服务器的配置是否完全正确,比如是否有视图(views)配置,根据客户端源IP提供不同的解析结果。

针对您的情况,建议采取以下措施:

  • 检查并缩短TTL值:在更改DNS记录前,将TTL设为一个较短的时间(如60秒),以便快速刷新全球DNS缓存。
  • 清除本地DNS缓存:每次测试前后,确保清除客户端及可能的本地路由器的DNS缓存。
  • 使用第三方DNS查询工具:如dig +trace命令,可以追踪整个DNS解析过程,帮助诊断问题所在。
  • 联系网络运营商:如果怀疑是移动网络的问题,可以尝试联系您的网络服务提供商,询问他们是否有实施DNS相关的策略或遇到已知问题。
  • 监控与日志分析:在BIND9服务器上启用详细日志记录,并监控DNS查询日志,查看是否有异常请求或响应。

如果阿里云工单回复未复现问题,可能是因为他们的测试环境与您的实际使用环境存在差异。您可以尝试提供更多详细信息给他们,包括上述排查步骤的结果,以便更深入地分析问题。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答

市场上DNS解析软件和解析服务的相关资讯

还有其他疑问?
咨询AI助理