SERVFAIL在任何查询

我们有一个指向Amazon Elastic Load Balancer实例的CNAME条目。 出于某种原因,我的移动应用程序可以解决这个条目上的WiFi,但不是3G – 我想它是在3G上与不同的名称服务器通话,而不是Wifi,并得到不同的答案。

当通过本地名称服务器完成时,ANY查询看起来像这样(部分编辑保护无辜):

; <<>> DiG 9.6.0-APPLE-P2 <<>> elb.foo.com ANY ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 1051 ;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;elb.foo.com. IN ANY ;; ANSWER SECTION: elb.foo.com. 299 IN CNAME elb-foo-com-12345.us-east-1.elb.amazonaws.com. elb-foo-com-12345.us-east-1.elb.amazonaws.com. 1 IN SOA ns-123.amazon.com. dns.amazon.com. 1288881125 3600 900 7776000 60 elb-foo-com-12345.us-east-1.elb.amazonaws.com. 600 IN NS ns-123.amazon.com. elb-foo-com-12345.us-east-1.elb.amazonaws.com. 60 IN A 174.129.0.0 

但是,当我直接查询名称服务器(@ dns1.registrar-servers.com),我得到以下答案:

 ; <<>> DiG 9.6.0-APPLE-P2 <<>> @dns1.registrar-servers.com elb.foo.com ANY ; (1 server found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 7735 ;; flags: qr rd; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 ;; WARNING: recursion requested but not available ;; QUESTION SECTION: ;elb.foo.com. IN ANY ;; ANSWER SECTION: elb.foo.com. 300 IN CNAME elb-foo-com-12345.us-east-1.elb.amazonaws.com. 

这里有趣的部分是“警告:recursion请求但不可用”和“SERVFAIL”。 我想我需要和我的DNS提供商交谈,但是我的谈话要点是什么?如果我不能解决问题,我该怎么办?

编辑:使用Android“Ping和DNS”应用程序,我试图解决域名。 在3G上,除了CNAME和SOAtypes之外,我得到超时或者“找不到types”。 根据应用程序,我认为使用的DNS服务器是69.78.96.14。

“recursion请求”警告不应该是相关的 – 大多数权威的服务器将继续发表权威的答案,即使recursion被请求,这是dig的默认。

我刚刚使用Google来查找托pipe在相同位置的域,并按预期工作。 然而,尝试一些已知不被托pipe的其他域会产生SERVFAIL

这有点奇怪 – 正常的错误应该被REFUSED ,但是它表明你的域只是没有正确的configuration在服务器上。

令人惊讶的是,这似乎是这个问题:

http://developer.amazonwebservices.com/connect/thread.jspa?threadID=53360

在Verizon的DNS系统pipe道显然无法处理大型CNAME条目和条目超时。 将负载平衡器名称重命名为单个字符修复它。

这是一个更好的解决scheme,在Amazon的Route 53中创build一个别名。当然,它需要你通过他们的DNS。

http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/HowToAliasRRS.html