我有一个关于Dns.GetHostEntry的非常具体的问题:
服务使用Dns.GetHostEntry使用主机的名称检索主机的所有IP地址.这一直很好.在特定客户处,Dns.GetHostEntry在查询特定主机时抛出"无此主机已知"错误.只有在尝试解析与安装该服务的计算机不同的域上的主机时,才会出现此问题.该服务已经工作了一段时间,但最近停止工作,抛出"没有这样的主机已知"错误(遗憾的是,没有堆栈跟踪可用).Nslookup工作,但没有问题.有问题的服务是用VB.NET编写的,目标是.NET Framwork 2.0.
.NET 3.0的MSDN条目中的注释(http://msdn.microsoft.com/en-us/library/ms143998(v=VS.85).aspx表明反向DNS条目可能存在问题主机,但我无法在测试网络上重现问题,即使删除了所有反向查找区域(其他.NET版本有更多注释,都有类似的问题).[编辑:]甚至deliberatly addind一个错误PTR记录不会使我的测试机器出现问题.
[EDIT2:]唯一导致错误的是断开网络适配器,从而使DNS服务器不可用,即使前向解析由于缓存仍然有效.
所以,我的问题是:
谢谢和最好的问候,cun83