我们的用户界面正在与另一台计算机上的另一台应用程序通信,通常使用域名进行连接。
在我们的网络上,安装IPv6后,DNS名称解析效果很好,所有机器都可以ping通和联系。
当卸载IPv6时,ping相同的DNS名称会返回某个远程子网上的IP地址(24.28.193.9;本地子网为192.168.1.1);然后我们的应用程序无法通信。重新安装IPv6时,DNS解析会自行更正。
即使没有IPv6,当ping不起作用时,我仍然可以通过输入\\\\MACHINE_NAME\\
来使用Windows资源管理器浏览其他计算机。我不确定为什么名称解析似乎在这里工作。我们正在使用Windows XP SP2环境。
可以成功ping通机器的IP。只有DNS名称无法正确解析。
我查找了DNS服务器的地址。我们所有的计算机都指向网络网关,这是一个无线路由器。安装IPv6时,路由器具有与未安装IPv6时相同的DNS服务器地址。
最奇怪的是,我刚刚发现我ping的DNS名称并不重要。所有ping DNS名称都返回相同的地址:“24.28.193.9”。
我尝试刷新DNS解析器缓存并在目标计算机和源计算机上注册DNS。一切都无济于事。我可以ping的唯一DNS名称是当前计算机的名称。
有关为什么我们的软件无法在没有安装IPv6的情况下进行通信的任何想法?
更新:
好的,我现在做了一些研究。
我查找了DNS服务器的地址。我们所有的计算机都指向网络网关,这是一个无线路由器。安装IPv6时,路由器具有与未安装IPv6时相同的DNS服务器地址。
最奇怪的是,我刚刚发现我ping的DNS名称并不重要。所有ping DNS名称都返回相同的地址:“24.28.193.9”。
我尝试刷新DNS解析器缓存并在目标计算机和源计算机上注册DNS。一切都无济于事。我可以ping的唯一DNS名称是当前计算机的名称。
还有其他建议吗?非常感谢你的帮助。
答案 0 :(得分:4)
你这里有很多事情
你已经把你的问题写成了#3的问题,但是你所描述的一切都指向问题实际上是#1。如果您的解决方案无法解决问题,您是否可以在未安装IPv6的情况下ping正确的IP?
听起来好像您安装的IPv6名称服务器具有正确的信息且IPv4名称服务器不正确?您是通过DHCP还是硬编码接收名称服务器?安装IPv6时以及不安装IPv6时使用的名称服务器的IP是什么?
答案 1 :(得分:1)
我知道这是一个迟到的答案,但如果其他人遇到同样的问题,关键是IP地址,“24.28.193.9”。一个快速的谷歌搜索显示它似乎与您的ISP完全违反DNS协议有关,为所有不存在的域名返回一个固定的IP地址(正确的答案是NXDOMAIN)。您的网络网关很可能只是将您的查询转发到您的ISP名称服务器。
您的系统依赖于DNS协议的正确操作。在通过其他方法(最可能是NetBIOS名称解析)查询名称之前,他们期待NXDOMAIN答案。由于DNS服务器完全损坏并返回错误答案,因此永远不会查找正确的地址。
安装或卸载IPv6的原因改变了这种情况很可能是因为与之相关的东西正在改变名称解析顺序(在尝试DNS之前使用其他方法查找)。因此,解决方法是自己更改名称解析顺序。
真正的解决方案是更换为更好的ISP(不会破坏已建立的协议)或运行您自己的DNS服务器(这是我自从VeriSign提取{{3他们的情况更糟,因为不断变化的互联网服务供应商根本没有任何差别。)
参考文献: