任何查询均失败

任何查询均失败

我们有一个指向 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.

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

编辑:我尝试使用 Android“Ping 和 DNS”应用来解析域名。在 3G 上,除了 CNAME 和 SOA 类型外,其他所有类型的域名都会超时或显示“类型未找到”。根据该应用,我认为使用的 DNS 服务器是 69.78.96.14。

答案1

“请求递归”警告不应该相关 - 即使请求了递归,大多数权威服务器仍将继续提供权威答案,这是默认设置dig

我刚刚使用 Google 查找了托管在同一位置的域名,结果如预期一样。但是尝试其他已知不托管在该位置的域名时,会出现SERVFAIL

这有点奇怪 - 正常错误应该是REFUSED,但它表明您的域名在该服务器上没有正确配置。

答案2

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

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

Verizon 的 DNS 系统中的管道显然无法处理较大的 CNAME 条目,并且条目超时。将负载均衡器名称重命名为单个字符解决了这个问题。

答案3

这是一个更好的解决方案,在 Amazon 的 Route 53 中创建一个别名。当然,它要求您通过他们获得您的 DNS。

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

相关内容