Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

In the DNS system, everything stems from .. So the top-level domains like .com can also be written as .com.. For example, example.com is short for example.com..

But as I can't perform any sort of look up on . I'm wondering if it actually points to a real machine somewhere. Does it?

share|improve this question
    
Why do you say "I can't perform any sort of look up on ."? As demonstrated by the answer, it is perfectly possible. –  bortzmeyer Oct 21 '12 at 19:25
    
@bortzmeyer Yes it is. I learned about dig from the answer. –  Louis Oct 21 '12 at 19:29

1 Answer 1

up vote 11 down vote accepted

Kind of. The DNS root has root nameservers, which have NS records, so you could actually do a query like this:

falcon@akira ~ $ dig in ns .

; <<>> DiG 9.8.0 <<>> in ns .
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 31632
;; flags: qr rd ra; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;.                              IN      NS

;; ANSWER SECTION:
.                       21026   IN      NS      g.root-servers.net.
.                       21026   IN      NS      k.root-servers.net.
.                       21026   IN      NS      c.root-servers.net.
.                       21026   IN      NS      b.root-servers.net.
.                       21026   IN      NS      d.root-servers.net.
.                       21026   IN      NS      f.root-servers.net.
.                       21026   IN      NS      m.root-servers.net.
.                       21026   IN      NS      h.root-servers.net.
.                       21026   IN      NS      a.root-servers.net.
.                       21026   IN      NS      j.root-servers.net.
.                       21026   IN      NS      l.root-servers.net.
.                       21026   IN      NS      i.root-servers.net.
.                       21026   IN      NS      e.root-servers.net.

;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Sat Oct 20 12:15:07 2012
;; MSG SIZE  rcvd: 228

This data normally comes from what are called glue records, stored in a file on individual DNS servers; when the DNS server goes to resolve a name; this is also how a DNS server gets the address of one to query it.

Those root servers have information on where to find nameservers for the various TLDs, which in turn have information on where to find nameservers for individual domains.

There is not, and likely will never be, an A, AAAA, MX, or other such record for the DNS root ., so querying on that data will of course never succeed. Likewise, though there are name servers (the root servers above) that are authoritative for ., it does not refer to an actual host.

For more on that topic, have a look at how recursive DNS name resolution works. It is quite simple: essentially, a DNS server starts at the root, queries one of the root servers, asks for the record it wants, and gets a referral with an NS record instead. It keeps doing this until it finds the authoritative server for the name it is querying, which is actually able to answer. This process is expensive, so many nameservers cache this response for the TTL (in this example, 21026 seconds).

share|improve this answer
    
That 20126s is what remains of the TTL on the server you're querying; if you repeat the query a few seconds later, you should see those numbers dropping in real time. If you direct the query to, eg, a.root-servers.net, you'll get the raw TTL, which is a somewhat larger figure. –  MadHatter Jun 29 '13 at 8:18

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.