1

We have a CNAME entry that points to an Amazon Elastic Load Balancer instance. For some reason, my mobile app can resolve this entry on wifi, but not 3G -- I imagine it's talking to a different name server on 3G than Wifi and getting a different answer.

When done through a local name server, an ANY query looks like this (parts redacted to protect the innocent):

; <<>> 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

However, when I query directly against the name server (@dns1.registrar-servers.com) I get the following answer:

; <<>> 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.

The interesting part here is "WARNING: recursion requested but not available" and "SERVFAIL". I imagine I need to talk to my DNS provider, but what should my talking points be and what should I do if I cannot resolve the problem?

EDIT: Using the Android "Ping and DNS" app I tried to resolve the domain name. On 3G, I get timeouts or "type not found" for all but CNAME and SOA types. I think the DNS server used is 69.78.96.14, according to the app.

1
  • please don't redact your domain name
    – Alnitak
    Nov 4, 2010 at 14:48

3 Answers 3

0

The "recursion requested" warning shouldn't be relevant - most authoritative servers will continue to dish out authoritative answers even if recursion was requested, which is the default for dig.

I've just used Google to find a domain that is hosted in the same place and it works as expected. However trying some other domain that's known not to be hosted there produces SERVFAIL.

This is slightly odd - the normal error should be REFUSED, but it indicates that your domain simply isn't correctly provisioned on that server.

0

Amazingly enough, it seems that it was this issue:

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

The plumbing in Verizon's DNS system apparently couldn't handle the large-ish CNAME entry and entries were timing out. Renaming the load balancer name to a single character fixed it.

1
  • 2
    For some reason, a lot of people seem to think that supporting DNS over TCP is optional. It is not. Oct 5, 2011 at 20:34
-1

This is a better solution, create an alias in Amazon's Route 53. Of course it requires that you have your DNS through them.

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

1
  • 1
    Welcome to Server Fault! We really do prefer that answers contain content not pointers to content. Whilst this may theoretically answer the question, it would be preferable to include the essential parts of the answer here, and provide the link for reference.
    – user9517
    Feb 8, 2013 at 20:09

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .