DNS问题,网站离线。 nslookup定期失败,挖掘/主机一贯的工作

我的网站在一天的大部分时间里一直断断续续,而我正在疯狂地尝试debugging原因。 这似乎是一个DNS问题,因为从我的ISP更改我的DNS服务器到谷歌的8.8.8.8固定它为我的个人浏览器。 但是现在那也是失败了! DownForEveryoneOrJustMe说这是起来,虽然我收到一些用户抱怨,事实并非如此。

nslookup是间歇性的:

 16:04: ~/d/coachup (master) > nslookup www.coachup.com 8.8.8.8 Server: 8.8.8.8 Address: 8.8.8.8#53 Non-authoritative answer: *** Can't find www.coachup.com: No answer 

在整个一天中,有时会返回一个结果,但现在不是这样。 当我用我的一个GoDaddy DNS名称服务器(我认为是权威的?我从他们的whois得到)尝试它时,我得到:

 16:06: ~/d/coachup (master) > nslookup www.coachup.com NS36.DOMAINCONTROL.COM Server: NS36.DOMAINCONTROL.COM Address: 208.109.255.18#53 www.coachup.com canonical name = chiba-9316.herokussl.com. 

另一个更片面:

 16:07: ~/d/coachup (master) > nslookup www.coachup.com NS35.DOMAINCONTROL.COM Server: NS35.DOMAINCONTROL.COM Address: 216.69.185.18#53 *** Can't find www.coachup.com: No answer 16:08: ~/d/coachup (master) > nslookup www.coachup.com NS35.DOMAINCONTROL.COM Server: NS35.DOMAINCONTROL.COM Address: 216.69.185.18#53 www.coachup.com canonical name = chiba-9316.herokussl.com. 

