diff options
Diffstat (limited to 'tests/deckard/sets/resolver/module_dns64.rpl')
-rw-r--r-- | tests/deckard/sets/resolver/module_dns64.rpl | 204 |
1 files changed, 204 insertions, 0 deletions
diff --git a/tests/deckard/sets/resolver/module_dns64.rpl b/tests/deckard/sets/resolver/module_dns64.rpl new file mode 100644 index 0000000..0e50dbb --- /dev/null +++ b/tests/deckard/sets/resolver/module_dns64.rpl @@ -0,0 +1,204 @@ +; config options + stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET. + features: dns64_prefix = fe80::21b:aabb:0:0 +CONFIG_END + +SCENARIO_BEGIN Test dns64 features + +; K.ROOT-SERVERS.NET. +RANGE_BEGIN 0 100 + ADDRESS 193.0.14.129 +ENTRY_BEGIN +MATCH opcode qtype qname +ADJUST copy_id +REPLY QR NOERROR +SECTION QUESTION +. IN NS +SECTION ANSWER +. IN NS K.ROOT-SERVERS.NET. +SECTION ADDITIONAL +K.ROOT-SERVERS.NET. IN A 193.0.14.129 +ENTRY_END + +ENTRY_BEGIN +MATCH opcode subdomain +ADJUST copy_id copy_query +REPLY QR NOERROR +SECTION QUESTION +cz. IN NS +SECTION AUTHORITY +cz. IN NS d.ns.nic.cz. +SECTION ADDITIONAL +d.ns.nic.cz. IN A 193.29.206.1 +;d.ns.nic.cz. IN AAAA 2001:678:1::1 +ENTRY_END +RANGE_END + +RANGE_BEGIN 0 100 + ADDRESS 193.29.206.1 +ENTRY_BEGIN +MATCH opcode subdomain +ADJUST copy_id copy_query +REPLY QR NOERROR +SECTION QUESTION +example.cz. IN NS +SECTION AUTHORITY +example.cz. IN NS ns.example.cz. +SECTION ADDITIONAL +ns.example.cz. IN A 1.2.3.4 +ENTRY_END +RANGE_END + +RANGE_BEGIN 0 100 + ADDRESS 1.2.3.4 +ENTRY_BEGIN +MATCH opcode qtype qname +ADJUST copy_id +REPLY QR NOERROR +SECTION QUESTION +www.example.cz. IN A +SECTION ANSWER +www.example.cz. IN A 1.2.3.5 +www.example.cz. IN A 1.2.3.6 +SECTION AUTHORITY +example.cz. IN NS ns.example.cz. +SECTION ADDITIONAL +ns.example.cz. IN A 1.2.3.4 +ENTRY_END + +ENTRY_BEGIN +MATCH opcode qname qtype +ADJUST copy_id +REPLY QR NOERROR +SECTION QUESTION +www.example.cz. IN AAAA +SECTION AUTHORITY +example.cz. 3600 IN SOA bla. bla. 1 2 3 4 5 +SECTION ADDITIONAL +ENTRY_END + +ENTRY_BEGIN +MATCH opcode qname qtype +ADJUST copy_id +REPLY QR NOERROR +SECTION QUESTION +www6.example.cz. IN AAAA +SECTION ANSWER +www6.example.cz. 3600 IN AAAA 2001:db8::1 +SECTION ADDITIONAL +ENTRY_END + +ENTRY_BEGIN +MATCH opcode qname +ADJUST copy_id copy_query +REPLY QR NOERROR +SECTION QUESTION +cname.example.cz. IN CNAME +SECTION ANSWER +cname.example.cz. IN CNAME www.example.cz. +ENTRY_END + +ENTRY_BEGIN +MATCH opcode qname qtype +ADJUST copy_id +REPLY QR REFUSED +SECTION QUESTION +fail6.example.cz. IN AAAA +SECTION ANSWER +ENTRY_END +RANGE_END + + +STEP 10 QUERY +ENTRY_BEGIN +REPLY RD +SECTION QUESTION +www.example.cz. IN AAAA +ENTRY_END + +STEP 11 CHECK_ANSWER +ENTRY_BEGIN +MATCH flags rcode question answer +REPLY QR RD RA NOERROR +SECTION QUESTION +www.example.cz. IN AAAA +SECTION ANSWER +www.example.cz. IN AAAA fe80::21b:aabb:102:305 +www.example.cz. IN AAAA fe80::21b:aabb:102:306 +ENTRY_END + +; Do not synthesize on +CD queries, sec. 5.5.3. +STEP 12 QUERY +ENTRY_BEGIN +REPLY RD DO CD +SECTION QUESTION +www.example.cz. IN AAAA +ENTRY_END + +STEP 13 CHECK_ANSWER +ENTRY_BEGIN +MATCH flags rcode question answer authority +REPLY QR RD RA DO CD NOERROR +SECTION QUESTION +www.example.cz. IN AAAA +SECTION ANSWER +SECTION AUTHORITY +example.cz. 3600 IN SOA bla. bla. 1 2 3 4 5 +ENTRY_END + +; Do not synthesize if AAAA exists. +STEP 14 QUERY +ENTRY_BEGIN +REPLY RD +SECTION QUESTION +www6.example.cz. IN AAAA +ENTRY_END + +STEP 15 CHECK_ANSWER +ENTRY_BEGIN +MATCH flags rcode question answer +REPLY QR RD RA NOERROR +SECTION QUESTION +www6.example.cz. IN AAAA +SECTION ANSWER +www6.example.cz. 3600 IN AAAA 2001:db8::1 +ENTRY_END + +; Generate from simple NODATA behind a CNAME. +STEP 16 QUERY +ENTRY_BEGIN +REPLY RD +SECTION QUESTION +cname.example.cz. IN AAAA +ENTRY_END + +STEP 17 CHECK_ANSWER +ENTRY_BEGIN +MATCH flags rcode question answer +REPLY QR RD RA NOERROR +SECTION QUESTION +cname.example.cz. IN AAAA +SECTION ANSWER +cname.example.cz. IN CNAME www.example.cz. +www.example.cz. IN AAAA fe80::21b:aabb:102:305 +www.example.cz. IN AAAA fe80::21b:aabb:102:306 +ENTRY_END + +; Fail for AAAA won't cause query for A (answer not defined). +STEP 18 QUERY +ENTRY_BEGIN +REPLY RD +SECTION QUESTION +fail6.example.cz. IN AAAA +ENTRY_END + +STEP 19 CHECK_ANSWER +ENTRY_BEGIN +MATCH flags rcode question answer +REPLY QR RD RA SERVFAIL +SECTION QUESTION +fail6.example.cz. IN AAAA +SECTION ANSWER +ENTRY_END + +SCENARIO_END |