summaryrefslogtreecommitdiff
path: root/testdata/iter_prefetch_change2.rpl
diff options
context:
space:
mode:
Diffstat (limited to 'testdata/iter_prefetch_change2.rpl')
-rw-r--r--testdata/iter_prefetch_change2.rpl313
1 files changed, 313 insertions, 0 deletions
diff --git a/testdata/iter_prefetch_change2.rpl b/testdata/iter_prefetch_change2.rpl
new file mode 100644
index 000000000000..93196d555f72
--- /dev/null
+++ b/testdata/iter_prefetch_change2.rpl
@@ -0,0 +1,313 @@
+; config options
+server:
+ target-fetch-policy: "0 0 0 0 0"
+ prefetch: "yes"
+
+stub-zone:
+ name: "."
+ stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET.
+CONFIG_END
+
+SCENARIO_BEGIN Test resolver prefetch and a moved domain 2.
+; for slightly different query pattern.
+
+; K.ROOT-SERVERS.NET.
+RANGE_BEGIN 0 500
+ ADDRESS 193.0.14.129
+ENTRY_BEGIN
+MATCH opcode qtype qname
+ADJUST copy_id
+REPLY QR NOERROR
+SECTION QUESTION
+. IN NS
+SECTION ANSWER
+. IN NS K.ROOT-SERVERS.NET.
+SECTION ADDITIONAL
+K.ROOT-SERVERS.NET. IN A 193.0.14.129
+ENTRY_END
+
+ENTRY_BEGIN
+MATCH opcode subdomain
+ADJUST copy_id copy_query
+REPLY QR NOERROR
+SECTION QUESTION
+com. IN A
+SECTION AUTHORITY
+com. IN NS a.gtld-servers.net.
+SECTION ADDITIONAL
+a.gtld-servers.net. IN A 192.5.6.30
+ENTRY_END
+RANGE_END
+
+; a.gtld-servers.net. (before sale of domain)
+RANGE_BEGIN 0 30
+ ADDRESS 192.5.6.30
+ENTRY_BEGIN
+MATCH opcode qtype qname
+ADJUST copy_id
+REPLY QR NOERROR
+SECTION QUESTION
+com. IN NS
+SECTION ANSWER
+com. IN NS a.gtld-servers.net.
+SECTION ADDITIONAL
+a.gtld-servers.net. IN A 192.5.6.30
+ENTRY_END
+
+ENTRY_BEGIN
+MATCH opcode subdomain
+ADJUST copy_id copy_query
+REPLY QR NOERROR
+SECTION QUESTION
+example.com. IN A
+SECTION AUTHORITY
+example.com. 86400 IN NS old-ns.example.com.
+SECTION ADDITIONAL
+old-ns.example.com. 86400 IN A 192.168.0.1
+ENTRY_END
+RANGE_END
+
+; a.gtld-servers.net. (after sale of domain)
+RANGE_BEGIN 40 500
+ ADDRESS 192.5.6.30
+ENTRY_BEGIN
+MATCH opcode qtype qname
+ADJUST copy_id
+REPLY QR NOERROR
+SECTION QUESTION
+com. IN NS
+SECTION ANSWER
+com. IN NS a.gtld-servers.net.
+SECTION ADDITIONAL
+a.gtld-servers.net. IN A 192.5.6.30
+ENTRY_END
+
+ENTRY_BEGIN
+MATCH opcode subdomain
+ADJUST copy_id copy_query
+REPLY QR NOERROR
+SECTION QUESTION
+example.com. IN A
+SECTION AUTHORITY
+example.com. 86400 IN NS new-ns.example.com.
+SECTION ADDITIONAL
+new-ns.example.com. 86400 IN A 172.16.0.1
+ENTRY_END
+RANGE_END
+
+; ns.example.com. first owner
+RANGE_BEGIN 0 500
+ ADDRESS 192.168.0.1
+ENTRY_BEGIN
+MATCH opcode qtype qname
+ADJUST copy_id
+REPLY QR AA NOERROR
+SECTION QUESTION
+example.com. IN NS
+SECTION ANSWER
+example.com. 300 IN NS old-ns.example.com.
+SECTION ADDITIONAL
+old-ns.example.com. 300 IN A 192.168.0.1
+ENTRY_END
+
+ENTRY_BEGIN
+MATCH opcode qtype qname
+ADJUST copy_id
+REPLY QR AA NOERROR
+SECTION QUESTION
+www.example.com. IN A
+SECTION ANSWER
+www.example.com. 300 IN A 10.1.1.1
+SECTION AUTHORITY
+example.com. 300 IN NS old-ns.example.com.
+SECTION ADDITIONAL
+old-ns.example.com. 300 IN A 192.168.0.1
+ENTRY_END
+RANGE_END
+
+; ns.example.com. new owner
+RANGE_BEGIN 0 500
+ ADDRESS 172.16.0.1
+ENTRY_BEGIN
+MATCH opcode qtype qname
+ADJUST copy_id
+REPLY QR AA NOERROR
+SECTION QUESTION
+example.com. IN NS
+SECTION ANSWER
+example.com. 86400 IN NS new-ns.example.com.
+SECTION ADDITIONAL
+new-ns.example.com. 86400 IN A 172.16.0.1
+ENTRY_END
+
+ENTRY_BEGIN
+MATCH opcode qtype qname
+ADJUST copy_id
+REPLY QR AA NOERROR
+SECTION QUESTION
+old-ns.example.com. IN A
+SECTION ANSWER
+old-ns.example.com. 86400 IN A 172.16.0.1
+SECTION AUTHORITY
+example.com. 86400 IN NS new-ns.example.com.
+SECTION ADDITIONAL
+new-ns.example.com. 86400 IN A 172.16.0.1
+ENTRY_END
+
+ENTRY_BEGIN
+MATCH opcode qtype qname
+ADJUST copy_id
+REPLY QR AA NOERROR
+SECTION QUESTION
+www.example.com. IN A
+SECTION ANSWER
+www.example.com. 86400 IN A 10.2.2.2
+SECTION AUTHORITY
+example.com. 86400 IN NS new-ns.example.com.
+SECTION ADDITIONAL
+new-ns.example.com. 86400 IN A 172.16.0.1
+ENTRY_END
+RANGE_END
+
+STEP 1 QUERY
+ENTRY_BEGIN
+REPLY RD
+SECTION QUESTION
+www.example.com. IN A
+ENTRY_END
+; recursion happens here.
+STEP 10 CHECK_ANSWER
+ENTRY_BEGIN
+MATCH all ttl
+REPLY QR RD RA NOERROR
+SECTION QUESTION
+www.example.com. IN A
+SECTION ANSWER
+www.example.com. 300 IN A 10.1.1.1
+SECTION AUTHORITY
+example.com. 300 IN NS old-ns.example.com.
+SECTION ADDITIONAL
+old-ns.example.com. 300 IN A 192.168.0.1
+ENTRY_END
+
+; after 40 secs still the cached answer
+STEP 20 TIME_PASSES ELAPSE 40
+
+STEP 30 QUERY
+ENTRY_BEGIN
+REPLY RD
+SECTION QUESTION
+www.example.com. IN A
+ENTRY_END
+; recursion happens here.
+STEP 40 CHECK_ANSWER
+ENTRY_BEGIN
+MATCH all ttl
+REPLY QR RD RA NOERROR
+SECTION QUESTION
+www.example.com. IN A
+SECTION ANSWER
+www.example.com. 260 IN A 10.1.1.1
+SECTION AUTHORITY
+example.com. 260 IN NS old-ns.example.com.
+SECTION ADDITIONAL
+old-ns.example.com. 260 IN A 192.168.0.1
+ENTRY_END
+
+; after 230 we are 30 seconds before expiry, prefetch happens.
+STEP 50 TIME_PASSES ELAPSE 230
+
+STEP 60 QUERY
+ENTRY_BEGIN
+REPLY RD
+SECTION QUESTION
+www.example.com. IN A
+ENTRY_END
+; recursion happens here.
+STEP 70 CHECK_ANSWER
+ENTRY_BEGIN
+MATCH all ttl
+REPLY QR RD RA NOERROR
+SECTION QUESTION
+www.example.com. IN A
+SECTION ANSWER
+www.example.com. 30 IN A 10.1.1.1
+SECTION AUTHORITY
+example.com. 30 IN NS old-ns.example.com.
+SECTION ADDITIONAL
+old-ns.example.com. 30 IN A 192.168.0.1
+ENTRY_END
+
+STEP 80 TRAFFIC
+; let traffic flow for prefetch to happen
+
+; we updated from the old-ns.
+STEP 90 QUERY
+ENTRY_BEGIN
+REPLY RD
+SECTION QUESTION
+www.example.com. IN A
+ENTRY_END
+; recursion happens here.
+STEP 100 CHECK_ANSWER
+ENTRY_BEGIN
+MATCH all ttl
+REPLY QR RD RA NOERROR
+SECTION QUESTION
+www.example.com. IN A
+SECTION ANSWER
+www.example.com. 86400 IN A 10.2.2.2
+SECTION AUTHORITY
+example.com. 86400 IN NS new-ns.example.com.
+SECTION ADDITIONAL
+new-ns.example.com. 86400 IN A 172.16.0.1
+ENTRY_END
+
+; the NS record times out after 31 seconds.
+STEP 160 TIME_PASSES ELAPSE 31
+
+; fetch it
+STEP 170 QUERY
+ENTRY_BEGIN
+REPLY RD
+SECTION QUESTION
+www.example.com. IN A
+ENTRY_END
+; recursion happens here.
+STEP 180 CHECK_ANSWER
+ENTRY_BEGIN
+MATCH all ttl
+REPLY QR RD RA NOERROR
+SECTION QUESTION
+www.example.com. IN A
+SECTION ANSWER
+www.example.com. 86369 IN A 10.2.2.2
+SECTION AUTHORITY
+example.com. 86369 IN NS new-ns.example.com.
+SECTION ADDITIONAL
+new-ns.example.com. 86369 IN A 172.16.0.1
+ENTRY_END
+
+; a reply from cache
+STEP 190 QUERY
+ENTRY_BEGIN
+REPLY RD
+SECTION QUESTION
+www.example.com. IN A
+ENTRY_END
+; recursion happens here.
+STEP 200 CHECK_ANSWER
+ENTRY_BEGIN
+MATCH all ttl
+REPLY QR RD RA NOERROR
+SECTION QUESTION
+www.example.com. IN A
+SECTION ANSWER
+www.example.com. 86369 IN A 10.2.2.2
+SECTION AUTHORITY
+example.com. 86369 IN NS new-ns.example.com.
+SECTION ADDITIONAL
+new-ns.example.com. 86369 IN A 172.16.0.1
+ENTRY_END
+
+SCENARIO_END