这是我的 C:\WINDOWS\system32\drivers\etc\hosts 文件:
127.0.0.1 localhost
192.168.100.1 router
测试它:
C:\>ping router
Ping request could not find host router. Please check the name and try again.
C:\>ping 192.168.100.1
Pinging 192.168.100.1 with 32 bytes of data:
Reply from 192.168.100.1: bytes=32 time<1ms TTL=64
Reply from 192.168.100.1: bytes=32 time<1ms TTL=64
Reply from 192.168.100.1: bytes=32 time<1ms TTL=64
Reply from 192.168.100.1: bytes=32 time<1ms TTL=64
Ping statistics for 192.168.100.1:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
它以前能用。我以前在那里做过多次重定向。但几周前它就停止工作了。
我已经检查了所有明显的事实:
- 删除了 hosts 文件,并用这个简单的文件替换,仅用于测试
- hosts 文件中没有无效字符
- hosts 文件上没有文件扩展名
- 不使用 TAB 分隔 IP 和主机名(尝试使用正好 8 个空格)
- ipconfig /flushdns
- 重新启动 DNS 客户端服务
- 该文件的权限与 DNS 客户端的权限相匹配(我也尝试在 hosts 文件、“etc”文件夹和“drivers”文件夹中对“所有人”都“允许”)。
- 尝试将 NETWORK SERVICE 用户和 LOCAL SERVICE 用户添加到此文件权限
- 此特定机器上未运行任何防病毒软件/垃圾邮件软件/恶意软件/常驻防护程序
- 尝试使用 UNIX 和 DOS EOL 标记检查 hosts 文件
- 重启机器
我错过了什么?
答案1
根据您所做的操作以及您检查过的事项列表,我认为存在某种系统故障,因为看起来您做了正确的事情,请尝试从命令行执行“SFC /SCANNOW”以测试系统问题。
答案2
下次,请检查注册表中的 \HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\DataBasePath,查看主机文件的位置是否正确,并且与 Windows 假定的位置是否相同。
答案3
这是 hosts 文件不起作用的问题,还是机器上根本没有 DNS 解析(ping、IE 等)的问题?
如果是后者,nslookup
有效吗?
如果是的话,看看当 DNS 和 ping 失败但 nslookup 有效时在我的网站上查看详细答案。
简短的回答是,在尝试了各种各样的方法之后,我最终得到了“Winsock XP Fix”,这是某人在几年前构建的,因为他注意到与 WinSock 相关的注册表项在系统之间实际上是相同的,而且有时它们最终会被损坏。
答案4
sfc /scannow
对我来说不起作用,但安装这个.msi 确实有效:http://support.microsoft.com/kb/972034