我有一个ASP.NET应用程序,我经常使用它通过HttpWebRequest读取网页的内容。远程地址没有问题,我的应用程序总是工作得很好。
虽然我不做任何更改,但有时(大约一天一次)我会收到以下错误:
the remote name could not be resolved.
为什么以前解析的DNS名称有时无法解析?
我们的客户使用以下域<userid>.sip.teltel.io对Google进行了相当多的域检查,但他们经常失败。对其他人来说,就像云彩一样,它总是成功的。
当我们在8.8.8.8的循环中运行nslookup时,大约80%的时间Google无法解决问题。到1.1.1.1,它总是成功的。参见下面一个失败的示例:
请求:
while :
do
nslookup 7157599388.sip.teltel.io 8.8.8.8
done
响应:
Server: 8.8.8.8
Address: 8.8.8.8#53
** server can't fin
每当我在Windows 7上运行cygwin内部的ssh时,就会得到错误:
ssh: Could not resolve hostname ... Non-recoverable failure in name resolution
lost connection
如果我在错误发生后立即尝试相同的命令,它可以正常工作。如果我等了太久再试一次,我就会再次犯错误。
这种情况在XP上不会发生。你知道为什么ssh总是第一次失败吗?
我在一台主机上运行docker容器,所有这些容器都在一个网桥网络中。我正在使用rsync等工具在它们之间传输数据。我有CamelCase容器名称。例如,我可以通过REST从Java应用程序连接到具有这些名称的其他运行容器,但是rsync/ssh无法处理它们。
root@container-id:/# rsync -av /sourceFolder user@CamelCaseContainer:/targetFolder
ssh: Could not resolve hostname camelcasecontainer: Name or service not known
rsync: c
Ubuntu 12.10
我会解释第一个问题。有时,当我加载一个网页,它永远不会完成加载,它说不能到达服务器或类似的东西。当我点击那个网站时,终端说它无法解析主机名。因此,我尝试了谷歌的DNS服务器,但没有运气。这很奇怪,因为我从来没有在Windows 7中遇到过这个问题。
cat /etc/resolv.conf
它想出了如下结论:
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL