Client Cache (#275)

This PR adds experimental support for a client cache provided as a pass
through transport
This commit is contained in:
Philip Homburg
2024-03-12 10:32:21 +01:00
parent 1e25edb277
commit 4d13fe8998
48 changed files with 6946 additions and 212 deletions
+198
View File
@@ -0,0 +1,198 @@
; Test if caching clears the AA flag. We issue the same query twice.
; First we expect the AA bit to be set. For the second query,
; make sure that we get an answer from the cache. Make sure the AA flag is
; clear.
do-ip6: no
; config options
; target-fetch-policy: "3 2 1 0 0"
; name: "."
stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET.
CONFIG_END
SCENARIO_BEGIN Test AD flag set followed by AD flag clear.
; 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
; net.
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
net. IN NS
SECTION AUTHORITY
. IN SOA . . 0 0 0 0 0
ENTRY_END
; root-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN NS
SECTION ANSWER
root-servers.net. IN NS k.root-servers.net.
SECTION ADDITIONAL
k.root-servers.net. IN A 193.0.14.129
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN A
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN A
SECTION ANSWER
k.root-servers.net. IN A 193.0.14.129
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN AAAA
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
; gtld-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN NS
SECTION ANSWER
gtld-servers.net. IN NS a.gtld-servers.net.
SECTION ADDITIONAL
a.gtld-servers.net. IN A 192.5.6.30
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN A
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN A
SECTION ANSWER
a.gtld-servers.net. IN A 192.5.6.30
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN AAAA
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 0 9
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD AA NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 10 19
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD AA NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2001:DB8::1
ENTRY_END
RANGE_END
STEP 1 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
example.com. IN AAAA
ENTRY_END
STEP 2 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD AA NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
STEP 10 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
example.com. IN AAAA
ENTRY_END
STEP 11 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
SCENARIO_END
+198
View File
@@ -0,0 +1,198 @@
; Test if AD caching works properly. First we issue a query with the AD flag
; set and we receive and answer also with the AD flag set. Then we
; issue a test with the AD flag clear. Make sure that we get an answer from
; the cache. Make sure the AD flags is clear.
do-ip6: no
; config options
; target-fetch-policy: "3 2 1 0 0"
; name: "."
stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET.
CONFIG_END
SCENARIO_BEGIN Test AD flag set followed by AD flag clear.
; 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
; net.
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
net. IN NS
SECTION AUTHORITY
. IN SOA . . 0 0 0 0 0
ENTRY_END
; root-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN NS
SECTION ANSWER
root-servers.net. IN NS k.root-servers.net.
SECTION ADDITIONAL
k.root-servers.net. IN A 193.0.14.129
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN A
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN A
SECTION ANSWER
k.root-servers.net. IN A 193.0.14.129
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN AAAA
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
; gtld-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN NS
SECTION ANSWER
gtld-servers.net. IN NS a.gtld-servers.net.
SECTION ADDITIONAL
a.gtld-servers.net. IN A 192.5.6.30
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN A
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN A
SECTION ANSWER
a.gtld-servers.net. IN A 192.5.6.30
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN AAAA
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 0 9
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname AD
ADJUST copy_id copy_query
REPLY QR RD AD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 10 19
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD AD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2001:DB8::1
ENTRY_END
RANGE_END
STEP 1 QUERY
ENTRY_BEGIN
REPLY RD AD
SECTION QUESTION
example.com. IN AAAA
ENTRY_END
STEP 2 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD AD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
STEP 10 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
example.com. IN AAAA
ENTRY_END
STEP 11 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
SCENARIO_END
+208
View File
@@ -0,0 +1,208 @@
; Test if AD caching works properly. First we issue a query with the AD flag
; clear and we receive and answer also with the AD flag clear. Then we
; issue a test with the AD flag set. Make sure that we don't get an answer from
; the cache. Make sure the AD flags is set.
do-ip6: no
; config options
; target-fetch-policy: "3 2 1 0 0"
; name: "."
stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET.
CONFIG_END
SCENARIO_BEGIN Test AD flag set followed by AD flag clear.
; 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
; net.
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
net. IN NS
SECTION AUTHORITY
. IN SOA . . 0 0 0 0 0
ENTRY_END
; root-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN NS
SECTION ANSWER
root-servers.net. IN NS k.root-servers.net.
SECTION ADDITIONAL
k.root-servers.net. IN A 193.0.14.129
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN A
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN A
SECTION ANSWER
k.root-servers.net. IN A 193.0.14.129
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN AAAA
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
; gtld-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN NS
SECTION ANSWER
gtld-servers.net. IN NS a.gtld-servers.net.
SECTION ADDITIONAL
a.gtld-servers.net. IN A 192.5.6.30
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN A
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN A
SECTION ANSWER
a.gtld-servers.net. IN A 192.5.6.30
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN AAAA
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 0 9
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname AD
ADJUST copy_id copy_query
REPLY QR RD AD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2001:DB8::2
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 10 19
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD AD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2001:DB8::1
ENTRY_END
RANGE_END
STEP 1 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
example.com. IN AAAA
ENTRY_END
STEP 2 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
STEP 10 QUERY
ENTRY_BEGIN
REPLY RD AD
SECTION QUESTION
example.com. IN AAAA
ENTRY_END
STEP 11 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD AD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2001:DB8::1
ENTRY_END
SCENARIO_END
@@ -0,0 +1,196 @@
; Make sure a broken NODATA response is not cached. We issue the same query
; twice. For the second query, make sure that we do not get an answer from
; the cache.
do-ip6: no
; config options
; target-fetch-policy: "3 2 1 0 0"
; name: "."
stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET.
CONFIG_END
SCENARIO_BEGIN Test AD flag set followed by AD flag clear.
; 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
; net.
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
net. IN NS
SECTION AUTHORITY
. IN SOA . . 0 0 0 0 0
ENTRY_END
; root-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN NS
SECTION ANSWER
root-servers.net. IN NS k.root-servers.net.
SECTION ADDITIONAL
k.root-servers.net. IN A 193.0.14.129
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN A
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN A
SECTION ANSWER
k.root-servers.net. IN A 193.0.14.129
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN AAAA
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
; gtld-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN NS
SECTION ANSWER
gtld-servers.net. IN NS a.gtld-servers.net.
SECTION ADDITIONAL
a.gtld-servers.net. IN A 192.5.6.30
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN A
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN A
SECTION ANSWER
a.gtld-servers.net. IN A 192.5.6.30
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN AAAA
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 0 9
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN SSHFP
SECTION AUTHORITY
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 10 19
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN SSHFP
SECTION AUTHORITY
example.com. 1800 IN SOA ns.icann.org. noc.dns.icann.org. 2024013008 7200 3600 1209600 3600
ENTRY_END
RANGE_END
STEP 1 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
example.com. IN SSHFP
ENTRY_END
STEP 2 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN SSHFP
SECTION AUTHORITY
ENTRY_END
STEP 10 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
example.com. IN SSHFP
ENTRY_END
STEP 11 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN SSHFP
SECTION AUTHORITY
example.com. 1800 IN SOA ns.icann.org. noc.dns.icann.org. 2024013008 7200 3600 1209600 3600
ENTRY_END
SCENARIO_END
+198
View File
@@ -0,0 +1,198 @@
; Test if case-insensitive caching works properly. First we issue a query
; with the first letter capitalized and the rest lower case.
; Then we issue a test with another letter capitalized. Make sure that we
; get an answer from the cache.
do-ip6: no
; config options
; target-fetch-policy: "3 2 1 0 0"
; name: "."
stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET.
CONFIG_END
SCENARIO_BEGIN Test AD flag set followed by AD flag clear.
; 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
; net.
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
net. IN NS
SECTION AUTHORITY
. IN SOA . . 0 0 0 0 0
ENTRY_END
; root-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN NS
SECTION ANSWER
root-servers.net. IN NS k.root-servers.net.
SECTION ADDITIONAL
k.root-servers.net. IN A 193.0.14.129
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN A
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN A
SECTION ANSWER
k.root-servers.net. IN A 193.0.14.129
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN AAAA
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
; gtld-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN NS
SECTION ANSWER
gtld-servers.net. IN NS a.gtld-servers.net.
SECTION ADDITIONAL
a.gtld-servers.net. IN A 192.5.6.30
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN A
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN A
SECTION ANSWER
a.gtld-servers.net. IN A 192.5.6.30
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN AAAA
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 0 9
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
Example.com. IN AAAA
SECTION ANSWER
Example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 10 19
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
eXample.com. IN AAAA
SECTION ANSWER
eXample.com. IN AAAA 2001:DB8::1
ENTRY_END
RANGE_END
STEP 1 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
Example.com. IN AAAA
ENTRY_END
STEP 2 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NOERROR
SECTION QUESTION
Example.com. IN AAAA
SECTION ANSWER
Example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
STEP 10 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
eXample.com. IN AAAA
ENTRY_END
STEP 11 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NOERROR
SECTION QUESTION
eXample.com. IN AAAA
SECTION ANSWER
Example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
SCENARIO_END
+217
View File
@@ -0,0 +1,217 @@
; Test if CD caching works properly. First we issue a query with the CD flag
; set. Then we issue a test with the CD flag clear. Make sure that we
; don't get an answer from the cache.
do-ip6: no
; config options
; target-fetch-policy: "3 2 1 0 0"
; name: "."
stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET.
CONFIG_END
SCENARIO_BEGIN Test AD flag set followed by AD flag clear.
; 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
; net.
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
net. IN NS
SECTION AUTHORITY
. IN SOA . . 0 0 0 0 0
ENTRY_END
; root-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN NS
SECTION ANSWER
root-servers.net. IN NS k.root-servers.net.
SECTION ADDITIONAL
k.root-servers.net. IN A 193.0.14.129
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN A
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN A
SECTION ANSWER
k.root-servers.net. IN A 193.0.14.129
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN AAAA
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
; gtld-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN NS
SECTION ANSWER
gtld-servers.net. IN NS a.gtld-servers.net.
SECTION ADDITIONAL
a.gtld-servers.net. IN A 192.5.6.30
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN A
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN A
SECTION ANSWER
a.gtld-servers.net. IN A 192.5.6.30
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN AAAA
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 0 9
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname CD
ADJUST copy_id copy_query
REPLY QR RD CD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2001:DB8::2
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 10 19
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname CD
ADJUST copy_id copy_query
REPLY QR RD CD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2001:DB8::2
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2001:DB8::1
ENTRY_END
RANGE_END
STEP 1 QUERY
ENTRY_BEGIN
REPLY RD CD
SECTION QUESTION
example.com. IN AAAA
ENTRY_END
STEP 2 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD CD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
STEP 10 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
example.com. IN AAAA
ENTRY_END
STEP 11 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2001:DB8::1
ENTRY_END
SCENARIO_END
+207
View File
@@ -0,0 +1,207 @@
; Test if CD caching works properly. First we issue a query with the CD flag
; clear. Then we issue a test with the CD flag set. Make sure that we
; don't get an answer from the cache.
do-ip6: no
; config options
; target-fetch-policy: "3 2 1 0 0"
; name: "."
stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET.
CONFIG_END
SCENARIO_BEGIN Test AD flag set followed by AD flag clear.
; 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
; net.
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
net. IN NS
SECTION AUTHORITY
. IN SOA . . 0 0 0 0 0
ENTRY_END
; root-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN NS
SECTION ANSWER
root-servers.net. IN NS k.root-servers.net.
SECTION ADDITIONAL
k.root-servers.net. IN A 193.0.14.129
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN A
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN A
SECTION ANSWER
k.root-servers.net. IN A 193.0.14.129
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN AAAA
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
; gtld-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN NS
SECTION ANSWER
gtld-servers.net. IN NS a.gtld-servers.net.
SECTION ADDITIONAL
a.gtld-servers.net. IN A 192.5.6.30
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN A
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN A
SECTION ANSWER
a.gtld-servers.net. IN A 192.5.6.30
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN AAAA
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 0 9
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname CD
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2001:DB8::2
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 10 19
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname CD
ADJUST copy_id copy_query
REPLY QR RD CD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2001:DB8::1
ENTRY_END
RANGE_END
STEP 1 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
example.com. IN AAAA
ENTRY_END
STEP 2 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
STEP 10 QUERY
ENTRY_BEGIN
REPLY RD CD
SECTION QUESTION
example.com. IN AAAA
ENTRY_END
STEP 11 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD CD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2001:DB8::1
ENTRY_END
SCENARIO_END
+198
View File
@@ -0,0 +1,198 @@
; Make sure a class other than IN is not cached. We issue the same query
; twice. For the second query, make sure that we do not get an answer from
; the cache.
do-ip6: no
; config options
; target-fetch-policy: "3 2 1 0 0"
; name: "."
stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET.
CONFIG_END
SCENARIO_BEGIN Test AD flag set followed by AD flag clear.
; 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
; net.
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
net. IN NS
SECTION AUTHORITY
. IN SOA . . 0 0 0 0 0
ENTRY_END
; root-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN NS
SECTION ANSWER
root-servers.net. IN NS k.root-servers.net.
SECTION ADDITIONAL
k.root-servers.net. IN A 193.0.14.129
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN A
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN A
SECTION ANSWER
k.root-servers.net. IN A 193.0.14.129
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN AAAA
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
; gtld-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN NS
SECTION ANSWER
gtld-servers.net. IN NS a.gtld-servers.net.
SECTION ADDITIONAL
a.gtld-servers.net. IN A 192.5.6.30
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN A
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN A
SECTION ANSWER
a.gtld-servers.net. IN A 192.5.6.30
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN AAAA
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 0 9
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
version.server. CH TXT
SECTION ANSWER
version.server. CH TXT "example server"
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 10 19
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
version.server. CH TXT
SECTION ANSWER
version.server. CH TXT "domain server"
ENTRY_END
RANGE_END
STEP 1 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
version.server. CH TXT
ENTRY_END
STEP 2 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NOERROR
SECTION QUESTION
version.server. CH TXT
SECTION ANSWER
version.server. CH TXT "example server"
ENTRY_END
STEP 10 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
version.server. CH TXT
ENTRY_END
STEP 11 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NOERROR
SECTION QUESTION
version.server. CH TXT
SECTION ANSWER
version.server. CH TXT "domain server"
ENTRY_END
SCENARIO_END
+199
View File
@@ -0,0 +1,199 @@
; Test if delegations are cached. We issue the same query twice.
; For the second query, make sure that we get an answer from the cache.
do-ip6: no
; config options
; target-fetch-policy: "3 2 1 0 0"
; name: "."
stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET.
CONFIG_END
SCENARIO_BEGIN Test AD flag set followed by AD flag clear.
; 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
; net.
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
net. IN NS
SECTION AUTHORITY
. IN SOA . . 0 0 0 0 0
ENTRY_END
; root-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN NS
SECTION ANSWER
root-servers.net. IN NS k.root-servers.net.
SECTION ADDITIONAL
k.root-servers.net. IN A 193.0.14.129
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN A
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN A
SECTION ANSWER
k.root-servers.net. IN A 193.0.14.129
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN AAAA
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
; gtld-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN NS
SECTION ANSWER
gtld-servers.net. IN NS a.gtld-servers.net.
SECTION ADDITIONAL
a.gtld-servers.net. IN A 192.5.6.30
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN A
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN A
SECTION ANSWER
a.gtld-servers.net. IN A 192.5.6.30
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN AAAA
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 0 9
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN A
SECTION AUTHORITY
example.com. 172800 IN NS a.iana-servers.net.
example.com. 172800 IN NS b.iana-servers.net.
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 10 19
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD AA NOERROR
SECTION QUESTION
example.com. IN A
SECTION ANSWER
example.com. IN A 1.2.3.4
ENTRY_END
RANGE_END
STEP 1 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
example.com. IN A
ENTRY_END
STEP 2 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN A
SECTION AUTHORITY
example.com. 172800 IN NS a.iana-servers.net.
example.com. 172800 IN NS b.iana-servers.net.
ENTRY_END
STEP 10 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
example.com. IN A
ENTRY_END
STEP 11 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN A
SECTION AUTHORITY
example.com. 172800 IN NS a.iana-servers.net.
example.com. 172800 IN NS b.iana-servers.net.
ENTRY_END
SCENARIO_END
+225
View File
@@ -0,0 +1,225 @@
; Test if DO caching works properly. First we issue a query with the DO flag
; set and we receive an answer with NSEC and RRSIG records and with the AD
; flag set. Then we issue a test with the DO flag clear and AD clear. Make sure
; that we get an answer from the cache and that the DNSSEC records are
; stripped and the AD is clear. Then issue a test with AD set. Make sure we
; get the same answer as with AD clear but now AD should be set.
do-ip6: no
; config options
; target-fetch-policy: "3 2 1 0 0"
; name: "."
stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET.
CONFIG_END
SCENARIO_BEGIN Test DO flag set followed by DO flag clear.
; 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
; net.
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
net. IN NS
SECTION AUTHORITY
. IN SOA . . 0 0 0 0 0
ENTRY_END
; root-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN NS
SECTION ANSWER
root-servers.net. IN NS k.root-servers.net.
SECTION ADDITIONAL
k.root-servers.net. IN A 193.0.14.129
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN A
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN A
SECTION ANSWER
k.root-servers.net. IN A 193.0.14.129
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN AAAA
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
; gtld-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN NS
SECTION ANSWER
gtld-servers.net. IN NS a.gtld-servers.net.
SECTION ADDITIONAL
a.gtld-servers.net. IN A 192.5.6.30
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN A
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN A
SECTION ANSWER
a.gtld-servers.net. IN A 192.5.6.30
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN AAAA
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 0 9
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname DO
ADJUST copy_id copy_query
REPLY QR RD AD NOERROR
SECTION QUESTION
doesnotexist.example.com. IN TXT
SECTION ANSWER
doesnotexist.example.com. IN TXT "star"
doesnotexist.example.com. 60 IN RRSIG TXT 8 2 60 20240229091551 20240201091551 63939 example.com. l01lAi1yB6JvZtWoil1ZGhESrT/2sqr2I3YDey/Ub3npAJ/6TctahmIInnQHispcCZomv0N6/aIKpJSCvRrs5XZSjdD2mspnzyFSmYev6Lbf9spes3HkZtjwU7ANXcQN9g8eck4XIe6+KRFi40FCSpH/Ldf9igaCPGGz6IxEc04LdfvUN6BcJGHZ98bdbT/J3IjnJAwDUYWXZUKqfZSdoapUEtVga12Lk3cvv8/WKWNlNFYj3Qz42QOuBkQTlVV2sqGKtHkzhn+wkQyoUEbkNTaqtsVIPW3xNbvLpLi2laPOQic9XBEbs7tW9H9lXofn1168R0HtkCe7TRMZKoBFLQ==
SECTION AUTHORITY
does-exist.example.com. 3600 IN NSEC exists.example.com. A RRSIG NSEC
does-exist.example.com. 3600 IN RRSIG NSEC 8 3 3600 20240229091553 20240201091553 63939 example.com. WezFhdCGSG4azmZkeBXxILnfwWuvhkjijsfpkcKqSfhOvQXPEjY0T0Gm4FoHOGieReGPQi4+Jgqp5AjC08yQwphPR9Cq3IsIVCAhPEzh1E9pVRmAFrlf+k/EnxCZ7aN7rq9rrFsx1jK5JtB1hUuvBLpVsVwIqx5yM7LohxWwhnTj+JqqiUbMVp0BcGzz5UubaSIlyJjiGc5ra79X6PGp2Ql19+krqEzaqrVuuD044+BBQWRvG3PzIEQwC1iEumKcfyWb+4F6s806f3NqvliBZl4nxVZUdl2vwhq2+gguN/+o6l3EjySvlKUFu6z5pto+qC9qrML2EM5mPETm253pVg==
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 10 19
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD AD NOERROR
SECTION QUESTION
example.com. IN A
SECTION ANSWER
example.com. IN A 1.2.3.4
ENTRY_END
RANGE_END
STEP 1 QUERY
ENTRY_BEGIN
REPLY RD DO
SECTION QUESTION
doesnotexist.example.com. IN TXT
ENTRY_END
STEP 2 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD AD NOERROR
SECTION QUESTION
doesnotexist.example.com. IN TXT
SECTION ANSWER
doesnotexist.example.com. IN TXT "star"
doesnotexist.example.com. 60 IN RRSIG TXT 8 2 60 20240229091551 20240201091551 63939 example.com. l01lAi1yB6JvZtWoil1ZGhESrT/2sqr2I3YDey/Ub3npAJ/6TctahmIInnQHispcCZomv0N6/aIKpJSCvRrs5XZSjdD2mspnzyFSmYev6Lbf9spes3HkZtjwU7ANXcQN9g8eck4XIe6+KRFi40FCSpH/Ldf9igaCPGGz6IxEc04LdfvUN6BcJGHZ98bdbT/J3IjnJAwDUYWXZUKqfZSdoapUEtVga12Lk3cvv8/WKWNlNFYj3Qz42QOuBkQTlVV2sqGKtHkzhn+wkQyoUEbkNTaqtsVIPW3xNbvLpLi2laPOQic9XBEbs7tW9H9lXofn1168R0HtkCe7TRMZKoBFLQ==
SECTION AUTHORITY
does-exist.example.com. 3600 IN NSEC exists.example.com. A RRSIG NSEC
does-exist.example.com. 3600 IN RRSIG NSEC 8 3 3600 20240229091553 20240201091553 63939 example.com. WezFhdCGSG4azmZkeBXxILnfwWuvhkjijsfpkcKqSfhOvQXPEjY0T0Gm4FoHOGieReGPQi4+Jgqp5AjC08yQwphPR9Cq3IsIVCAhPEzh1E9pVRmAFrlf+k/EnxCZ7aN7rq9rrFsx1jK5JtB1hUuvBLpVsVwIqx5yM7LohxWwhnTj+JqqiUbMVp0BcGzz5UubaSIlyJjiGc5ra79X6PGp2Ql19+krqEzaqrVuuD044+BBQWRvG3PzIEQwC1iEumKcfyWb+4F6s806f3NqvliBZl4nxVZUdl2vwhq2+gguN/+o6l3EjySvlKUFu6z5pto+qC9qrML2EM5mPETm253pVg==
ENTRY_END
STEP 10 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
doesnotexist.example.com. IN TXT
ENTRY_END
STEP 11 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NOERROR
SECTION QUESTION
doesnotexist.example.com. IN TXT
SECTION ANSWER
doesnotexist.example.com. IN TXT "star"
ENTRY_END
STEP 20 QUERY
ENTRY_BEGIN
REPLY RD AD
SECTION QUESTION
doesnotexist.example.com. IN TXT
ENTRY_END
STEP 21 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD AD NOERROR
SECTION QUESTION
doesnotexist.example.com. IN TXT
SECTION ANSWER
doesnotexist.example.com. IN TXT "star"
ENTRY_END
SCENARIO_END
+231
View File
@@ -0,0 +1,231 @@
; Test if DO caching works properly. First we issue a query with the DO flag
; set and we receive an answer with NSEC3 and RRSIG records and with the AD
; flag set. Then we issue a test with the DO flag clear and AD set. Make sure
; that we get an answer from the cache and that the DNSSEC records are
; stripped and the AD is set. Then issue a test with AD clear. Make sure we
; get the same answer as with AD set but now AD should be clear.
do-ip6: no
; config options
; target-fetch-policy: "3 2 1 0 0"
; name: "."
stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET.
CONFIG_END
SCENARIO_BEGIN Test DO flag set followed by DO flag clear.
; 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
; net.
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
net. IN NS
SECTION AUTHORITY
. IN SOA . . 0 0 0 0 0
ENTRY_END
; root-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN NS
SECTION ANSWER
root-servers.net. IN NS k.root-servers.net.
SECTION ADDITIONAL
k.root-servers.net. IN A 193.0.14.129
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN A
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN A
SECTION ANSWER
k.root-servers.net. IN A 193.0.14.129
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN AAAA
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
; gtld-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN NS
SECTION ANSWER
gtld-servers.net. IN NS a.gtld-servers.net.
SECTION ADDITIONAL
a.gtld-servers.net. IN A 192.5.6.30
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN A
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN A
SECTION ANSWER
a.gtld-servers.net. IN A 192.5.6.30
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN AAAA
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 0 9
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname DO
ADJUST copy_id copy_query
REPLY QR RD AD NOERROR
SECTION QUESTION
doesnotexist.example.com. IN TXT
SECTION AUTHORITY
example.com. 900 IN SOA a.example.net. nstld.example.com. 1706885485 1800 900 604800 86400
example.com. 900 IN RRSIG SOA 13 1 900 20240209145125 20240202134125 4534 example.com. uAEEE4oYH9x/QE/5xi41m5TkELdDLEQ+kqoIag/NcISzf//phx+i5ezFPUY3Y/XnaeZLIKFdGVx6D1oFZmLxpA==
CK0POJMG874LJREF7EFN8430QVIT8BSM.example.com. 21600 IN NSEC3 1 1 0 - ck0q2d6ni4i7eqh8na30ns61o48ul8g5 NS SOA RRSIG DNSKEY NSEC3PARAM
CK0POJMG874LJREF7EFN8430QVIT8BSM.example.com. 21600 IN RRSIG NSEC3 13 2 86400 20240206052637 20240130041637 4534 example.com. +NFtkRVj+SxKGDAJypPm9byEhYAkLFqco9kgi1cI+bO4kJ55Zd/9QFay3xzFIPduA7pjBrWthR9uhHE0Qnf5OA==
7K5NUBQUB56BBNKQJ6B485STCN1RQ6HT.example.com. 21600 IN NSEC3 1 1 0 - 7k5oetj08ci9mdtvqueq1gq0dgp84qe8 NS DS RRSIG
7K5NUBQUB56BBNKQJ6B485STCN1RQ6HT.example.com. 21600 IN RRSIG NSEC3 13 2 86400 20240206080851 20240130065851 4534 example.com. vYruIKBWnObM4V/+aqPmoxdAi5+UvAQsWBH6i3SbgT7GChssl7FcX8UFlQfeUPilc3lriST4FTXGswGa5111XA==
3RL2Q58205687C8I9KC9MV46DGHCNS45.example.com. 21600 IN NSEC3 1 1 0 - 3rl2shvumc300iuc2tdl4vml2hnf0o7i NS DS RRSIG
3RL2Q58205687C8I9KC9MV46DGHCNS45.example.com. 21600 IN RRSIG NSEC3 13 2 86400 20240209055857 20240202044857 4534 example.com. TgLjE/venWu8OxOn7iLvdt87u4aojGY4Nh7Susc7xXWAKir5s1yjoW/R/7E8E/9vEouJGKViZ82NQ3PMec3jbw==
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 10 19
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD AD NOERROR
SECTION QUESTION
example.com. IN A
SECTION ANSWER
example.com. IN A 1.2.3.4
ENTRY_END
RANGE_END
STEP 1 QUERY
ENTRY_BEGIN
REPLY RD DO
SECTION QUESTION
doesnotexist.example.com. IN TXT
ENTRY_END
STEP 2 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD AD NOERROR
SECTION QUESTION
doesnotexist.example.com. IN TXT
SECTION AUTHORITY
example.com. 900 IN SOA a.example.net. nstld.example.com. 1706885485 1800 900 604800 86400
example.com. 900 IN RRSIG SOA 13 1 900 20240209145125 20240202134125 4534 example.com. uAEEE4oYH9x/QE/5xi41m5TkELdDLEQ+kqoIag/NcISzf//phx+i5ezFPUY3Y/XnaeZLIKFdGVx6D1oFZmLxpA==
CK0POJMG874LJREF7EFN8430QVIT8BSM.example.com. 21600 IN NSEC3 1 1 0 - ck0q2d6ni4i7eqh8na30ns61o48ul8g5 NS SOA RRSIG DNSKEY NSEC3PARAM
CK0POJMG874LJREF7EFN8430QVIT8BSM.example.com. 21600 IN RRSIG NSEC3 13 2 86400 20240206052637 20240130041637 4534 example.com. +NFtkRVj+SxKGDAJypPm9byEhYAkLFqco9kgi1cI+bO4kJ55Zd/9QFay3xzFIPduA7pjBrWthR9uhHE0Qnf5OA==
7K5NUBQUB56BBNKQJ6B485STCN1RQ6HT.example.com. 21600 IN NSEC3 1 1 0 - 7k5oetj08ci9mdtvqueq1gq0dgp84qe8 NS DS RRSIG
7K5NUBQUB56BBNKQJ6B485STCN1RQ6HT.example.com. 21600 IN RRSIG NSEC3 13 2 86400 20240206080851 20240130065851 4534 example.com. vYruIKBWnObM4V/+aqPmoxdAi5+UvAQsWBH6i3SbgT7GChssl7FcX8UFlQfeUPilc3lriST4FTXGswGa5111XA==
3RL2Q58205687C8I9KC9MV46DGHCNS45.example.com. 21600 IN NSEC3 1 1 0 - 3rl2shvumc300iuc2tdl4vml2hnf0o7i NS DS RRSIG
3RL2Q58205687C8I9KC9MV46DGHCNS45.example.com. 21600 IN RRSIG NSEC3 13 2 86400 20240209055857 20240202044857 4534 example.com. TgLjE/venWu8OxOn7iLvdt87u4aojGY4Nh7Susc7xXWAKir5s1yjoW/R/7E8E/9vEouJGKViZ82NQ3PMec3jbw==
ENTRY_END
STEP 10 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
doesnotexist.example.com. IN TXT
ENTRY_END
STEP 11 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NOERROR
SECTION QUESTION
doesnotexist.example.com. IN TXT
SECTION AUTHORITY
example.com. 900 IN SOA a.example.net. nstld.example.com. 1706885485 1800 900 604800 86400
ENTRY_END
STEP 20 QUERY
ENTRY_BEGIN
REPLY RD AD
SECTION QUESTION
doesnotexist.example.com. IN TXT
ENTRY_END
STEP 21 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD AD NOERROR
SECTION QUESTION
doesnotexist.example.com. IN TXT
SECTION AUTHORITY
example.com. 900 IN SOA a.example.net. nstld.example.com. 1706885485 1800 900 604800 86400
ENTRY_END
SCENARIO_END
+250
View File
@@ -0,0 +1,250 @@
; Test if DO caching works properly. First we issue a query with QTYPE equals
; RRSIG and the DO flag set and we receive an answer with NSEC and RRSIG
; records and with the AD flag set. Then we issue a test with the DO flag
; clear and AD clear. Make sure we don't get an answer from the cache because
; queries for RRSIG, NSEC, and NSEC3 are special.
do-ip6: no
; config options
; target-fetch-policy: "3 2 1 0 0"
; name: "."
stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET.
CONFIG_END
SCENARIO_BEGIN Test DO flag set followed by DO flag clear.
; 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
; net.
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
net. IN NS
SECTION AUTHORITY
. IN SOA . . 0 0 0 0 0
ENTRY_END
; root-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN NS
SECTION ANSWER
root-servers.net. IN NS k.root-servers.net.
SECTION ADDITIONAL
k.root-servers.net. IN A 193.0.14.129
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN A
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN A
SECTION ANSWER
k.root-servers.net. IN A 193.0.14.129
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN AAAA
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
; gtld-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN NS
SECTION ANSWER
gtld-servers.net. IN NS a.gtld-servers.net.
SECTION ADDITIONAL
a.gtld-servers.net. IN A 192.5.6.30
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN A
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN A
SECTION ANSWER
a.gtld-servers.net. IN A 192.5.6.30
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN AAAA
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 0 9
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname DO
ADJUST copy_id copy_query
REPLY QR RD AD NOERROR
SECTION QUESTION
doesnotexist.example.com. IN NSEC
SECTION ANSWER
doesnotexist.example.com. 3600 IN NSEC a.example.com. TXT RRSIG NSEC
doesnotexist.example.com. 3600 IN RRSIG NSEC 8 2 3600 20240302200620 20240203200620 63939 example.com. vtM5AjaxYJLqDSXGuPkhtjH1S+YLhMkgg1YVrUpxt2QuY2APIjwUThKN3bPsht4vt/ydVchIMfkHeZRTV4a4yMfuDwr9j5gi/RhrnOLEfQyrBMT0chmKpnh/3gAjHSj9rWNwh1Lyk4p6xSwcKTkYWPHR2q6wPG9Kt6hWQpbLiU66lZE3q5DUvQmKhhorT+sdwVLbpgcilrRQ7Wj5ocXVMfVWmNPbpAg0trruqB7WbkWjkReb+v0bUCDRcGZnd+GJD+YA9rvn7cJHiJQHrURE1Gb6OdxHZslr3NTo+wizbGXN01SLOZHaLTqk+ke8qPW6RRrVwZQyk/13kPMN8Lnr7Q==
SECTION AUTHORITY
does-exist.example.com. 3600 IN NSEC exists.example.com. A RRSIG NSEC
does-exist.example.com. 3600 IN RRSIG NSEC 8 3 3600 20240229091553 20240201091553 63939 example.com. WezFhdCGSG4azmZkeBXxILnfwWuvhkjijsfpkcKqSfhOvQXPEjY0T0Gm4FoHOGieReGPQi4+Jgqp5AjC08yQwphPR9Cq3IsIVCAhPEzh1E9pVRmAFrlf+k/EnxCZ7aN7rq9rrFsx1jK5JtB1hUuvBLpVsVwIqx5yM7LohxWwhnTj+JqqiUbMVp0BcGzz5UubaSIlyJjiGc5ra79X6PGp2Ql19+krqEzaqrVuuD044+BBQWRvG3PzIEQwC1iEumKcfyWb+4F6s806f3NqvliBZl4nxVZUdl2vwhq2+gguN/+o6l3EjySvlKUFu6z5pto+qC9qrML2EM5mPETm253pVg==
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 10 19
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
doesnotexist.example.com. IN NSEC
SECTION ANSWER
doesnotexist.example.com. 3600 IN NSEC aa.example.com. TXT RRSIG NSEC
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 20 29
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname AD
ADJUST copy_id copy_query
REPLY QR RD AD NOERROR
SECTION QUESTION
doesnotexist.example.com. IN NSEC
SECTION ANSWER
doesnotexist.example.com. 3600 IN NSEC aaa.example.com. TXT RRSIG NSEC
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
doesnotexist.example.com. IN NSEC
SECTION ANSWER
doesnotexist.example.com. 3600 IN NSEC aa.example.com. TXT RRSIG NSEC
ENTRY_END
RANGE_END
STEP 1 QUERY
ENTRY_BEGIN
REPLY RD DO
SECTION QUESTION
doesnotexist.example.com. IN NSEC
ENTRY_END
STEP 2 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD AD NOERROR
SECTION QUESTION
doesnotexist.example.com. IN NSEC
SECTION ANSWER
doesnotexist.example.com. 3600 IN NSEC a.example.com. TXT RRSIG NSEC
doesnotexist.example.com. 3600 IN RRSIG NSEC 8 2 3600 20240302200620 20240203200620 63939 example.com. vtM5AjaxYJLqDSXGuPkhtjH1S+YLhMkgg1YVrUpxt2QuY2APIjwUThKN3bPsht4vt/ydVchIMfkHeZRTV4a4yMfuDwr9j5gi/RhrnOLEfQyrBMT0chmKpnh/3gAjHSj9rWNwh1Lyk4p6xSwcKTkYWPHR2q6wPG9Kt6hWQpbLiU66lZE3q5DUvQmKhhorT+sdwVLbpgcilrRQ7Wj5ocXVMfVWmNPbpAg0trruqB7WbkWjkReb+v0bUCDRcGZnd+GJD+YA9rvn7cJHiJQHrURE1Gb6OdxHZslr3NTo+wizbGXN01SLOZHaLTqk+ke8qPW6RRrVwZQyk/13kPMN8Lnr7Q==
SECTION AUTHORITY
does-exist.example.com. 3600 IN NSEC exists.example.com. A RRSIG NSEC
does-exist.example.com. 3600 IN RRSIG NSEC 8 3 3600 20240229091553 20240201091553 63939 example.com. WezFhdCGSG4azmZkeBXxILnfwWuvhkjijsfpkcKqSfhOvQXPEjY0T0Gm4FoHOGieReGPQi4+Jgqp5AjC08yQwphPR9Cq3IsIVCAhPEzh1E9pVRmAFrlf+k/EnxCZ7aN7rq9rrFsx1jK5JtB1hUuvBLpVsVwIqx5yM7LohxWwhnTj+JqqiUbMVp0BcGzz5UubaSIlyJjiGc5ra79X6PGp2Ql19+krqEzaqrVuuD044+BBQWRvG3PzIEQwC1iEumKcfyWb+4F6s806f3NqvliBZl4nxVZUdl2vwhq2+gguN/+o6l3EjySvlKUFu6z5pto+qC9qrML2EM5mPETm253pVg==
ENTRY_END
STEP 10 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
doesnotexist.example.com. IN NSEC
ENTRY_END
STEP 11 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NOERROR
SECTION QUESTION
doesnotexist.example.com. IN NSEC
SECTION ANSWER
doesnotexist.example.com. 3600 IN NSEC aa.example.com. TXT RRSIG NSEC
ENTRY_END
STEP 20 QUERY
ENTRY_BEGIN
REPLY RD AD
SECTION QUESTION
doesnotexist.example.com. IN NSEC
ENTRY_END
STEP 21 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD AD NOERROR
SECTION QUESTION
doesnotexist.example.com. IN NSEC
SECTION ANSWER
doesnotexist.example.com. 3600 IN NSEC aaa.example.com. TXT RRSIG NSEC
ENTRY_END
SCENARIO_END
+254
View File
@@ -0,0 +1,254 @@
; Test if DO caching works properly. First we issue a query with QTYPE equals
; RRSIG and the DO flag set and we receive an answer with NSEC and RRSIG
; records and with the AD flag set. Then we issue a test with the DO flag
; clear and AD clear. Make sure we don't get an answer from the cache because
; queries for RRSIG, NSEC, and NSEC3 are special.
do-ip6: no
; config options
; target-fetch-policy: "3 2 1 0 0"
; name: "."
stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET.
CONFIG_END
SCENARIO_BEGIN Test DO flag set followed by DO flag clear.
; 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
; net.
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
net. IN NS
SECTION AUTHORITY
. IN SOA . . 0 0 0 0 0
ENTRY_END
; root-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN NS
SECTION ANSWER
root-servers.net. IN NS k.root-servers.net.
SECTION ADDITIONAL
k.root-servers.net. IN A 193.0.14.129
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN A
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN A
SECTION ANSWER
k.root-servers.net. IN A 193.0.14.129
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN AAAA
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
; gtld-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN NS
SECTION ANSWER
gtld-servers.net. IN NS a.gtld-servers.net.
SECTION ADDITIONAL
a.gtld-servers.net. IN A 192.5.6.30
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN A
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN A
SECTION ANSWER
a.gtld-servers.net. IN A 192.5.6.30
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN AAAA
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 0 9
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname DO
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
doesnotexist.example.com. IN RRSIG
SECTION ANSWER
doesnotexist.example.com. 60 IN RRSIG TXT 8 2 60 20240229091551 20240201091551 63939 example.com. l01lAi1yB6JvZtWoil1ZGhESrT/2sqr2I3YDey/Ub3npAJ/6TctahmIInnQHispcCZomv0N6/aIKpJSCvRrs5XZSjdD2mspnzyFSmYev6Lbf9spes3HkZtjwU7ANXcQN9g8eck4XIe6+KRFi40FCSpH/Ldf9igaCPGGz6IxEc04LdfvUN6BcJGHZ98bdbT/J3IjnJAwDUYWXZUKqfZSdoapUEtVga12Lk3cvv8/WKWNlNFYj3Qz42QOuBkQTlVV2sqGKtHkzhn+wkQyoUEbkNTaqtsVIPW3xNbvLpLi2laPOQic9XBEbs7tW9H9lXofn1168R0HtkCe7TRMZKoBFLQ==
doesnotexist.example.com. 3591 IN RRSIG NSEC 8 2 3600 20240302200620 20240203200620 63939 example.com. vtM5AjaxYJLqDSXGuPkhtjH1S+YLhMkgg1YVrUpxt2QuY2APIjwUThKN3bPsht4vt/ydVchIMfkHeZRTV4a4yMfuDwr9j5gi/RhrnOLEfQyrBMT0chmKpnh/3gAjHSj9rWNwh1Lyk4p6xSwcKTkYWPHR2q6wPG9Kt6hWQpbLiU66lZE3q5DUvQmKhhorT+sdwVLbpgcilrRQ7Wj5ocXVMfVWmNPbpAg0trruqB7WbkWjkReb+v0bUCDRcGZnd+GJD+YA9rvn7cJHiJQHrURE1Gb6OdxHZslr3NTo+wizbGXN01SLOZHaLTqk+ke8qPW6RRrVwZQyk/13kPMN8Lnr7Q==
SECTION AUTHORITY
does-exist.example.com. 3600 IN NSEC exists.example.com. A RRSIG NSEC
does-exist.example.com. 3600 IN RRSIG NSEC 8 3 3600 20240229091553 20240201091553 63939 example.com. WezFhdCGSG4azmZkeBXxILnfwWuvhkjijsfpkcKqSfhOvQXPEjY0T0Gm4FoHOGieReGPQi4+Jgqp5AjC08yQwphPR9Cq3IsIVCAhPEzh1E9pVRmAFrlf+k/EnxCZ7aN7rq9rrFsx1jK5JtB1hUuvBLpVsVwIqx5yM7LohxWwhnTj+JqqiUbMVp0BcGzz5UubaSIlyJjiGc5ra79X6PGp2Ql19+krqEzaqrVuuD044+BBQWRvG3PzIEQwC1iEumKcfyWb+4F6s806f3NqvliBZl4nxVZUdl2vwhq2+gguN/+o6l3EjySvlKUFu6z5pto+qC9qrML2EM5mPETm253pVg==
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 10 19
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
doesnotexist.example.com. IN RRSIG
SECTION ANSWER
doesnotexist.example.com. 60 IN RRSIG TXT 6 6 66 20240229091551 20240201091551 63939 example.com. l01lAi1yB6JvZtWoil1ZGhESrT/2sqr2I3YDey/Ub3npAJ/6TctahmIInnQHispcCZomv0N6/aIKpJSCvRrs5XZSjdD2mspnzyFSmYev6Lbf9spes3HkZtjwU7ANXcQN9g8eck4XIe6+KRFi40FCSpH/Ldf9igaCPGGz6IxEc04LdfvUN6BcJGHZ98bdbT/J3IjnJAwDUYWXZUKqfZSdoapUEtVga12Lk3cvv8/WKWNlNFYj3Qz42QOuBkQTlVV2sqGKtHkzhn+wkQyoUEbkNTaqtsVIPW3xNbvLpLi2laPOQic9XBEbs7tW9H9lXofn1168R0HtkCe7TRMZKoBFLQ==
doesnotexist.example.com. 3591 IN RRSIG NSEC 6 6 66 20240302200620 20240203200620 63939 example.com. vtM5AjaxYJLqDSXGuPkhtjH1S+YLhMkgg1YVrUpxt2QuY2APIjwUThKN3bPsht4vt/ydVchIMfkHeZRTV4a4yMfuDwr9j5gi/RhrnOLEfQyrBMT0chmKpnh/3gAjHSj9rWNwh1Lyk4p6xSwcKTkYWPHR2q6wPG9Kt6hWQpbLiU66lZE3q5DUvQmKhhorT+sdwVLbpgcilrRQ7Wj5ocXVMfVWmNPbpAg0trruqB7WbkWjkReb+v0bUCDRcGZnd+GJD+YA9rvn7cJHiJQHrURE1Gb6OdxHZslr3NTo+wizbGXN01SLOZHaLTqk+ke8qPW6RRrVwZQyk/13kPMN8Lnr7Q==
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 20 29
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname AD
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
doesnotexist.example.com. IN RRSIG
SECTION ANSWER
doesnotexist.example.com. 60 IN RRSIG TXT 7 7 77 20240229091551 20240201091551 63939 example.com. l01lAi1yB6JvZtWoil1ZGhESrT/2sqr2I3YDey/Ub3npAJ/6TctahmIInnQHispcCZomv0N6/aIKpJSCvRrs5XZSjdD2mspnzyFSmYev6Lbf9spes3HkZtjwU7ANXcQN9g8eck4XIe6+KRFi40FCSpH/Ldf9igaCPGGz6IxEc04LdfvUN6BcJGHZ98bdbT/J3IjnJAwDUYWXZUKqfZSdoapUEtVga12Lk3cvv8/WKWNlNFYj3Qz42QOuBkQTlVV2sqGKtHkzhn+wkQyoUEbkNTaqtsVIPW3xNbvLpLi2laPOQic9XBEbs7tW9H9lXofn1168R0HtkCe7TRMZKoBFLQ==
doesnotexist.example.com. 3591 IN RRSIG NSEC 7 7 77 20240302200620 20240203200620 63939 example.com. vtM5AjaxYJLqDSXGuPkhtjH1S+YLhMkgg1YVrUpxt2QuY2APIjwUThKN3bPsht4vt/ydVchIMfkHeZRTV4a4yMfuDwr9j5gi/RhrnOLEfQyrBMT0chmKpnh/3gAjHSj9rWNwh1Lyk4p6xSwcKTkYWPHR2q6wPG9Kt6hWQpbLiU66lZE3q5DUvQmKhhorT+sdwVLbpgcilrRQ7Wj5ocXVMfVWmNPbpAg0trruqB7WbkWjkReb+v0bUCDRcGZnd+GJD+YA9rvn7cJHiJQHrURE1Gb6OdxHZslr3NTo+wizbGXN01SLOZHaLTqk+ke8qPW6RRrVwZQyk/13kPMN8Lnr7Q==
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
doesnotexist.example.com. IN RRSIG
SECTION ANSWER
doesnotexist.example.com. 60 IN RRSIG TXT 6 6 66 20240229091551 20240201091551 63939 example.com. l01lAi1yB6JvZtWoil1ZGhESrT/2sqr2I3YDey/Ub3npAJ/6TctahmIInnQHispcCZomv0N6/aIKpJSCvRrs5XZSjdD2mspnzyFSmYev6Lbf9spes3HkZtjwU7ANXcQN9g8eck4XIe6+KRFi40FCSpH/Ldf9igaCPGGz6IxEc04LdfvUN6BcJGHZ98bdbT/J3IjnJAwDUYWXZUKqfZSdoapUEtVga12Lk3cvv8/WKWNlNFYj3Qz42QOuBkQTlVV2sqGKtHkzhn+wkQyoUEbkNTaqtsVIPW3xNbvLpLi2laPOQic9XBEbs7tW9H9lXofn1168R0HtkCe7TRMZKoBFLQ==
doesnotexist.example.com. 3591 IN RRSIG NSEC 6 6 66 20240302200620 20240203200620 63939 example.com. vtM5AjaxYJLqDSXGuPkhtjH1S+YLhMkgg1YVrUpxt2QuY2APIjwUThKN3bPsht4vt/ydVchIMfkHeZRTV4a4yMfuDwr9j5gi/RhrnOLEfQyrBMT0chmKpnh/3gAjHSj9rWNwh1Lyk4p6xSwcKTkYWPHR2q6wPG9Kt6hWQpbLiU66lZE3q5DUvQmKhhorT+sdwVLbpgcilrRQ7Wj5ocXVMfVWmNPbpAg0trruqB7WbkWjkReb+v0bUCDRcGZnd+GJD+YA9rvn7cJHiJQHrURE1Gb6OdxHZslr3NTo+wizbGXN01SLOZHaLTqk+ke8qPW6RRrVwZQyk/13kPMN8Lnr7Q==
ENTRY_END
RANGE_END
STEP 1 QUERY
ENTRY_BEGIN
REPLY RD DO
SECTION QUESTION
doesnotexist.example.com. IN RRSIG
ENTRY_END
STEP 2 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NOERROR
SECTION QUESTION
doesnotexist.example.com. IN RRSIG
SECTION ANSWER
doesnotexist.example.com. 60 IN RRSIG TXT 8 2 60 20240229091551 20240201091551 63939 example.com. l01lAi1yB6JvZtWoil1ZGhESrT/2sqr2I3YDey/Ub3npAJ/6TctahmIInnQHispcCZomv0N6/aIKpJSCvRrs5XZSjdD2mspnzyFSmYev6Lbf9spes3HkZtjwU7ANXcQN9g8eck4XIe6+KRFi40FCSpH/Ldf9igaCPGGz6IxEc04LdfvUN6BcJGHZ98bdbT/J3IjnJAwDUYWXZUKqfZSdoapUEtVga12Lk3cvv8/WKWNlNFYj3Qz42QOuBkQTlVV2sqGKtHkzhn+wkQyoUEbkNTaqtsVIPW3xNbvLpLi2laPOQic9XBEbs7tW9H9lXofn1168R0HtkCe7TRMZKoBFLQ==
doesnotexist.example.com. 3591 IN RRSIG NSEC 8 2 3600 20240302200620 20240203200620 63939 example.com. vtM5AjaxYJLqDSXGuPkhtjH1S+YLhMkgg1YVrUpxt2QuY2APIjwUThKN3bPsht4vt/ydVchIMfkHeZRTV4a4yMfuDwr9j5gi/RhrnOLEfQyrBMT0chmKpnh/3gAjHSj9rWNwh1Lyk4p6xSwcKTkYWPHR2q6wPG9Kt6hWQpbLiU66lZE3q5DUvQmKhhorT+sdwVLbpgcilrRQ7Wj5ocXVMfVWmNPbpAg0trruqB7WbkWjkReb+v0bUCDRcGZnd+GJD+YA9rvn7cJHiJQHrURE1Gb6OdxHZslr3NTo+wizbGXN01SLOZHaLTqk+ke8qPW6RRrVwZQyk/13kPMN8Lnr7Q==
SECTION AUTHORITY
does-exist.example.com. 3600 IN NSEC exists.example.com. A RRSIG NSEC
does-exist.example.com. 3600 IN RRSIG NSEC 8 3 3600 20240229091553 20240201091553 63939 example.com. WezFhdCGSG4azmZkeBXxILnfwWuvhkjijsfpkcKqSfhOvQXPEjY0T0Gm4FoHOGieReGPQi4+Jgqp5AjC08yQwphPR9Cq3IsIVCAhPEzh1E9pVRmAFrlf+k/EnxCZ7aN7rq9rrFsx1jK5JtB1hUuvBLpVsVwIqx5yM7LohxWwhnTj+JqqiUbMVp0BcGzz5UubaSIlyJjiGc5ra79X6PGp2Ql19+krqEzaqrVuuD044+BBQWRvG3PzIEQwC1iEumKcfyWb+4F6s806f3NqvliBZl4nxVZUdl2vwhq2+gguN/+o6l3EjySvlKUFu6z5pto+qC9qrML2EM5mPETm253pVg==
ENTRY_END
STEP 10 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
doesnotexist.example.com. IN RRSIG
ENTRY_END
STEP 11 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NOERROR
SECTION QUESTION
doesnotexist.example.com. IN RRSIG
SECTION ANSWER
doesnotexist.example.com. 60 IN RRSIG TXT 6 6 66 20240229091551 20240201091551 63939 example.com. l01lAi1yB6JvZtWoil1ZGhESrT/2sqr2I3YDey/Ub3npAJ/6TctahmIInnQHispcCZomv0N6/aIKpJSCvRrs5XZSjdD2mspnzyFSmYev6Lbf9spes3HkZtjwU7ANXcQN9g8eck4XIe6+KRFi40FCSpH/Ldf9igaCPGGz6IxEc04LdfvUN6BcJGHZ98bdbT/J3IjnJAwDUYWXZUKqfZSdoapUEtVga12Lk3cvv8/WKWNlNFYj3Qz42QOuBkQTlVV2sqGKtHkzhn+wkQyoUEbkNTaqtsVIPW3xNbvLpLi2laPOQic9XBEbs7tW9H9lXofn1168R0HtkCe7TRMZKoBFLQ==
doesnotexist.example.com. 3591 IN RRSIG NSEC 6 6 66 20240302200620 20240203200620 63939 example.com. vtM5AjaxYJLqDSXGuPkhtjH1S+YLhMkgg1YVrUpxt2QuY2APIjwUThKN3bPsht4vt/ydVchIMfkHeZRTV4a4yMfuDwr9j5gi/RhrnOLEfQyrBMT0chmKpnh/3gAjHSj9rWNwh1Lyk4p6xSwcKTkYWPHR2q6wPG9Kt6hWQpbLiU66lZE3q5DUvQmKhhorT+sdwVLbpgcilrRQ7Wj5ocXVMfVWmNPbpAg0trruqB7WbkWjkReb+v0bUCDRcGZnd+GJD+YA9rvn7cJHiJQHrURE1Gb6OdxHZslr3NTo+wizbGXN01SLOZHaLTqk+ke8qPW6RRrVwZQyk/13kPMN8Lnr7Q==
ENTRY_END
STEP 20 QUERY
ENTRY_BEGIN
REPLY RD AD
SECTION QUESTION
doesnotexist.example.com. IN RRSIG
ENTRY_END
STEP 21 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NOERROR
SECTION QUESTION
doesnotexist.example.com. IN RRSIG
SECTION ANSWER
doesnotexist.example.com. 60 IN RRSIG TXT 7 7 77 20240229091551 20240201091551 63939 example.com. l01lAi1yB6JvZtWoil1ZGhESrT/2sqr2I3YDey/Ub3npAJ/6TctahmIInnQHispcCZomv0N6/aIKpJSCvRrs5XZSjdD2mspnzyFSmYev6Lbf9spes3HkZtjwU7ANXcQN9g8eck4XIe6+KRFi40FCSpH/Ldf9igaCPGGz6IxEc04LdfvUN6BcJGHZ98bdbT/J3IjnJAwDUYWXZUKqfZSdoapUEtVga12Lk3cvv8/WKWNlNFYj3Qz42QOuBkQTlVV2sqGKtHkzhn+wkQyoUEbkNTaqtsVIPW3xNbvLpLi2laPOQic9XBEbs7tW9H9lXofn1168R0HtkCe7TRMZKoBFLQ==
doesnotexist.example.com. 3591 IN RRSIG NSEC 7 7 77 20240302200620 20240203200620 63939 example.com. vtM5AjaxYJLqDSXGuPkhtjH1S+YLhMkgg1YVrUpxt2QuY2APIjwUThKN3bPsht4vt/ydVchIMfkHeZRTV4a4yMfuDwr9j5gi/RhrnOLEfQyrBMT0chmKpnh/3gAjHSj9rWNwh1Lyk4p6xSwcKTkYWPHR2q6wPG9Kt6hWQpbLiU66lZE3q5DUvQmKhhorT+sdwVLbpgcilrRQ7Wj5ocXVMfVWmNPbpAg0trruqB7WbkWjkReb+v0bUCDRcGZnd+GJD+YA9rvn7cJHiJQHrURE1Gb6OdxHZslr3NTo+wizbGXN01SLOZHaLTqk+ke8qPW6RRrVwZQyk/13kPMN8Lnr7Q==
ENTRY_END
SCENARIO_END
+196
View File
@@ -0,0 +1,196 @@
; Test if NODATA is cached. We issue the same query twice.
; For the second query, make sure that we get an answer from the cache.
do-ip6: no
; config options
; target-fetch-policy: "3 2 1 0 0"
; name: "."
stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET.
CONFIG_END
SCENARIO_BEGIN Test AD flag set followed by AD flag clear.
; 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
; net.
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
net. IN NS
SECTION AUTHORITY
. IN SOA . . 0 0 0 0 0
ENTRY_END
; root-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN NS
SECTION ANSWER
root-servers.net. IN NS k.root-servers.net.
SECTION ADDITIONAL
k.root-servers.net. IN A 193.0.14.129
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN A
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN A
SECTION ANSWER
k.root-servers.net. IN A 193.0.14.129
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN AAAA
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
; gtld-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN NS
SECTION ANSWER
gtld-servers.net. IN NS a.gtld-servers.net.
SECTION ADDITIONAL
a.gtld-servers.net. IN A 192.5.6.30
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN A
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN A
SECTION ANSWER
a.gtld-servers.net. IN A 192.5.6.30
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN AAAA
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 0 9
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN SSHFP
SECTION AUTHORITY
example.com. 1800 IN SOA ns.icann.org. noc.dns.icann.org. 2024013008 7200 3600 1209600 3600
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 10 19
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD AA NOERROR
SECTION QUESTION
example.com. IN A
SECTION ANSWER
example.com. IN A 1.2.3.4
ENTRY_END
RANGE_END
STEP 1 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
example.com. IN SSHFP
ENTRY_END
STEP 2 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN SSHFP
SECTION AUTHORITY
example.com. 1800 IN SOA ns.icann.org. noc.dns.icann.org. 2024013008 7200 3600 1209600 3600
ENTRY_END
STEP 10 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
example.com. IN SSHFP
ENTRY_END
STEP 11 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN SSHFP
SECTION AUTHORITY
example.com. 1800 IN SOA ns.icann.org. noc.dns.icann.org. 2024013008 7200 3600 1209600 3600
ENTRY_END
SCENARIO_END
+189
View File
@@ -0,0 +1,189 @@
; Make sure an opcode other than QUERY is not cached. We issue the same request
; twice. For the second request, make sure that we do not get an answer from
; the cache.
do-ip6: no
; config options
; target-fetch-policy: "3 2 1 0 0"
; name: "."
stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET.
CONFIG_END
SCENARIO_BEGIN Test AD flag set followed by AD flag clear.
; 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
; net.
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
net. IN NS
SECTION AUTHORITY
. IN SOA . . 0 0 0 0 0
ENTRY_END
; root-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN NS
SECTION ANSWER
root-servers.net. IN NS k.root-servers.net.
SECTION ADDITIONAL
k.root-servers.net. IN A 193.0.14.129
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN A
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN A
SECTION ANSWER
k.root-servers.net. IN A 193.0.14.129
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN AAAA
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
; gtld-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN NS
SECTION ANSWER
gtld-servers.net. IN NS a.gtld-servers.net.
SECTION ADDITIONAL
a.gtld-servers.net. IN A 192.5.6.30
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN A
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN A
SECTION ANSWER
a.gtld-servers.net. IN A 192.5.6.30
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN AAAA
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 0 9
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR NOTIFY NOERROR
SECTION QUESTION
example.com. IN SOA
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 10 19
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR NOTIFY NOTIMP
SECTION QUESTION
example.com. IN SOA
ENTRY_END
RANGE_END
STEP 1 QUERY
ENTRY_BEGIN
REPLY NOTIFY
SECTION QUESTION
example.com. IN SOA
ENTRY_END
STEP 2 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR NOTIFY NOERROR
SECTION QUESTION
example.com. IN SOA
ENTRY_END
STEP 10 QUERY
ENTRY_BEGIN
REPLY NOTIFY
SECTION QUESTION
example.com. IN SOA
ENTRY_END
STEP 11 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR NOTIFY NOTIMP
SECTION QUESTION
example.com. IN SOA
ENTRY_END
SCENARIO_END
+196
View File
@@ -0,0 +1,196 @@
; Test if NXDOMAIN is cached. We issue the same query twice.
; For the second query, make sure that we get an answer from the cache.
do-ip6: no
; config options
; target-fetch-policy: "3 2 1 0 0"
; name: "."
stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET.
CONFIG_END
SCENARIO_BEGIN Test AD flag set followed by AD flag clear.
; 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
; net.
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
net. IN NS
SECTION AUTHORITY
. IN SOA . . 0 0 0 0 0
ENTRY_END
; root-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN NS
SECTION ANSWER
root-servers.net. IN NS k.root-servers.net.
SECTION ADDITIONAL
k.root-servers.net. IN A 193.0.14.129
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN A
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN A
SECTION ANSWER
k.root-servers.net. IN A 193.0.14.129
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN AAAA
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
; gtld-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN NS
SECTION ANSWER
gtld-servers.net. IN NS a.gtld-servers.net.
SECTION ADDITIONAL
a.gtld-servers.net. IN A 192.5.6.30
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN A
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN A
SECTION ANSWER
a.gtld-servers.net. IN A 192.5.6.30
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN AAAA
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 0 9
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD NXDOMAIN
SECTION QUESTION
doesnotexist.example.com. IN A
SECTION AUTHORITY
example.com. 1800 IN SOA ns.icann.org. noc.dns.icann.org. 2024013008 7200 3600 1209600 3600
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 10 19
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD AA NOERROR
SECTION QUESTION
example.com. IN A
SECTION ANSWER
example.com. IN A 1.2.3.4
ENTRY_END
RANGE_END
STEP 1 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
doesnotexist.example.com. IN A
ENTRY_END
STEP 2 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NXDOMAIN
SECTION QUESTION
doesnotexist.example.com. IN A
SECTION AUTHORITY
example.com. 1800 IN SOA ns.icann.org. noc.dns.icann.org. 2024013008 7200 3600 1209600 3600
ENTRY_END
STEP 10 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
doesnotexist.example.com. IN A
ENTRY_END
STEP 11 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NXDOMAIN
SECTION QUESTION
doesnotexist.example.com. IN A
SECTION AUTHORITY
example.com. 1800 IN SOA ns.icann.org. noc.dns.icann.org. 2024013008 7200 3600 1209600 3600
ENTRY_END
SCENARIO_END
+197
View File
@@ -0,0 +1,197 @@
; Test if RD caching works properly. First we issue a query with the RD flag
; set. Then we issue a test with the RD flag clear. Make sure that we get an
; answer from the cache.
do-ip6: no
; config options
; target-fetch-policy: "3 2 1 0 0"
; name: "."
stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET.
CONFIG_END
SCENARIO_BEGIN Test AD flag set followed by AD flag clear.
; 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
; net.
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
net. IN NS
SECTION AUTHORITY
. IN SOA . . 0 0 0 0 0
ENTRY_END
; root-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN NS
SECTION ANSWER
root-servers.net. IN NS k.root-servers.net.
SECTION ADDITIONAL
k.root-servers.net. IN A 193.0.14.129
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN A
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN A
SECTION ANSWER
k.root-servers.net. IN A 193.0.14.129
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN AAAA
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
; gtld-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN NS
SECTION ANSWER
gtld-servers.net. IN NS a.gtld-servers.net.
SECTION ADDITIONAL
a.gtld-servers.net. IN A 192.5.6.30
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN A
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN A
SECTION ANSWER
a.gtld-servers.net. IN A 192.5.6.30
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN AAAA
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 0 9
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 10 19
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD AD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2001:DB8::1
ENTRY_END
RANGE_END
STEP 1 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
example.com. IN AAAA
ENTRY_END
STEP 2 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
STEP 10 QUERY
ENTRY_BEGIN
REPLY
SECTION QUESTION
example.com. IN AAAA
ENTRY_END
STEP 11 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
SCENARIO_END
+207
View File
@@ -0,0 +1,207 @@
; Test if RD caching works properly. First we issue a query with the RD flag
; clear. Then we issue a test with the RD flag set. Make sure that we
; don't get an answer from the cache.
do-ip6: no
; config options
; target-fetch-policy: "3 2 1 0 0"
; name: "."
stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET.
CONFIG_END
SCENARIO_BEGIN Test AD flag set followed by AD flag clear.
; 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
; net.
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
net. IN NS
SECTION AUTHORITY
. IN SOA . . 0 0 0 0 0
ENTRY_END
; root-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN NS
SECTION ANSWER
root-servers.net. IN NS k.root-servers.net.
SECTION ADDITIONAL
k.root-servers.net. IN A 193.0.14.129
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN A
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN A
SECTION ANSWER
k.root-servers.net. IN A 193.0.14.129
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN AAAA
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
; gtld-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN NS
SECTION ANSWER
gtld-servers.net. IN NS a.gtld-servers.net.
SECTION ADDITIONAL
a.gtld-servers.net. IN A 192.5.6.30
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN A
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN A
SECTION ANSWER
a.gtld-servers.net. IN A 192.5.6.30
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN AAAA
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 0 9
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname RD
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2001:DB8::2
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 10 19
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname RD
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2001:DB8::1
ENTRY_END
RANGE_END
STEP 1 QUERY
ENTRY_BEGIN
REPLY
SECTION QUESTION
example.com. IN AAAA
ENTRY_END
STEP 2 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
STEP 10 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
example.com. IN AAAA
ENTRY_END
STEP 11 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2001:DB8::1
ENTRY_END
SCENARIO_END
+208
View File
@@ -0,0 +1,208 @@
; Make sure errors other than NXDOMAIN are cached. Test REFUSED. We issue
; the same query twice. For the second query, make sure that we get
; an answer from the cache. Wait 60 seconds, issue a new request and
; make sure it does not come from the cache.
do-ip6: no
; config options
; target-fetch-policy: "3 2 1 0 0"
; name: "."
stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET.
CONFIG_END
SCENARIO_BEGIN Test AD flag set followed by AD flag clear.
; 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
; net.
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
net. IN NS
SECTION AUTHORITY
. IN SOA . . 0 0 0 0 0
ENTRY_END
; root-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN NS
SECTION ANSWER
root-servers.net. IN NS k.root-servers.net.
SECTION ADDITIONAL
k.root-servers.net. IN A 193.0.14.129
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN A
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN A
SECTION ANSWER
k.root-servers.net. IN A 193.0.14.129
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN AAAA
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
; gtld-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN NS
SECTION ANSWER
gtld-servers.net. IN NS a.gtld-servers.net.
SECTION ADDITIONAL
a.gtld-servers.net. IN A 192.5.6.30
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN A
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN A
SECTION ANSWER
a.gtld-servers.net. IN A 192.5.6.30
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN AAAA
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 0 9
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD REFUSED
SECTION QUESTION
example.com. IN SSHFP
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 10 29
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD FORMERR
SECTION QUESTION
example.com. IN SSHFP
ENTRY_END
RANGE_END
STEP 1 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
example.com. IN SSHFP
ENTRY_END
STEP 2 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD REFUSED
SECTION QUESTION
example.com. IN SSHFP
ENTRY_END
STEP 10 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
example.com. IN SSHFP
ENTRY_END
STEP 11 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD REFUSED
SECTION QUESTION
example.com. IN SSHFP
ENTRY_END
STEP 12 TIME_PASSES ELAPSE 60
STEP 20 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
example.com. IN SSHFP
ENTRY_END
STEP 21 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD FORMERR
SECTION QUESTION
example.com. IN SSHFP
ENTRY_END
SCENARIO_END
@@ -0,0 +1,178 @@
; Make sure transport errors are cached. The first two queries are hand
; crafted. Let some time elapse and issue a normal query to see if the
; cache entry has expired.
do-ip6: no
; config options
; target-fetch-policy: "3 2 1 0 0"
; name: "."
stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET.
CONFIG_END
SCENARIO_BEGIN Test AD flag set followed by AD flag clear.
; 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
; net.
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
net. IN NS
SECTION AUTHORITY
. IN SOA . . 0 0 0 0 0
ENTRY_END
; root-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN NS
SECTION ANSWER
root-servers.net. IN NS k.root-servers.net.
SECTION ADDITIONAL
k.root-servers.net. IN A 193.0.14.129
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN A
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN A
SECTION ANSWER
k.root-servers.net. IN A 193.0.14.129
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN AAAA
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
; gtld-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN NS
SECTION ANSWER
gtld-servers.net. IN NS a.gtld-servers.net.
SECTION ADDITIONAL
a.gtld-servers.net. IN A 192.5.6.30
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN A
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN A
SECTION ANSWER
a.gtld-servers.net. IN A 192.5.6.30
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN AAAA
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 0 9
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD REFUSED
SECTION QUESTION
example.com. IN SSHFP
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 10 19
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD FORMERR
SECTION QUESTION
example.com. IN SSHFP
ENTRY_END
RANGE_END
STEP 1 TIME_PASSES ELAPSE 10
STEP 10 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
example.com. IN SSHFP
ENTRY_END
STEP 11 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD FORMERR
SECTION QUESTION
example.com. IN SSHFP
ENTRY_END
SCENARIO_END
+219
View File
@@ -0,0 +1,219 @@
; Test if caching properly decrements the TTL and expire entries. First we
; issue a query. Then let some time elapse and query again. Verify that the
; TTL has decremented. Then let more time elapse and verify that a new
; request is issued.
do-ip6: no
; config options
; target-fetch-policy: "3 2 1 0 0"
; name: "."
stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET.
CONFIG_END
SCENARIO_BEGIN Test AD flag set followed by AD flag clear.
; 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
; net.
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
net. IN NS
SECTION AUTHORITY
. IN SOA . . 0 0 0 0 0
ENTRY_END
; root-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN NS
SECTION ANSWER
root-servers.net. IN NS k.root-servers.net.
SECTION ADDITIONAL
k.root-servers.net. IN A 193.0.14.129
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN A
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN A
SECTION ANSWER
k.root-servers.net. IN A 193.0.14.129
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN AAAA
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
; gtld-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN NS
SECTION ANSWER
gtld-servers.net. IN NS a.gtld-servers.net.
SECTION ADDITIONAL
a.gtld-servers.net. IN A 192.5.6.30
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN A
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN A
SECTION ANSWER
a.gtld-servers.net. IN A 192.5.6.30
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN AAAA
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 0 9
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. 3600 IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 10 29
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2001:DB8::1
ENTRY_END
RANGE_END
STEP 1 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
example.com. IN AAAA
ENTRY_END
STEP 2 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
STEP 3 TIME_PASSES ELAPSE 1800
STEP 10 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
example.com. IN AAAA
ENTRY_END
STEP 11 CHECK_ANSWER
ENTRY_BEGIN
MATCH all ttl
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. 1800 IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
STEP 12 TIME_PASSES ELAPSE 3600
STEP 20 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
example.com. IN AAAA
ENTRY_END
STEP 21 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NOERROR
SECTION QUESTION
example.com. IN AAAA
SECTION ANSWER
example.com. IN AAAA 2001:DB8::1
ENTRY_END
SCENARIO_END
@@ -0,0 +1,448 @@
; Test if caching properly decrements the TTL in all sections and expires
; entries if the minimum TTL is in the different section.
; Probe 3 different results, with the minimum in respectively the answer,
; authority, and additional sections. For each result, check half way through
; the expire time to check if TTL is decremented properly and check after the
; entry has expired to see if a new request goes out.
do-ip6: no
; config options
; target-fetch-policy: "3 2 1 0 0"
; name: "."
stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET.
CONFIG_END
SCENARIO_BEGIN Test AD flag set followed by AD flag clear.
; 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
; net.
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
net. IN NS
SECTION AUTHORITY
. IN SOA . . 0 0 0 0 0
ENTRY_END
; root-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN NS
SECTION ANSWER
root-servers.net. IN NS k.root-servers.net.
SECTION ADDITIONAL
k.root-servers.net. IN A 193.0.14.129
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
root-servers.net. IN A
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN A
SECTION ANSWER
k.root-servers.net. IN A 193.0.14.129
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
k.root-servers.net. IN AAAA
SECTION AUTHORITY
root-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
; gtld-servers.net.
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN NS
SECTION ANSWER
gtld-servers.net. IN NS a.gtld-servers.net.
SECTION ADDITIONAL
a.gtld-servers.net. IN A 192.5.6.30
ENTRY_END
ENTRY_BEGIN
MATCH opcode qname
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
gtld-servers.net. IN A
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN A
SECTION ANSWER
a.gtld-servers.net. IN A 192.5.6.30
SECTION ADDITIONAL
ENTRY_END
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
a.gtld-servers.net. IN AAAA
SECTION AUTHORITY
gtld-servers.net. IN SOA . . 0 0 0 0 0
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 0 9
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
a.example.com. IN AAAA
SECTION ANSWER
a.example.com. 3600 IN AAAA 2001:DB8::1
SECTION AUTHORITY
example.com. 172800 IN NS a.iana-servers.net.
example.com. 172800 IN NS b.iana-servers.net.
SECTION ADDITIONAL
a.iana-servers.net. 172800 IN A 199.43.135.53
b.iana-servers.net. 172800 IN A 199.43.133.53
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 10 29
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
a.example.com. IN AAAA
SECTION ANSWER
a.example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
RANGE_END
RANGE_BEGIN 30 39
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
b.example.com. IN AAAA
SECTION ANSWER
b.example.com. 172800 IN AAAA 2001:DB8::2
SECTION AUTHORITY
example.com. 3600 IN NS a.iana-servers.net.
example.com. 3600 IN NS b.iana-servers.net.
SECTION ADDITIONAL
a.iana-servers.net. 172800 IN A 199.43.135.53
b.iana-servers.net. 172800 IN A 199.43.133.53
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 50 59
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
b.example.com. IN AAAA
SECTION ANSWER
b.example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
RANGE_END
RANGE_BEGIN 60 69
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
c.example.com. IN AAAA
SECTION ANSWER
c.example.com. 172800 IN AAAA 2001:DB8::3
SECTION AUTHORITY
example.com. 172800 IN NS a.iana-servers.net.
example.com. 172800 IN NS b.iana-servers.net.
SECTION ADDITIONAL
a.iana-servers.net. 3600 IN A 199.43.135.53
b.iana-servers.net. 3600 IN A 199.43.133.53
ENTRY_END
RANGE_END
; a.gtld-servers.net.
RANGE_BEGIN 80 89
ADDRESS 192.5.6.30
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id copy_query
REPLY QR RD NOERROR
SECTION QUESTION
c.example.com. IN AAAA
SECTION ANSWER
c.example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
RANGE_END
STEP 1 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
a.example.com. IN AAAA
ENTRY_END
STEP 2 CHECK_ANSWER
ENTRY_BEGIN
MATCH all ttl
REPLY QR RD NOERROR
SECTION QUESTION
a.example.com. IN AAAA
SECTION ANSWER
a.example.com. 3600 IN AAAA 2001:DB8::1
SECTION AUTHORITY
example.com. 172800 IN NS a.iana-servers.net.
example.com. 172800 IN NS b.iana-servers.net.
SECTION ADDITIONAL
a.iana-servers.net. 172800 IN A 199.43.135.53
b.iana-servers.net. 172800 IN A 199.43.133.53
ENTRY_END
STEP 3 TIME_PASSES ELAPSE 1800
STEP 10 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
a.example.com. IN AAAA
ENTRY_END
STEP 11 CHECK_ANSWER
ENTRY_BEGIN
MATCH all ttl
REPLY QR RD NOERROR
SECTION QUESTION
a.example.com. IN AAAA
SECTION ANSWER
a.example.com. 1800 IN AAAA 2001:DB8::1
SECTION AUTHORITY
example.com. 171000 IN NS a.iana-servers.net.
example.com. 171000 IN NS b.iana-servers.net.
SECTION ADDITIONAL
a.iana-servers.net. 171000 IN A 199.43.135.53
b.iana-servers.net. 171000 IN A 199.43.133.53
ENTRY_END
STEP 12 TIME_PASSES ELAPSE 3600
STEP 20 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
a.example.com. IN AAAA
ENTRY_END
STEP 21 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NOERROR
SECTION QUESTION
a.example.com. IN AAAA
SECTION ANSWER
a.example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
STEP 31 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
b.example.com. IN AAAA
ENTRY_END
STEP 32 CHECK_ANSWER
ENTRY_BEGIN
MATCH all ttl
REPLY QR RD NOERROR
SECTION QUESTION
b.example.com. IN AAAA
SECTION ANSWER
b.example.com. 172800 IN AAAA 2001:DB8::2
SECTION AUTHORITY
example.com. 3600 IN NS a.iana-servers.net.
example.com. 3600 IN NS b.iana-servers.net.
SECTION ADDITIONAL
a.iana-servers.net. 172800 IN A 199.43.135.53
b.iana-servers.net. 172800 IN A 199.43.133.53
ENTRY_END
STEP 33 TIME_PASSES ELAPSE 1800
STEP 40 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
b.example.com. IN AAAA
ENTRY_END
STEP 41 CHECK_ANSWER
ENTRY_BEGIN
MATCH all ttl
REPLY QR RD NOERROR
SECTION QUESTION
b.example.com. IN AAAA
SECTION ANSWER
b.example.com. 171000 IN AAAA 2001:DB8::2
SECTION AUTHORITY
example.com. 1800 IN NS a.iana-servers.net.
example.com. 1800 IN NS b.iana-servers.net.
SECTION ADDITIONAL
a.iana-servers.net. 171000 IN A 199.43.135.53
b.iana-servers.net. 171000 IN A 199.43.133.53
ENTRY_END
STEP 42 TIME_PASSES ELAPSE 3600
STEP 50 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
b.example.com. IN AAAA
ENTRY_END
STEP 51 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NOERROR
SECTION QUESTION
b.example.com. IN AAAA
SECTION ANSWER
b.example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
STEP 61 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
c.example.com. IN AAAA
ENTRY_END
STEP 62 CHECK_ANSWER
ENTRY_BEGIN
MATCH all ttl
REPLY QR RD NOERROR
SECTION QUESTION
c.example.com. IN AAAA
SECTION ANSWER
c.example.com. 172800 IN AAAA 2001:DB8::3
SECTION AUTHORITY
example.com. 172800 IN NS a.iana-servers.net.
example.com. 172800 IN NS b.iana-servers.net.
SECTION ADDITIONAL
a.iana-servers.net. 3600 IN A 199.43.135.53
b.iana-servers.net. 3600 IN A 199.43.133.53
ENTRY_END
STEP 63 TIME_PASSES ELAPSE 1800
STEP 70 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
c.example.com. IN AAAA
ENTRY_END
STEP 71 CHECK_ANSWER
ENTRY_BEGIN
MATCH all ttl
REPLY QR RD NOERROR
SECTION QUESTION
c.example.com. IN AAAA
SECTION ANSWER
c.example.com. 171000 IN AAAA 2001:DB8::3
SECTION AUTHORITY
example.com. 171000 IN NS a.iana-servers.net.
example.com. 171000 IN NS b.iana-servers.net.
SECTION ADDITIONAL
a.iana-servers.net. 1800 IN A 199.43.135.53
b.iana-servers.net. 1800 IN A 199.43.133.53
ENTRY_END
STEP 72 TIME_PASSES ELAPSE 3600
STEP 80 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
c.example.com. IN AAAA
ENTRY_END
STEP 81 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD NOERROR
SECTION QUESTION
c.example.com. IN AAAA
SECTION ANSWER
c.example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ENTRY_END
SCENARIO_END