|
@@ -0,0 +1,236 @@
|
|
|
+;; This file defines a set of RRs commonly used in query tests in the
|
|
|
+;; form of standard master zone file.
|
|
|
+;;
|
|
|
+;; It's a sequence of the following pattern:
|
|
|
+;; ;var=<var_name>
|
|
|
+;; RR_1
|
|
|
+;; RR_2
|
|
|
+;; ..
|
|
|
+;; RR_n
|
|
|
+;;
|
|
|
+;; where var_name is a string that can be used as a variable name in a
|
|
|
+;; C/C++ source file or an empty string. RR_x is a single-line
|
|
|
+;; textual representation of an arbitrary DNS RR.
|
|
|
+;;
|
|
|
+;; If var_name is non empty, the generator script will define a C
|
|
|
+;; variable of C-string type for that set of RRs so that it can be referred
|
|
|
+;; to in the test source file.
|
|
|
+;;
|
|
|
+;; Note that lines beginning ';var=' is no different from other
|
|
|
+;; comment lines as a zone file. It has special meaning only for the
|
|
|
+;; generator script. Obviously, real comment lines cannot begin with
|
|
|
+;; ';var=' (which should be less likely to happen in practice though).
|
|
|
+;;
|
|
|
+;; These RRs will be loaded into in-memory data source in that order.
|
|
|
+;; Note that it may impose stricter restriction on the order of RRs.
|
|
|
+;; In general, each RRset of the same name and type and its RRSIG (if
|
|
|
+;; any) is expected to be grouped.
|
|
|
+
|
|
|
+;var=soa_txt
|
|
|
+example.com. 3600 IN SOA . . 1 0 0 0 0
|
|
|
+;var=zone_ns_txt
|
|
|
+example.com. 3600 IN NS glue.delegation.example.com.
|
|
|
+example.com. 3600 IN NS noglue.example.com.
|
|
|
+example.com. 3600 IN NS example.net.
|
|
|
+
|
|
|
+;var=
|
|
|
+example.com. 3600 IN RRSIG SOA 5 3 3600 20000101000000 20000201000000 12345 example.com. FAKEFAKEFAKE
|
|
|
+example.com. 3600 IN RRSIG NS 5 3 3600 20000101000000 20000201000000 12345 example.com. FAKEFAKEFAKE
|
|
|
+
|
|
|
+;; Note: the position of the next RR is tricky. It's placed here to
|
|
|
+;; be grouped with the subsequent A RR of the name. But we also want
|
|
|
+;; to group the A RR with other RRs of a different owner name, so the RRSIG
|
|
|
+;; cannot be placed after the A RR. The empty 'var=' specification is
|
|
|
+;; not necessary here, but in case we want to reorganize the ordering
|
|
|
+;; (in which case it's more likely to be needed), we keep it here.
|
|
|
+;var=
|
|
|
+noglue.example.com. 3600 IN RRSIG A 5 3 3600 20000101000000 20000201000000 12345 example.com. FAKEFAKEFAKE
|
|
|
+
|
|
|
+;var=ns_addrs_txt
|
|
|
+noglue.example.com. 3600 IN A 192.0.2.53
|
|
|
+glue.delegation.example.com. 3600 IN A 192.0.2.153
|
|
|
+glue.delegation.example.com. 3600 IN AAAA 2001:db8::53
|
|
|
+
|
|
|
+;var=
|
|
|
+glue.delegation.example.com. 3600 IN RRSIG A 5 3 3600 20000101000000 20000201000000 12345 example.com. FAKEFAKEFAKE
|
|
|
+glue.delegation.example.com. 3600 IN RRSIG AAAA 5 3 3600 20000101000000 20000201000000 12345 example.com. FAKEFAKEFAKE
|
|
|
+
|
|
|
+;var=delegation_txt
|
|
|
+delegation.example.com. 3600 IN NS glue.delegation.example.com.
|
|
|
+delegation.example.com. 3600 IN NS noglue.example.com.
|
|
|
+delegation.example.com. 3600 IN NS cname.example.com.
|
|
|
+delegation.example.com. 3600 IN NS example.org.
|
|
|
+
|
|
|
+;var=
|
|
|
+delegation.example.com. 3600 IN RRSIG DS 5 3 3600 20000101000000 20000201000000 12345 example.com. FAKEFAKEFAKE
|
|
|
+
|
|
|
+;; Borrowed from the RFC4035
|
|
|
+;var=delegation_ds_txt
|
|
|
+delegation.example.com. 3600 IN DS 57855 5 1 B6DCD485719ADCA18E5F3D48A2331627FDD3 636B
|
|
|
+;var=mx_txt
|
|
|
+mx.example.com. 3600 IN MX 10 www.example.com.
|
|
|
+mx.example.com. 3600 IN MX 20 mailer.example.org.
|
|
|
+mx.example.com. 3600 IN MX 30 mx.delegation.example.com.
|
|
|
+;var=www_a_txt
|
|
|
+www.example.com. 3600 IN A 192.0.2.80
|
|
|
+
|
|
|
+;var=
|
|
|
+www.example.com. 3600 IN RRSIG A 5 3 3600 20000101000000 20000201000000 12345 example.com. FAKEFAKEFAKE
|
|
|
+
|
|
|
+;var=cname_txt
|
|
|
+cname.example.com. 3600 IN CNAME www.example.com.
|
|
|
+;var=cname_nxdom_txt
|
|
|
+cnamenxdom.example.com. 3600 IN CNAME nxdomain.example.com.
|
|
|
+;; CNAME Leading out of zone
|
|
|
+;var=cname_out_txt
|
|
|
+cnameout.example.com. 3600 IN CNAME www.example.org.
|
|
|
+;; The DNAME to do tests against
|
|
|
+;var=dname_txt
|
|
|
+dname.example.com. 3600 IN DNAME somethinglong.dnametarget.example.com.
|
|
|
+;; Some data at the dname node (allowed by RFC 2672)
|
|
|
+;var=dname_a_txt
|
|
|
+dname.example.com. 3600 IN A 192.0.2.5
|
|
|
+;; This is not inside the zone, this is created at runtime
|
|
|
+;; www.dname.example.com. 3600 IN CNAME www.somethinglong.dnametarget.example.com.
|
|
|
+;; The rest of data won't be referenced from the test cases.
|
|
|
+;var=other_zone_rrs
|
|
|
+cnamemailer.example.com. 3600 IN CNAME www.example.com.
|
|
|
+cnamemx.example.com. 3600 IN MX 10 cnamemailer.example.com.
|
|
|
+mx.delegation.example.com. 3600 IN A 192.0.2.100
|
|
|
+;; Wildcards
|
|
|
+;var=wild_txt
|
|
|
+*.wild.example.com. 3600 IN A 192.0.2.7
|
|
|
+;var=nsec_wild_txt
|
|
|
+*.wild.example.com. 3600 IN NSEC www.example.com. A NSEC RRSIG
|
|
|
+
|
|
|
+;var=
|
|
|
+*.wild.example.com. 3600 IN RRSIG A 5 3 3600 20000101000000 20000201000000 12345 example.com. FAKEFAKEFAKE
|
|
|
+*.wild.example.com. 3600 IN RRSIG NSEC 5 3 3600 20000101000000 20000201000000 12345 example.com. FAKEFAKEFAKE
|
|
|
+
|
|
|
+;var=cnamewild_txt
|
|
|
+*.cnamewild.example.com. 3600 IN CNAME www.example.org.
|
|
|
+;var=nsec_cnamewild_txt
|
|
|
+*.cnamewild.example.com. 3600 IN NSEC delegation.example.com. CNAME NSEC RRSIG
|
|
|
+
|
|
|
+;var=
|
|
|
+*.cnamewild.example.com. 3600 IN RRSIG CNAME 5 3 3600 20000101000000 20000201000000 12345 example.com. FAKEFAKEFAKE
|
|
|
+*.cnamewild.example.com. 3600 IN RRSIG NSEC 5 3 3600 20000101000000 20000201000000 12345 example.com. FAKEFAKEFAKE
|
|
|
+
|
|
|
+;; Wildcard_nxrrset
|
|
|
+;var=wild_txt_nxrrset
|
|
|
+*.uwild.example.com. 3600 IN A 192.0.2.9
|
|
|
+;var=nsec_wild_txt_nxrrset
|
|
|
+*.uwild.example.com. 3600 IN NSEC www.uwild.example.com. A NSEC RRSIG
|
|
|
+;var=
|
|
|
+*.uwild.example.com. 3600 IN RRSIG NSEC 5 3 3600 20000101000000 20000201000000 12345 example.com. FAKEFAKEFAKE
|
|
|
+;var=wild_txt_next
|
|
|
+www.uwild.example.com. 3600 IN A 192.0.2.11
|
|
|
+;var=
|
|
|
+www.uwild.example.com. 3600 IN RRSIG NSEC 5 3 3600 20000101000000 20000201000000 12345 example.com. FAKEFAKEFAKE
|
|
|
+;var=nsec_wild_txt_next
|
|
|
+www.uwild.example.com. 3600 IN NSEC *.wild.example.com. A NSEC RRSIG
|
|
|
+;; Wildcard empty
|
|
|
+;var=empty_txt
|
|
|
+b.*.t.example.com. 3600 IN A 192.0.2.13
|
|
|
+;var=nsec_empty_txt
|
|
|
+b.*.t.example.com. 3600 IN NSEC *.uwild.example.com. A NSEC RRSIG
|
|
|
+
|
|
|
+;var=
|
|
|
+b.*.t.example.com. 3600 IN RRSIG NSEC 5 3 3600 20000101000000 20000201000000 12345 example.com. FAKEFAKEFAKE
|
|
|
+
|
|
|
+;var=empty_prev_txt
|
|
|
+t.example.com. 3600 IN A 192.0.2.15
|
|
|
+;var=nsec_empty_prev_txt
|
|
|
+t.example.com. 3600 IN NSEC b.*.t.example.com. A NSEC RRSIG
|
|
|
+
|
|
|
+;var=
|
|
|
+t.example.com. 3600 IN RRSIG NSEC 5 3 3600 20000101000000 20000201000000 12345 example.com. FAKEFAKEFAKE
|
|
|
+
|
|
|
+;; Used in NXDOMAIN proof test. We are going to test some unusual case where
|
|
|
+;; the best possible wildcard is below the "next domain" of the NSEC RR that
|
|
|
+;; proves the NXDOMAIN, i.e.,
|
|
|
+;; mx.example.com. (exist)
|
|
|
+;; (.no.example.com. (qname, NXDOMAIN)
|
|
|
+;; ).no.example.com. (exist)
|
|
|
+;; *.no.example.com. (best possible wildcard, not exist)
|
|
|
+;var=no_txt
|
|
|
+\).no.example.com. 3600 IN AAAA 2001:db8::53
|
|
|
+;; NSEC records.
|
|
|
+;var=nsec_apex_txt
|
|
|
+example.com. 3600 IN NSEC cname.example.com. NS SOA NSEC RRSIG
|
|
|
+;var=
|
|
|
+example.com. 3600 IN RRSIG NSEC 5 3 3600 20000101000000 20000201000000 12345 example.com. FAKEFAKEFAKE
|
|
|
+;var=nsec_mx_txt
|
|
|
+mx.example.com. 3600 IN NSEC \).no.example.com. MX NSEC RRSIG
|
|
|
+
|
|
|
+;var=
|
|
|
+mx.example.com. 3600 IN RRSIG NSEC 5 3 3600 20000101000000 20000201000000 12345 example.com. FAKEFAKEFAKE
|
|
|
+
|
|
|
+;var=nsec_no_txt
|
|
|
+\).no.example.com. 3600 IN NSEC nz.no.example.com. AAAA NSEC RRSIG
|
|
|
+
|
|
|
+;var=
|
|
|
+\).no.example.com. 3600 IN RRSIG NSEC 5 3 3600 20000101000000 20000201000000 12345 example.com. FAKEFAKEFAKE
|
|
|
+
|
|
|
+;; We'll also test the case where a single NSEC proves both NXDOMAIN and the
|
|
|
+;; non existence of wildcard. The following records will be used for that
|
|
|
+;; test.
|
|
|
+;; ).no.example.com. (exist, whose NSEC proves everything)
|
|
|
+;; *.no.example.com. (best possible wildcard, not exist)
|
|
|
+;; nx.no.example.com. (NXDOMAIN)
|
|
|
+;; nz.no.example.com. (exist)
|
|
|
+;var=nz_txt
|
|
|
+nz.no.example.com. 3600 IN AAAA 2001:db8::5300
|
|
|
+;var=nsec_nz_txt
|
|
|
+nz.no.example.com. 3600 IN NSEC noglue.example.com. AAAA NSEC RRSIG
|
|
|
+;var=nsec_nxdomain_txt
|
|
|
+noglue.example.com. 3600 IN NSEC nonsec.example.com. A
|
|
|
+
|
|
|
+;var=
|
|
|
+noglue.example.com. 3600 IN RRSIG NSEC 5 3 3600 20000101000000 20000201000000 12345 example.com. FAKEFAKEFAKE
|
|
|
+
|
|
|
+;; NSEC for the normal NXRRSET case
|
|
|
+;var=nsec_www_txt
|
|
|
+www.example.com. 3600 IN NSEC example.com. A NSEC RRSIG
|
|
|
+
|
|
|
+;var=
|
|
|
+www.example.com. 3600 IN RRSIG NSEC 5 3 3600 20000101000000 20000201000000 12345 example.com. FAKEFAKEFAKE
|
|
|
+
|
|
|
+;; Authoritative data without NSEC
|
|
|
+;var=nonsec_a_txt
|
|
|
+nonsec.example.com. 3600 IN A 192.0.2.0
|
|
|
+
|
|
|
+;; (Secure) delegation data; Delegation with DS record
|
|
|
+;var=signed_delegation_txt
|
|
|
+signed-delegation.example.com. 3600 IN NS ns.example.net.
|
|
|
+;var=signed_delegation_ds_txt
|
|
|
+signed-delegation.example.com. 3600 IN DS 12345 8 2 764501411DE58E8618945054A3F620B36202E115D015A7773F4B78E0F952CECA
|
|
|
+
|
|
|
+;var=
|
|
|
+signed-delegation.example.com. 3600 IN RRSIG DS 5 3 3600 20000101000000 20000201000000 12345 example.com. FAKEFAKEFAKE
|
|
|
+
|
|
|
+;; (Secure) delegation data; Delegation without DS record (and both NSEC
|
|
|
+;; and NSEC3 denying its existence)
|
|
|
+;var=unsigned_delegation_txt
|
|
|
+unsigned-delegation.example.com. 3600 IN NS ns.example.net.
|
|
|
+;var=unsigned_delegation_nsec_txt
|
|
|
+unsigned-delegation.example.com. 3600 IN NSEC unsigned-delegation-optout.example.com. NS RRSIG NSEC
|
|
|
+
|
|
|
+;var=
|
|
|
+unsigned-delegation.example.com. 3600 IN RRSIG NSEC 5 3 3600 20000101000000 20000201000000 12345 example.com. FAKEFAKEFAKE
|
|
|
+
|
|
|
+;; Delegation without DS record, and no direct matching NSEC3 record
|
|
|
+;var=unsigned_delegation_optout_txt
|
|
|
+unsigned-delegation-optout.example.com. 3600 IN NS ns.example.net.
|
|
|
+;var=unsigned_delegation_optout_nsec_txt
|
|
|
+unsigned-delegation-optout.example.com. 3600 IN NSEC *.uwild.example.com. NS RRSIG NSEC
|
|
|
+
|
|
|
+;; (Secure) delegation data; Delegation where the DS lookup will raise an
|
|
|
+;; exception.
|
|
|
+;var=bad_delegation_txt
|
|
|
+bad-delegation.example.com. 3600 IN NS ns.example.net.
|
|
|
+
|
|
|
+;; Delegation from an unsigned parent. There's no DS, and there's no NSEC
|
|
|
+;; or NSEC3 that proves it.
|
|
|
+;var=nosec_delegation_txt
|
|
|
+nosec-delegation.example.com. 3600 IN NS ns.nosec.example.net.
|