# address03.xa
address03.xa:53 {
    bind 127.11.3.21                # ns1
    bind fda1:b2:c3::127:11:3:21    # ns1
    bind 127.11.3.22                # ns2
    bind fda1:b2:c3::127:11:3:22    # ns2
    log
    file Address-TP/address03/address03.xa.zone address03.xa
}

# reverse-aliases.address03.xa
reverse-aliases.address03.xa:53 {
    bind 127.11.3.31                # ns1.child
    bind fda1:b2:c3::127:11:3:31    # ns1.child
    bind 127.11.3.32                # ns2.child
    bind fda1:b2:c3::127:11:3:32    # ns2.child
    log
    file Address-TP/address03/reverse-aliases.address03.xa.zone reverse-aliases.address03.xa
}

# 3.11.127.in-addr.arpa
3.11.127.in-addr.arpa:53 {
    bind 127.11.3.21                # ns1
    bind fda1:b2:c3::127:11:3:21    # ns1
    bind 127.11.3.22                # ns2
    bind fda1:b2:c3::127:11:3:22    # ns2
    log
    file Address-TP/address03/3.11.127.in-addr.arpa.zone 3.11.127.in-addr.arpa

    acl 44.3.11.127.in-addr.arpa {
        drop
    }
    template IN ANY 45.3.11.127.in-addr.arpa {
        rcode SERVFAIL
    }
}

# 3.0.0.0.1.1.0.0.7.2.1.0.0.0.0.0.3.c.0.0.2.b.0.0.1.a.d.f.ip6.arpa
3.0.0.0.1.1.0.0.7.2.1.0.0.0.0.0.3.c.0.0.2.b.0.0.1.a.d.f.ip6.arpa:53 {
    bind 127.11.3.21                # ns1
    bind fda1:b2:c3::127:11:3:21    # ns1
    bind 127.11.3.22                # ns2
    bind fda1:b2:c3::127:11:3:22    # ns2
    log
    file Address-TP/address03/3.0.0.0.1.1.0.0.7.2.1.0.0.0.0.0.3.c.0.0.2.b.0.0.1.a.d.f.ip6.arpa.zone 3.0.0.0.1.1.0.0.7.2.1.0.0.0.0.0.3.c.0.0.2.b.0.0.1.a.d.f.ip6.arpa

    acl 4.4.0.0.3.0.0.0.1.1.0.0.7.2.1.0.0.0.0.0.3.c.0.0.2.b.0.0.1.a.d.f.ip6.arpa {
        drop
    }
    template IN ANY 5.4.0.0.3.0.0.0.1.1.0.0.7.2.1.0.0.0.0.0.3.c.0.0.2.b.0.0.1.a.d.f.ip6.arpa {
        rcode SERVFAIL
    }
}

### ALL-NS-HAVE-PTR-1
# all-ns-have-ptr-1.address03.xa.
all-ns-have-ptr-1.address03.xa:53 {
    bind 127.11.3.31                # ns1.child
    bind fda1:b2:c3::127:11:3:31    # ns1.child
    bind 127.11.3.32                # ns2.child
    bind fda1:b2:c3::127:11:3:32    # ns2.child
    log
    file Address-TP/address03/all-ns-have-ptr-1.address03.xa.zone all-ns-have-ptr-1.address03.xa
}

### ALL-NS-HAVE-PTR-2
# all-ns-have-ptr-2.address03.xa.
all-ns-have-ptr-2.address03.xa:53 {
    bind 127.11.3.31                # ns1.child
    bind fda1:b2:c3::127:11:3:31    # ns1.child
    bind 127.11.3.33                # ns3.child
    bind fda1:b2:c3::127:11:3:33    # ns3.child
    log
    file Address-TP/address03/all-ns-have-ptr-2.address03.xa.zone all-ns-have-ptr-2.address03.xa
}

### NO-NS-HAVE-PTR
# no-ns-have-ptr.address03.xa.
no-ns-have-ptr.address03.xa:53 {
    bind 127.11.3.34                # ns4.child
    bind fda1:b2:c3::127:11:3:34    # ns4.child
    bind 127.11.3.35                # ns5.child
    bind fda1:b2:c3::127:11:3:35    # ns5.child
    log
    file Address-TP/address03/no-ns-have-ptr.address03.xa.zone no-ns-have-ptr.address03.xa
}

