调试DNS问题

时间:2011-07-29 10:43:00

标签: ruby-on-rails heroku dns

我遇到DNS问题,至少有几个客户无法点击我们的网站只使用Chrome报告"此网页不可用" (通过http或https),但DNS和网络配置不是我的强项。

http://www.downforeveryoneorjustme.com/说它已经出现了,我知道它适用于我们的一些客户,因为我有分析显示他们登录,但我担心这个问题有多广泛。< / p>

我的所有DNS设置/ CNAME / SSL内容已经存在几周了,所以我认为它不应该是DNS传播问题。

如何在不访问受影响的计算机/网络的情况下如何调试此问题?我很高兴要求我的客户运行一些shell命令并将结果发送给我(但我显然不想太麻烦他们)但我不确定哪些命令最有用。

更新 为了回应@ lenary的回答,chrome中的具体错误是:

Error 105 (net::ERR_NAME_NOT_RESOLVED)

3 个答案:

答案 0 :(得分:4)

首先,如何使用host。这对于调试DNS来说是一个很好的工具,只有它的输出比dig更容易阅读和理解(两者都能做同样的工作)。

要查询您的dns记录在最后的内容,请执行以下操作(以lenary.co.uk为例):

$ host lenary.co.uk
lenary.co.uk has address 207.97.227.245
lenary.co.uk mail is handled by 20 ASPMX4.GOOGLEMAIL.COM.
lenary.co.uk mail is handled by 20 ASPMX5.GOOGLEMAIL.COM.
lenary.co.uk mail is handled by 0 aspmx.l.google.COM.
lenary.co.uk mail is handled by 10 ALT1.aspmx.l.google.COM.
lenary.co.uk mail is handled by 10 ALT2.aspmx.l.google.COM.
lenary.co.uk mail is handled by 20 ASPMX2.GOOGLEMAIL.COM.
lenary.co.uk mail is handled by 20 ASPMX3.GOOGLEMAIL.COM.

这有助于调试内容。如果您在www子域中使用CNAME,它将告诉您别名的位置。 “有地址”只是意味着它是A记录。

这是第一步。如果它适合您,现在检查世界各地的几个主要DNS服务器(您可能需要为它们研究IP /主机名)。

要检查特定服务器,请执行以下操作(我选择了8.8.8.8,由谷歌运行的dns服务器)。我还使用-t <type>指定了我正在寻找的记录类型,因此输出的详细程度较低。您可能希望A为您的主域名,CNAME为子域名,如“www”。

$ host -t A lenary.co.uk 8.8.8.8
Using domain server:
Name: 8.8.8.8
Address: 8.8.8.8#53
Aliases: 

lenary.co.uk has address 207.97.227.245

这应该允许您检查足够的服务器以验证信息是否正确。

答案 1 :(得分:1)

确切地检查他们得到的错误也是值得的。 “此网页不可用”似乎是Chrome可能遇到的相当多(至少4个)网络错误的错误消息,其中只有1个与DNS有关。

也许请点击此处的人:http://www.google.com/support/chrome/bin/answer.py?hl=en-GB&answer=117805或尝试进一步诊断,包括错误编号/常数(通过常数我的意思是net::ERR_FAILED

答案 2 :(得分:1)

如果您安装了dig(在Linux和OS X上常用),您需要先检查域名A记录的IP地址:

dig A yourdomain.com +noall +answer

如果要通过名称服务器强制查询,请添加@标志:

dig @your.ns.ip yourdomain.com +noall +answer