i am trying to set up a reverse zone for my bind dns server, under the subnet my zone datafile looks like this:

   @       IN      SOA     server.example.com.   server.example.com.   (
                            2014101300 ; serial
                            1000       ; refresh
                            180        ; retry
                            180        ; expire
                            10         ; minimum

    65      IN      CNAME   65.64/29
    66      IN      CNAME   66.64/29
    67      IN      CNAME   67.64/29
    68      IN      CNAME   68.64/29

    66      IN      NS      server.example.com.

    65      IN      PTR     router.example.com.
    66      IN      PTR     server.example.com.
    67      IN      PTR     client-1.example.com.
    68      IN      PTR     client-2.example.com.

When i try to load this file it fails and displays the following error: "CNAME and other data". Any ideas to what might have gone wrong??

  • Can you clarify if this supposed to represent a reverse zone for where you are trying to delegate a zone for (based on tools.ietf.org/html/rfc2317) or if this a supposed to represent such a rfc2317-style zone for The included zone data looks like a mix of the two. – Håkan Lindqvist Oct 13 '14 at 17:05

The CNAME records should be in your 0.168.192.IN-ADDR.ARPA. zone. It should also have glue records for the 64/ zone to which you are delegating.

65        IN  CNAME   65.64/ ;qualified
66        IN  CNAME   66.64/29 ;unqualified name
67        IN  CNAME   67.64/29 

The zone for 64/ should contain the rest of the records. If you are doing this on the same DNS server, you can omit the glue and NS records.

See How to Delegate Reverse Subnet Maps records for documentation and examples. RFC 2317, Classless IN-ADDR.ARPA delegation, has already been linked to.

  • Shouldn't it be 65 IN CNAME 65.65/ instead ? – Xavier Lucas Oct 13 '14 at 21:17
  • @XavierLucas In this case yes, the values were copied from the referenced documentation. The 27 or 29 doesn't matter much other than a reference to the size of the delegation. 64/29 indicates a subnet of 8 addresses starting at 64. 64/27 indicates a subnet of 32 addresses starting at 64, which could then be re-delegated as 64/29 and addition subnets. – BillThor Oct 13 '14 at 21:24

The right hand side of a CNAME record should be a canonical name not something that looks like a CIDR address. See for instance RFC 2181 for clarification.

A more logical zone file would be one without all the CNAME RR records you have there.


Your Zonefile lists these entries for 66:

66      IN      CNAME   66.64/29
66      IN      NS      server.example.com.
66      IN      PTR     server.example.com.

So you do not only have a CNAME-record, but an NS and PTR as well, whis is explicitly forbidden. A CNAME "redirects" all queries (MX, A,...), so you may not override these by specifying additional resource records.

Apart from this, your zone file looks a little awkward to me; after the SOA-Record, I'd only expect this kind of entries:

@       IN      NS      server.example.com.

65      IN      PTR     router.example.com.
66      IN      PTR     server.example.com.
67      IN      PTR     client-1.example.com.
68      IN      PTR     client-2.example.com.

By the way, your CNAME's right hand side seems weird to me, "65.64/" will most probably not be resolvable (slashes not being allowed AFAIK), but I'm pretty sure, your setup won't need these CNAMEs.

  • Read RFC2317 – Xavier Lucas Oct 13 '14 at 21:25
  • Thanks for pointing this out, I didn't yet need CIDR reverse delegation yet. Striked this part of my answer. – matt_gnu Oct 14 '14 at 6:46

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.