然而,即使反复尝试, dig总是回来的信息:

 16:08: ~/d/coachup (master) > dig @8.8.8.8 www.coachup.com ANY ; <<>> DiG 9.8.3-P1 <<>> @8.8.8.8 www.coachup.com ANY ; (1 server found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 49917 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;www.coachup.com. IN ANY ;; ANSWER SECTION: www.coachup.com. 2815 IN CNAME chiba-9316.herokussl.com. ;; Query time: 32 msec ;; SERVER: 8.8.8.8#53(8.8.8.8) ;; WHEN: Wed Dec 18 16:09:25 2013 ;; MSG SIZE rcvd: 68 16:09: ~/d/coachup (master) > dig @NS35.DOMAINCONTROL.COM www.coachup.com ANY ; <<>> DiG 9.8.3-P1 <<>> @NS35.DOMAINCONTROL.COM www.coachup.com ANY ; (1 server found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 58865 ;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 0 ;; WARNING: recursion requested but not available ;; QUESTION SECTION: ;www.coachup.com. IN ANY ;; ANSWER SECTION: www.coachup.com. 3600 IN CNAME chiba-9316.herokussl.com. ;; AUTHORITY SECTION: coachup.com. 3600 IN NS ns36.domaincontrol.com. coachup.com. 3600 IN NS ns35.domaincontrol.com. ;; Query time: 309 msec ;; SERVER: 216.69.185.18#53(216.69.185.18) ;; WHEN: Wed Dec 18 16:09:39 2013 ;; MSG SIZE rcvd: 120 

host也一致地工作。

一些问题:

  • 为什么dighost一直工作,但不是nslookup
  • 我如何确定我的权威名称服务器。 whois在那里工作吗?

我的工作理论是,GoDaddy域名服务器一直很脆弱,一旦Google 8.8.8.8要求访问www.coachup.com并得到一个不答复的消息,它就消极地caching了一段时间。 这似乎是合理的吗? 但是,它只有nslookup而不是dighost

此外, Heroku状态显示他们昨天正在做“DNS维护”。 这可能导致这种不知何故? 它说现在是绿色的。

*为什么挖掘和主机工作一致,但不是nslookup?

因为当你跑的时候,你使用了“ANY”这个选项,这意味着你不仅仅在寻找一个“A”logging,而且还要寻找诸如CNAME之类的其他logging。 nslookup正在寻找“A”的logging。 有趣的是,当我做'挖@ 8.8.8.8 http://www.coachup.com'我没有答案,但当我做'挖@ 8.8.8.8 http://www.coachup.com cname'我得到了回应。

*如何确定我的权威名称服务器。 Whois在那里工作吗?

whois主要是一个pipe理数据库,确定你的实际名称服务器使用'dig + trace http://www.coachup.com&apos; –

 [root @ kauai〜]#dig + trace www.coachup.com

 ;  > DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6_4.6>追踪www.coachup.com
 ;; 全局选项:+ cmd
 。  3600000在NS G.ROOT-SERVERS.NET。
 。  3600000在NS K.ROOT-SERVERS.NET。
 。  3600000在NS D.ROOT-SERVERS.NET。
 。  3600000在NS J.ROOT-SERVERS.NET。
 。  3600000在NS M.ROOT-SERVERS.NET。
 。  3600000在NS C.ROOT-SERVERS.NET。
 。  3600000在NS I.ROOT-SERVERS.NET。
 。  3600000在NS H.ROOT-SERVERS.NET。
 。  3600000在NS F.ROOT-SERVERS.NET。
 。  3600000在NS A.ROOT-SERVERS.NET。
 。  3600000在NS B.ROOT-SERVERS.NET。
 。  3600000在NS E.ROOT-SERVERS.NET。
 。  3600000在NS L.ROOT-SERVERS.NET。
 ;; 在18毫秒内从192.168.10.109#53(192.168.10.109)收到512字节

 COM。  172800在NS j.gtld-servers.net。
 COM。  172800在NS h.gtld-servers.net。
 COM。  172800在NS f.gtld-servers.net。
 COM。  172800在NS d.gtld-servers.net。
 COM。  172800在NS a.gtld-servers.net。
 COM。  172800在NS l.gtld-servers.net。
 COM。  172800在NS k.gtld-servers.net。
 COM。  172800在NS g.gtld-servers.net。
 COM。  172800在NS b.gtld-servers.net。
 COM。  172800在NS m.gtld-servers.net。
 COM。  172800在NS c.gtld-servers.net。
 COM。  172800在NS i.gtld-servers.net。
 COM。  172800在NS egtld-servers.net。
 ;; 在133 ms内从192.33.4.12#53(192.33.4.12)收到505个字节

 coachup.com。  172800在NS ns35.domaincontrol.com。
 coachup.com。  172800在NS ns36.domaincontrol.com。
 ;; 在138毫秒内从192.54.112.30#53(192.54.112.30)收到117个字节

 www.coachup.com。  3600在CNAME chiba-9316.herokussl.com。
 ;; 在33ms内从208.109.255.18#53(208.109.255.18)收到68个字节

您的权威名称服务器位于该部分 –

 coachup.com。  172800在NS ns35.domaincontrol.com。
 coachup.com。  172800在NS ns36.domaincontrol.com。

*我怀疑问题是用Heroku,谷歌和其他一些DNS服务器caching不存在的logging响应,之后,他们开始从负面caching响应。 一旦负面的caching过期,它应该工作。 我的猜测是,仍然是猜测,你的权威名字服务器确实提供了cname响应,但是google dns服务器不能完成'chiba-9316.herokussl.com。'的分辨率,假设Herok有问题。

为了testing这个,我运行了几个公共DNS服务器上的挖掘 – 我从网站“ http://pcsupport.about.com/od/tipstricks/a/free-public-dns-servers.htm ”得到。 所有回应的CNAME,但一些包括谷歌没有回应“A”logging查询 –

请求“A”logging。 注意:谷歌DNS是'8.8.8.8'


 $(awk'{print $ 2}'/ tmp / dnsservers)中的[$ daniel @ kauai〜] $ 做echo == $ dns ===; 挖@ $ dns www.coachup.com。  +简短;完成
 == 209.244.0.3 ===
 chiba-9316.herokussl.com。
 elb002794-1867396571.us-east-1.elb.amazonaws.com。
 50.16.224.113
 23.23.124.44
 23.23.101.90
 == 8.8.8.8 ===
 == 8.26.56.26 ===
 chiba-9316.herokussl.com。
 elb002794-1867396571.us-east-1.elb.amazonaws.com。
 23.23.124.44
 23.23.101.90
 50.16.224.113
 == 208.67.222.222 ===
 chiba-9316.herokussl.com。
 elb002794-1867396571.us-east-1.elb.amazonaws.com。
 50.16.224.113
 23.23.101.90
 23.23.124.44
 == 156.154.70.1 ===
 chiba-9316.herokussl.com。
 elb002794-1867396571.us-east-1.elb.amazonaws.com。
 23.23.124.44
 23.23.101.90
 50.16.224.113
 == 198.153.192.40 ===
 chiba-9316.herokussl.com。
 elb002794-1867396571.us-east-1.elb.amazonaws.com。
 23.23.101.90
 50.16.224.113
 23.23.124.44
 == 81.218.119.11 ===
 chiba-9316.herokussl.com。
 elb002794-1867396571.us-east-1.elb.amazonaws.com。
 23.23.124.44
 23.23.101.90
 50.16.224.113
 == 195.46.39.39 ===
 chiba-9316.herokussl.com。
 elb002794-1867396571.us-east-1.elb.amazonaws.com。
 50.16.224.113
 23.23.101.90
 23.23.124.44
 == 23.90.4.6 ===
 chiba-9316.herokussl.com。
 elb002794-1867396571.us-east-1.elb.amazonaws.com。
 23.23.101.90
 23.23.124.44
 50.16.224.113
 == 216.146.35.35 ===
 chiba-9316.herokussl.com。
 elb002794-1867396571.us-east-1.elb.amazonaws.com。
 50.16.224.113
 23.23.101.90
 23.23.124.44
 == 89.233.43.71 ===
 chiba-9316.herokussl.com。
 elb002794-1867396571.us-east-1.elb.amazonaws.com。
 23.23.101.90
 50.16.224.113
 23.23.124.44
 == 74.82.42.42 ===
 == 109.69.8.51 ===

请求CNAME查询 –


 $(awk'{print $ 2}'/ tmp / dnsservers)中的[$ daniel @ kauai〜] $ 做echo == $ dns ===; 挖@ $ dns www.coachup.com。  +短cname;完成
 == 209.244.0.3 ===
 chiba-9316.herokussl.com。
 == 8.8.8.8 ===
 chiba-9316.herokussl.com。
 == 8.26.56.26 ===
 chiba-9316.herokussl.com。
 == 208.67.222.222 ===
 chiba-9316.herokussl.com。
 == 156.154.70.1 ===
 chiba-9316.herokussl.com。
 == 198.153.192.40 ===
 chiba-9316.herokussl.com。
 == 81.218.119.11 ===
 chiba-9316.herokussl.com。
 == 195.46.39.39 ===
 chiba-9316.herokussl.com。
 == 23.90.4.6 ===
 chiba-9316.herokussl.com。
 == 216.146.35.35 ===
 chiba-9316.herokussl.com。
 == 89.233.43.71 ===
 chiba-9316.herokussl.com。
 == 74.82.42.42 ===
 chiba-9316.herokussl.com。
 == 109.69.8.51 ===
 chiba-9316.herokussl.com。