### INCOMPLETE-PTR-1
# incomplete-ptr-1.address03.xa.
incomplete-ptr-1.address03.xa:53 {
    bind 127.11.3.31                # ns1.child
    bind fda1:b2:c3::127:11:3:31    # ns1.child
    bind 127.11.3.36                # ns6.child
    bind fda1:b2:c3::127:11:3:36    # ns6.child
    log
    file Address-TP/address03/incomplete-ptr-1.address03.xa.zone incomplete-ptr-1.address03.xa
}

### INCOMPLETE-PTR-2
# incomplete-ptr-2.address03.xa.
incomplete-ptr-2.address03.xa:53 {
    bind 127.11.3.31                # ns1.child
    bind fda1:b2:c3::127:11:3:31    # ns1.child
    bind 127.11.3.37                # ns7.child
    bind fda1:b2:c3::127:11:3:37    # ns7.child
    log
    file Address-TP/address03/incomplete-ptr-2.address03.xa.zone incomplete-ptr-2.address03.xa
}

### NON-MATCHING-NAMES
# non-matching-names.address03.xa.
non-matching-names.address03.xa:53 {
    bind 127.11.3.38                # ns8.child
    bind fda1:b2:c3::127:11:3:38    # ns8.child
    bind 127.11.3.39                # ns9.child
    bind fda1:b2:c3::127:11:3:39    # ns9.child
    log
    file Address-TP/address03/non-matching-names.address03.xa.zone non-matching-names.address03.xa
}

### PTR-IS-GOOD-CNAME-1
# ptr-is-good-cname-1.address03.xa.
ptr-is-good-cname-1.address03.xa:53 {
    bind 127.11.3.31                # ns1.child
    bind fda1:b2:c3::127:11:3:31    # ns1.child
    bind 127.11.3.40                # ns10.child
    bind fda1:b2:c3::127:11:3:40    # ns10.child
    log
    file Address-TP/address03/ptr-is-good-cname-1.address03.xa.zone ptr-is-good-cname-1.address03.xa
}

### PTR-IS-GOOD-CNAME-2
# ptr-is-good-cname-2.address03.xa.
ptr-is-good-cname-2.address03.xa:53 {
    bind 127.11.3.31                # ns1.child
    bind fda1:b2:c3::127:11:3:31    # ns1.child
    bind 127.11.3.41                # ns11.child
    bind fda1:b2:c3::127:11:3:41    # ns11.child
    log
    file Address-TP/address03/ptr-is-good-cname-2.address03.xa.zone ptr-is-good-cname-2.address03.xa
}

### PTR-IS-DANGLING-CNAME
# ptr-is-dangling-cname.address03.xa.
ptr-is-dangling-cname.address03.xa:53 {
    bind 127.11.3.35                # ns5.child
    bind fda1:b2:c3::127:11:3:35    # ns5.child
    bind 127.11.3.42                # ns12.child
    bind fda1:b2:c3::127:11:3:42    # ns12.child
    log
    file Address-TP/address03/ptr-is-dangling-cname.address03.xa.zone ptr-is-dangling-cname.address03.xa
}

### PTR-IS-ILLEGAL-CNAME
# ptr-is-illegal-cname.address03.xa.
ptr-is-illegal-cname.address03.xa:53 {
    bind 127.11.3.34                # ns4.child
    bind fda1:b2:c3::127:11:3:34    # ns4.child
    bind 127.11.3.43                # ns13.child
    bind fda1:b2:c3::127:11:3:43    # ns13.child
    log
    file Address-TP/address03/ptr-is-illegal-cname.address03.xa.zone ptr-is-illegal-cname.address03.xa
}

### PTR-RESOLUTION-NO-RESPONSE
# ptr-resolution-no-response.address03.xa.
ptr-resolution-no-response.address03.xa:53 {
    bind 127.11.3.31                # ns1.child
    bind fda1:b2:c3::127:11:3:31    # ns1.child
    bind 127.11.3.44                # ns14.child
    bind fda1:b2:c3::127:11:3:44    # ns14.child
    log
    file Address-TP/address03/ptr-resolution-no-response.address03.xa.zone ptr-resolution-no-response.address03.xa
}

### PTR-RESOLUTION-SERVFAIL
# ptr-resolution-servfail.address03.xa.
ptr-resolution-servfail.address03.xa:53 {
    bind 127.11.3.31                # ns1.child
    bind fda1:b2:c3::127:11:3:31    # ns1.child
    bind 127.11.3.45                # ns15.child
    bind fda1:b2:c3::127:11:3:45    # ns15.child
    log
    file Address-TP/address03/ptr-resolution-servfail.address03.xa.zone ptr-resolution-servfail.address03.xa
}
