为什么基于 Microsoft 的程序无法解析主机名?

为什么基于 Microsoft 的程序无法解析主机名?

当我通过 IP 访问 Google 时,我得到:

在此处输入图片描述

当我通过域名访问 Google 时,我得到:

在此处输入图片描述

Windows Live Messenger 已确认这一点:

在此处输入图片描述

但是,Firefox 运行正常:

在此处输入图片描述

当我进行 DNS 查找时,我得到以下结果:

C:\Windows\system32>nslookup google.com
Server:  google-public-dns-b.google.com
Address:  8.8.4.4

Non-authoritative answer:
Name:    google.com
Addresses:  74.125.79.104
          74.125.79.99
          74.125.79.147

但是,通过名称 ping 操作失败(但通过 IP ping 操作可以):

C:\Windows\system32>ping google.com
Ping request could not find host google.com. Please check the name and try again.

C:\Windows\system32>ping 74.125.79.104

Pinging 74.125.79.104 with 32 bytes of data:
Reply from 74.125.79.104: bytes=32 time=23ms TTL=52

Ping statistics for 74.125.79.104:
    Packets: Sent = 1, Received = 1, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 23ms, Maximum = 23ms, Average = 23ms

这些是我的设置,在我看来是正确的:

Wireless LAN adapter Wireless Network Connection 4:

   Connection-specific DNS Suffix  . : WIJSMAN
   Description . . . . . . . . . . . : Intel(R) WiFi Link 5100 AGN
   Physical Address. . . . . . . . . : 00-16-EA-5E-58-CE
   DHCP Enabled. . . . . . . . . . . : Yes
   Autoconfiguration Enabled . . . . : Yes
   IPv4 Address. . . . . . . . . . . : 192.168.1.178(Preferred)
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Lease Obtained. . . . . . . . . . : Friday, June 17, 2011 7:06:49 PM
   Lease Expires . . . . . . . . . . : Saturday, June 18, 2011 7:07:06 PM
   Default Gateway . . . . . . . . . : 192.168.1.1
   DHCP Server . . . . . . . . . . . : 192.168.1.1
   DNS Servers . . . . . . . . . . . : 8.8.4.4
   NetBIOS over Tcpip. . . . . . . . : Enabled

我尝试了以下方法:

  • 禁用所有防火墙和病毒扫描程序。
  • 重置 中的所有内容,netsh等等......winsockint ip
  • 完全重置 Internet Explorer 的设置,包括个人设置。
  • 启动我电脑上的每一项服务,以确保我没有遗漏任何关键的东西。
  • 安装和卸载了许多网络设备篡改程序,如 VMWare、VirtualBox……
  • 运行sfc /scannow,检查是否有东西被损坏。

我进行了大量研究,但尚未发现基于 Microsoft 的程序哪里出错,而 Firefox、Jing 和 mIRC 等其他程序却运行正常。您有什么想法吗?

答案1

因此,我花了半天时间研究我发现的所有错误的解决方案。什么都没起作用!

由于配置存储在注册表中,我决定进行回滚。但是怎么做呢?我首先查找了失败的控制集注册表项是什么,因为失败应该很少见...

HKEY_LOCAL_MACHINE\SYSTEM\Select\Failed

看看内容,这是几周前的事了,但幸运的是,我当时要考试,所以并没有对密钥做太多改动HKEY_LOCAL_MACHINE\SYSTEM\*ControlSet*。虽然当时我安装了另一张无线网卡和 Comodo 防火墙,但我事先就知道这不会正常工作。

手动比较并没有起到什么作用,所以我决定将失败的控制集导入当前。启动后,我不得不移除所有网卡,然后我看到只有我的有线连接工作正常。我又尝试了很多方法,但总是代码 1错误。删除驱动程序并完全卸载均无效。因此,我使用了一个我知道过去曾用于解决另一个网络问题的卑鄙伎俩……

我打开笔记本电脑,移除了无线网卡然后我去了移除所有真的隐藏设备。重新启动以确保它完全消失。重新插入无线网卡并突然,互联网

现在我可以比较和转变过去几周所做的更改,这更容易...:)

答案2

禁用 ipv6 也许值得一试。

答案3

Tom Wijsman,排除连通性故障的正确顺序是(我之所以详细说明这一点,是因为我不确定您到目前为止做了什么,而且我并不是专门为您写这篇文章):

对于有问题的计算机,我们假设本地 IP 为 192.168.1.100、子网掩码为 255.255.255.0、网关为 192.168.1.1。为了便于解释,192.168.1.200 是另一台已知可以响应 ping 的本地计算机。我们正在寻找回复。

开始之前,请关闭软件防火墙。对于家庭用户,在 TCP/IPv4 属性 > 高级 > DNS 中,通常只需选中“附加主要和连接特定的 DNS 后缀”和“附加主要 DNS 后缀的父后缀”即可,这是默认设置。

  1. ping 127.0.0.1(本地主机)
  2. ping 192.168.1.100 (前两个参数表示是否可以与自己通信)
  3. ping 192.168.1.200(可以内部与其他主机通信)
  4. ping 192.168.1.1(它能否在内部与其他主机通信,尤其是将转发到互联网的主机)
  5. Ping 8.8.8.8 或任何其他外部 IP 地址(证明您可以访问互联网)
  6. ping www.google.com(测试 DNS 解析。如果失败,您可以测试 www.cisco.com 以确保它不是主机。如果您到了这一步,仍然无法使用浏览器或其他应用程序,则说明问题出在应用程序上,而不是 TCP/IP 上,因此没有理由篡改 TCP/IP 设置)

此时,我通常会在“工具”>“Internet 选项”>“连接”>“LAN 设置”中检查 IE 的代理服务器,以确保未选中任何内容。对于 Firefox,它位于“工具”>“选项”>“高级”>“网络”>“连接”>“设置”中,并确保将其设置为“无代理”。

如果一切正常,请重新打开防火墙并进行测试。如果失败,则表明防火墙存在问题。

如果那里什么都没看到,我就开始怀疑那里可能有隐藏的代理,是病毒放置的。Hitman Pro 可以找到隐藏的代理,但我还会检查 IE 注册表中的这个键:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet 设置

查看右侧窗格中是否有键“ProxyServer”,如果有,则将其删除。

这是 Firefox 的版本,它存储在以下文件中:

C:\Documents and Settings\用户名\Application Data\Mozilla\Firefox\Profiles\RandomProfileName\perf.js

我不认为您的问题与 HOSTS 文件有关,因为这是 TCP/IP 在其自己的 DNS 缓存之后检查的第一件事,并且会影响所有 DNS 查询。

让我知道您取得了多大进展,以及您在哪些步骤中失败了,我会尽力进一步指导您。

http://support.microsoft.com/kb/172218

答案4

我赞同禁用 ipv6 的建议,但如果这不起作用,我下一步将尝试在命令提示符下输入以下内容:ipconfig /flushdns

相关内容