我的(Windows XP,Professional,v2002,SP3)工作站完全忽略了我的 hosts 文件。
这是我的主机文件中的代码:
127.0.0.1 localhost
172.17.1.107 wiki
但是,当我打开浏览器并在 URL 栏中输入“wiki”并按“Enter”键时,它会将我带到我的 wiki 的旧位置,就像它出现在我的旧 hosts 文件中一样:
10.0.36.100 wiki
尽管我已将旧的主机文件重命名为“hosts_full”并将其移动到我的桌面(因此,完全脱离了 etc 文件夹)。
到目前为止我已采取以下步骤:
- 重启(3次)
ipconfig /flushdns
从命令行运行- 从命令行运行
ping wiki
,响应是
Reply from 10.0.36.100: bytes=32 time=1ms TTL=63
我已经清除了我能想到的所有缓存(IE、FF)。
我的机器上运行着一个 ISA 防火墙客户端,我尝试了禁用和启用它的所有方法。事实上,防火墙使用旧的 hosts 文件来解析自身:
10.0.2.126 isa3
即使新的 hosts 文件不包含该行,它仍然可以正常工作。
有什么想法吗?提前感谢您的帮助!
答案1
您是否使用代理服务器进行浏览?如果是,则可能是代理服务器正在为您解析 DNS 名称。
这就是为什么在命令行中使用 ping 和在浏览器中获得的结果不同。
流量被拦截和篡改的可能性很小。可能性非常小...
答案2
防火墙对 Ping 有响应吗?
这与您提供的 IP 地址相差甚远,但当您直接 ping 新 IP 时会发生什么,这会起作用吗?
我问的原因是,如果 10.0.36.100 恰好是一个响应 ping 的防火墙,它就会从那里回复,即使你正在 ping 一个不同的 IP……
Hosts 文件很大吗?
另外,我和另一位 IT 人员也遇到过同样的问题,窗口主机文件中有很多空白行,然后是下面的条目——我们没有注意到滚动条:-)
hosts文件真的是hosts文件吗?
最后,查看注册表并确保主机文件位于您认为的位置,以下键指定实际主机文件的位置:
\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\DataBasePath
答案3
尝试通过“开始”->“运行”刷新您的 DNS 缓存...
ipconfig /flushdns
还可以尝试停用网络适配器的 NetBIOS 和 LMHOSTS。您可以在所用网络连接的 TCP/IP 属性中的高级 -> WINS 下更改设置。
答案4
根据http://technet.microsoft.com/en-us/library/bb727005.aspx它可能位于您的本地 NETBIOS 名称缓存中。您可以使用统计信息系统查询/清除此缓存。
nbtstat /c
显示可以使用以下方法清除的缓存条目
nbtstat /R