I have two DNS servers running. With internal addresses it is no problem to look them up both ways:

user@ns1:~$ man named.conf
user@ns1:~$ host vh01
vh01.example.de has address
user@ns1:~$ host domain name pointer vh01.example.de.


user@ns1:~$ host google.de
google.de has address
google.de has address
google.de has address
google.de has address
google.de has address
google.de has address
google.de mail is handled by 10 google.com.s9b2.psmtp.com.
google.de mail is handled by 10 google.com.s9a1.psmtp.com.
google.de mail is handled by 10 google.com.s9a2.psmtp.com.
google.de mail is handled by 10 google.com.s9b1.psmtp.com.
user@ns1:~$ host
Host not found: 2(SERVFAIL)

I'd like to have something like:

user@ns1:~$ host
Using domain server:
Aliases: domain name pointer bru01s01-in-f103.1e100.net.

My server is configured to contact root dns-servers for unknown zones. I am assuming this working, since forward lookups are delegated if he himself doesn't know the answer. Why does it not delegate if it doesn't know about an IP address?

Any idea where I could have something wrong with my configuration?

As stated, I tried:

user@vh01:~$ dig +trace ptr
; > DiG 9.7.3 > +trace ptr
;; global options: +cmd
.                       518400  IN      NS      m.root-servers.net.
.                       518400  IN      NS      e.root-servers.net.
.                       518400  IN      NS      h.root-servers.net.
.                       518400  IN      NS      l.root-servers.net.
.                       518400  IN      NS      f.root-servers.net.
.                       518400  IN      NS      k.root-servers.net.
.                       518400  IN      NS      b.root-servers.net.
.                       518400  IN      NS      g.root-servers.net.
.                       518400  IN      NS      j.root-servers.net.
.                       518400  IN      NS      d.root-servers.net.
.                       518400  IN      NS      c.root-servers.net.
.                       518400  IN      NS      i.root-servers.net.
.                       518400  IN      NS      a.root-servers.net.
;; Received 244 bytes from in 1 ms

arpa.                   172800  IN      NS      a.root-servers.net.
arpa.                   172800  IN      NS      g.root-servers.net.
arpa.                   172800  IN      NS      c.root-servers.net.
arpa.                   172800  IN      NS      i.root-servers.net.
arpa.                   172800  IN      NS      e.root-servers.net.
arpa.                   172800  IN      NS      k.root-servers.net.
arpa.                   172800  IN      NS      f.root-servers.net.
arpa.                   172800  IN      NS      m.root-servers.net.
arpa.                   172800  IN      NS      h.root-servers.net.
arpa.                   172800  IN      NS      d.root-servers.net.
arpa.                   172800  IN      NS      l.root-servers.net.
arpa.                   172800  IN      NS      b.root-servers.net.
;; Received 509 bytes from in 18 ms

in-addr.arpa.           172800  IN      NS      a.in-addr-servers.arpa.
in-addr.arpa.           172800  IN      NS      b.in-addr-servers.arpa.
in-addr.arpa.           172800  IN      NS      c.in-addr-servers.arpa.
in-addr.arpa.           172800  IN      NS      d.in-addr-servers.arpa.
in-addr.arpa.           172800  IN      NS      e.in-addr-servers.arpa.
in-addr.arpa.           172800  IN      NS      f.in-addr-servers.arpa.
;; Received 421 bytes from in 7 ms

209.in-addr.arpa.       86400   IN      NS      t.arin.net.
209.in-addr.arpa.       86400   IN      NS      u.arin.net.
209.in-addr.arpa.       86400   IN      NS      v.arin.net.
209.in-addr.arpa.       86400   IN      NS      w.arin.net.
209.in-addr.arpa.       86400   IN      NS      x.arin.net.
209.in-addr.arpa.       86400   IN      NS      y.arin.net.
209.in-addr.arpa.       86400   IN      NS      z.arin.net.
209.in-addr.arpa.       86400   IN      NS      dill.arin.net.
;; Received 200 bytes from in 325 ms

146.85.209.in-addr.arpa. 86400  IN      NS      ns4.google.com.
146.85.209.in-addr.arpa. 86400  IN      NS      ns1.google.com.
146.85.209.in-addr.arpa. 86400  IN      NS      ns2.google.com.
146.85.209.in-addr.arpa. 86400  IN      NS      ns3.google.com.
;; Received 127 bytes from in 100 ms 86400 IN   PTR     bru01s01-in-f103.1e100.net.
;; Received 85 bytes from in 5 ms

It looks good to me, but why does

user@vh01:~$ host
Host not found: 2(SERVFAIL)

fail? But does not, if I query an address handled by my own server?

user@vh01:~$ host domain name pointer vh01.example.de.

bumped to the homepage by Community 2 days ago

This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.

  • Try dig +trace ptr to try and find out where it's failing. – Hyppy May 19 '11 at 14:41
  • It seems not to fail at all – tps800 May 19 '11 at 15:27

If you only have one public IP address, you will have to ask your ISP to create the PTR record in their reverse DNS.

If you have a range of public IP addresses, your ISP will need to provide a reverse DNS forward to your DNS servers for the PTR records, and you need to establish a reverse DNS zone for these IP addresses. This can be done either as individual CNAME records (for less than 256 IP addresses) or as a complete subnet forward.

  • I may be reading it wrong, but I think he's trying to wonder why PTR lookup is failing to resolve anything from his server, since the failure he's posting is for google.de's address. – Hyppy May 19 '11 at 15:29
  • That is not my problem. I do know about this fact. It's my own server not handling ptr lookups, instead handling me the servers DNS-name giving SERVFAIL for all not local addresses. I'd like it to give back what everyone expects: the name, not an error. – tps800 May 19 '11 at 15:45

DNS forward lookup, will be handled by your DNS, but by default ISP is not delegating any range toward your nameserver, thus no reverse traffic will be resolved by your nameserver.

In order to setup RDNS and resolve those type of records by your nameserver,you need to ask your ISP to delegate a range to your nameserver,but usually, an ISP or hosting company will only delegate the reverse DNS if you have /24 (a full class C) or more.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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