如何在浏览时对“找不到服务器”消息进行故障排除?

Fra*_*k V 4 mac dns osx-snow-leopard macos

在装有 OS X Snow Leopard 的 Mac 上,浏览各种网站时,我的网络浏览器 (Firefox) 不断出现“找不到服务器”错误。为了解决这个问题,我尝试了以下(每个,不止一次):

  • 重置我的路由器(切断电源)
  • 重置我的电缆调制解调器(切断电源;康卡斯特)
  • 通过dscacheutil -flushcache刷新 DNS

我找不到导致问题的原因或解决问题的不同方法。我在路由器上有几台电脑,我没有遇到这个问题。

在某些情况下,只会加载页面的一部分。图形可能丢失或广告无法加载。我几乎可以肯定它与 DNS 有关,但我不确定它可能是 Mac 还是路由器。

任何想法将不胜感激。我会尝试任何合理的建议...

更新:响应对示例站点的请求:

  • www.python.org - 我在这里注意到了很多,但我遵循了很多超链接
  • Stackoverflow.com
  • 谷歌网
  • 天气网
  • Gmail.com
  • 维基百科
  • 我的研究生院网站

它间歇性地发生,我知道它不是该站点,因为我可以在其他计算机上快速访问该站点。此外,如果我刷新足够多——3 到 4 次——,它通常会拉起网站。

更新:根据迄今为止的反馈,我尝试了dig. 我在使用 Ubuntu.com 时遇到了问题,所以我对此进行了挖掘。结果如下:

frank-villasenors-macbook:Documents FrankV$ dig www.ubuntu.com

; <<>> DiG 9.6.0-APPLE-P2 <<>> www.ubuntu.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 60666
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;www.ubuntu.com.            IN  A

;; ANSWER SECTION:
www.ubuntu.com.     432 IN  A   91.189.90.40

;; Query time: 24 msec
;; SERVER: 192.168.1.1#53(192.168.1.1)
;; WHEN: Tue Oct 27 18:31:33 2009
;; MSG SIZE  rcvd: 48
Run Code Online (Sandbox Code Playgroud)

我在一个正在运行的网站(我的博客)上运行了一个,结果如下:

frank-villasenors-macbook:mozilla-central-working FrankV$ dig www.theopensourceu.com

; <<>> DiG 9.6.0-APPLE-P2 <<>> www.theopensourceu.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 37084
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;www.theopensourceu.com.        IN  A

;; ANSWER SECTION:
www.theopensourceu.com. 3600    IN  CNAME   theopensourceu.com.
theopensourceu.com. 3148    IN  A   68.178.232.55

;; Query time: 98 msec
;; SERVER: 192.168.1.1#53(192.168.1.1)
;; WHEN: Tue Oct 27 18:33:40 2009
;; MSG SIZE  rcvd: 70
Run Code Online (Sandbox Code Playgroud)

它们看起来很相似;我认为这并没有告诉我任何事情(现在)......就在提交之前,我刷新了我的Ubuntu.com窗口并且网站出现了......也许dig修复了它?

更新(11/17/2009):我在这里和那里仍然有问题。我注意到的另一件事是,有时 DNS 查找所需的时间比我预期的要长。例如,如果我尝试访问 Superuser.com,Web 浏览器(我通常使用 FireFox)将显示加载屏幕 30 到 45 秒。它可能更长,也可能更短,但有时网站最终会加载,有时我会收到上述错误消息。

如果有问题,我有一个宽带互联网连接(由芝加哥的康卡斯特提供),通常报告的速度约为 5mbps。同样,我只在 MacBook 上看到这个问题。我还有两台基于 Vista 的计算机和一台基于 Ubuntu 的计算机,它们没有出现这个问题。

Arj*_*jan 5

在 Firefox 中,“找不到服务器”告诉您它不知道其 IP 地址。所以,DNS确实有问题。

当您再次遇到此问题时,您可以立即尝试查看其他 DNS 服务器是否会给出不同的结果。因此,不要刷新浏览器,不要刷新缓存,而是运行以下命令(就像您已经做过的那样)来告诉您当前的 DNS 服务器对麻烦域的了解。当您得到以下答案时,测试就失败了,但也许以下内容根本没有给您有用的答复:

挖掘 www.python.org

  [..]
  ;; 回答部分:
  www.python.org。33592 在 82.94.164.162
  [..]
  ;; 查询时间:168 毫秒
  [..]
  ;; 时间:2009 年 11 月 14 日星期六 12:56:54

上述结果可能已被您的路由器/调制解调器缓存,或者被委托给您的 ISP 的 DNS 服务器以获取路由器尚不知道的任何内容。的值Query time可能是结果是否缓存在调制解调器/路由器中的某种指示。因此,再次运行相同的命令(按向上箭头并在终端中返回):

  ;; 查询时间:33 毫秒
  [..]
  ;; 时间:2009 年 11 月 14 日星期六 12:57:14

上面,看到 168 和 33 毫秒,我们可以假设第一个dig命令的结果没有缓存在调制解调器/路由器中,并且询问提供商的 DNS 服务器需要一些额外的时间。第二个请求可能被缓存了。

如果查询时间对您来说也有很​​大差异,那么由于某种原因,您的浏览器或操作系统尚未从 DNS 请求该域,即使您的浏览器试图显示该页面。这可能会告诉您计算机的 DNS 搞砸了(这是有道理的,因为使用相同调制解调器/路由器的其他计算机不会遇到同样的问题)。

接下来,检查OpenDNS 是否会产生其他结果:

挖@208.67.222.222 www.python.org

  [..]
  ;; 回答部分:
  www.python.org。83166 在 82.94.164.162

以上,结果是一样的,但你的里程可能会有所不同。(您只需要比较 IP 地址;当明确使用某些 DNS 服务器时,例如使用@208.67.222.222,那么重复请求的查询时间不会有太大差异。)

那么,每当这种情况再次发生时:让我们知道上述结果吗?或者,只需将您的 Mac 设置为使用 OpenDNS 服务器一段时间,然后查看问题是否仍然存在?

† 无响应的服务器会给您“连接超时”,并且显示该错误可能需要更长的时间。