3 target-fetch-policy: "0 0 0 0 0"
8 stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET.
11 SCENARIO_BEGIN Test resolver prefetch and a moved domain
18 MATCH opcode qtype qname
24 . IN NS K.ROOT-SERVERS.NET.
26 K.ROOT-SERVERS.NET. IN A 193.0.14.129
30 MATCH opcode subdomain
31 ADJUST copy_id copy_query
36 com. IN NS a.gtld-servers.net.
38 a.gtld-servers.net. IN A 192.5.6.30
42 ; a.gtld-servers.net. (before sale of domain)
46 MATCH opcode qtype qname
52 com. IN NS a.gtld-servers.net.
54 a.gtld-servers.net. IN A 192.5.6.30
58 MATCH opcode subdomain
59 ADJUST copy_id copy_query
64 example.com. 86400 IN NS old-ns.example.com.
66 old-ns.example.com. 86400 IN A 192.168.0.1
70 ; a.gtld-servers.net. (after sale of domain)
74 MATCH opcode qtype qname
80 com. IN NS a.gtld-servers.net.
82 a.gtld-servers.net. IN A 192.5.6.30
86 MATCH opcode subdomain
87 ADJUST copy_id copy_query
92 example.com. 86400 IN NS new-ns.example.com.
94 new-ns.example.com. 86400 IN A 172.16.0.1
98 ; ns.example.com. first owner
102 MATCH opcode qtype qname
108 example.com. 86400 IN NS old-ns.example.com.
110 old-ns.example.com. 86400 IN A 192.168.0.1
114 MATCH opcode qtype qname
118 www.example.com. IN A
120 www.example.com. 3600 IN A 10.1.1.1
122 example.com. 86400 IN NS old-ns.example.com.
124 old-ns.example.com. 86400 IN A 192.168.0.1
128 ; ns.example.com. new owner
132 MATCH opcode qtype qname
138 example.com. 86400 IN NS new-ns.example.com.
140 new-ns.example.com. 86400 IN A 172.16.0.1
144 MATCH opcode qtype qname
148 old-ns.example.com. IN A
150 old-ns.example.com. 86400 IN A 172.16.0.1
152 example.com. 86400 IN NS new-ns.example.com.
154 new-ns.example.com. 86400 IN A 172.16.0.1
158 MATCH opcode qtype qname
162 www.example.com. IN A
164 www.example.com. 3600 IN A 10.2.2.2
166 example.com. 86400 IN NS new-ns.example.com.
168 new-ns.example.com. 86400 IN A 172.16.0.1
176 www.example.com. IN A
178 ; recursion happens here.
182 REPLY QR RD RA NOERROR
184 www.example.com. IN A
186 www.example.com. 3600 IN A 10.1.1.1
188 example.com. 86400 IN NS old-ns.example.com.
190 old-ns.example.com. 86400 IN A 192.168.0.1
193 ; after 1800 secs still the cached answer
194 STEP 20 TIME_PASSES ELAPSE 1800
200 www.example.com. IN A
202 ; recursion happens here.
206 REPLY QR RD RA NOERROR
208 www.example.com. IN A
210 www.example.com. 1800 IN A 10.1.1.1
212 example.com. 84600 IN NS old-ns.example.com.
214 old-ns.example.com. 84600 IN A 192.168.0.1
217 ; after 1440 we are 360 seconds before the expiry
218 ; but it still contacts the old-ns
219 STEP 50 TIME_PASSES ELAPSE 1440
225 www.example.com. IN A
227 ; recursion happens here.
231 REPLY QR RD RA NOERROR
233 www.example.com. IN A
235 www.example.com. 360 IN A 10.1.1.1
237 example.com. 83160 IN NS old-ns.example.com.
239 old-ns.example.com. 83160 IN A 192.168.0.1
243 ; let traffic flow for prefetch to happen
245 ; we updated from the old-ns.
250 www.example.com. IN A
252 ; recursion happens here.
253 STEP 100 CHECK_ANSWER
256 REPLY QR RD RA NOERROR
258 www.example.com. IN A
260 www.example.com. 3600 IN A 10.1.1.1
262 example.com. 83160 IN NS old-ns.example.com.
264 old-ns.example.com. 83160 IN A 192.168.0.1
267 ; the NS record is now 10% from expiry (8640 TTL left).
268 ; and the A record has expired completely, retry.
269 STEP 110 TIME_PASSES ELAPSE 74520
271 ; the NS record should have timed out.
272 ; but you see the full TTL here, this is only for *this query*
273 ; in the cache itself its 8640, not 86400.
278 www.example.com. IN A
280 ; recursion happens here.
281 STEP 130 CHECK_ANSWER
284 REPLY QR RD RA NOERROR
286 www.example.com. IN A
288 www.example.com. 3600 IN A 10.1.1.1
290 example.com. 8640 IN NS old-ns.example.com.
292 old-ns.example.com. 8640 IN A 192.168.0.1
300 www.example.com. IN A
302 ; recursion happens here.
303 STEP 150 CHECK_ANSWER
306 REPLY QR RD RA NOERROR
308 www.example.com. IN A
310 www.example.com. 3600 IN A 10.1.1.1
312 example.com. 8640 IN NS old-ns.example.com.
314 old-ns.example.com. 8640 IN A 192.168.0.1
317 ; the NS record times out after 8640 seconds.
318 STEP 160 TIME_PASSES ELAPSE 8641
325 www.example.com. IN A
327 ; recursion happens here.
328 STEP 180 CHECK_ANSWER
331 REPLY QR RD RA NOERROR
333 www.example.com. IN A
335 www.example.com. 3600 IN A 10.2.2.2
337 example.com. 86400 IN NS new-ns.example.com.
339 new-ns.example.com. 86400 IN A 172.16.0.1
347 www.example.com. IN A
349 ; recursion happens here.
350 STEP 200 CHECK_ANSWER
353 REPLY QR RD RA NOERROR
355 www.example.com. IN A
357 www.example.com. 3600 IN A 10.2.2.2
359 example.com. 86400 IN NS new-ns.example.com.
361 new-ns.example.com. 86400 IN A 172.16.0.1