]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - testdata/iter_prefetch_change.rpl
Vendor import of Unbound 1.9.0.
[FreeBSD/FreeBSD.git] / testdata / iter_prefetch_change.rpl
1 ; config options
2 server:
3         target-fetch-policy: "0 0 0 0 0"
4         prefetch: "yes"
5         minimal-responses: no
6
7 stub-zone:
8         name: "."
9         stub-addr: 193.0.14.129         # K.ROOT-SERVERS.NET.
10 CONFIG_END
11
12 SCENARIO_BEGIN Test resolver prefetch and a moved domain
13 ; for bug #425.
14
15 ; K.ROOT-SERVERS.NET.
16 RANGE_BEGIN 0 500
17         ADDRESS 193.0.14.129 
18 ENTRY_BEGIN
19 MATCH opcode qtype qname
20 ADJUST copy_id
21 REPLY QR NOERROR
22 SECTION QUESTION
23 . IN NS
24 SECTION ANSWER
25 . IN NS K.ROOT-SERVERS.NET.
26 SECTION ADDITIONAL
27 K.ROOT-SERVERS.NET.     IN      A       193.0.14.129
28 ENTRY_END
29
30 ENTRY_BEGIN
31 MATCH opcode subdomain
32 ADJUST copy_id copy_query
33 REPLY QR NOERROR
34 SECTION QUESTION
35 com. IN A
36 SECTION AUTHORITY
37 com.    IN NS   a.gtld-servers.net.
38 SECTION ADDITIONAL
39 a.gtld-servers.net.     IN      A       192.5.6.30
40 ENTRY_END
41 RANGE_END
42
43 ; a.gtld-servers.net. (before sale of domain)
44 RANGE_BEGIN 0 30
45         ADDRESS 192.5.6.30
46 ENTRY_BEGIN
47 MATCH opcode qtype qname
48 ADJUST copy_id
49 REPLY QR NOERROR
50 SECTION QUESTION
51 com. IN NS
52 SECTION ANSWER
53 com.    IN NS   a.gtld-servers.net.
54 SECTION ADDITIONAL
55 a.gtld-servers.net.     IN      A       192.5.6.30
56 ENTRY_END
57
58 ENTRY_BEGIN
59 MATCH opcode subdomain
60 ADJUST copy_id copy_query
61 REPLY QR NOERROR
62 SECTION QUESTION
63 example.com. IN A
64 SECTION AUTHORITY
65 example.com.    86400 IN NS     old-ns.example.com.
66 SECTION ADDITIONAL
67 old-ns.example.com.             86400 IN        A       192.168.0.1
68 ENTRY_END
69 RANGE_END
70
71 ; a.gtld-servers.net. (after sale of domain)
72 RANGE_BEGIN 40 500
73         ADDRESS 192.5.6.30
74 ENTRY_BEGIN
75 MATCH opcode qtype qname
76 ADJUST copy_id
77 REPLY QR NOERROR
78 SECTION QUESTION
79 com. IN NS
80 SECTION ANSWER
81 com.    IN NS   a.gtld-servers.net.
82 SECTION ADDITIONAL
83 a.gtld-servers.net.     IN      A       192.5.6.30
84 ENTRY_END
85
86 ENTRY_BEGIN
87 MATCH opcode subdomain
88 ADJUST copy_id copy_query
89 REPLY QR NOERROR
90 SECTION QUESTION
91 example.com. IN A
92 SECTION AUTHORITY
93 example.com.    86400 IN NS     new-ns.example.com.
94 SECTION ADDITIONAL
95 new-ns.example.com.             86400 IN        A       172.16.0.1
96 ENTRY_END
97 RANGE_END
98
99 ; ns.example.com. first owner
100 RANGE_BEGIN 0 500
101         ADDRESS 192.168.0.1
102 ENTRY_BEGIN
103 MATCH opcode qtype qname
104 ADJUST copy_id
105 REPLY QR AA NOERROR
106 SECTION QUESTION
107 example.com. IN NS
108 SECTION ANSWER
109 example.com.    86400 IN NS     old-ns.example.com.
110 SECTION ADDITIONAL
111 old-ns.example.com.             86400 IN        A       192.168.0.1
112 ENTRY_END
113
114 ENTRY_BEGIN
115 MATCH opcode qtype qname
116 ADJUST copy_id
117 REPLY QR AA NOERROR
118 SECTION QUESTION
119 www.example.com. IN A
120 SECTION ANSWER
121 www.example.com. 3600 IN A      10.1.1.1
122 SECTION AUTHORITY
123 example.com.    86400 IN NS     old-ns.example.com.
124 SECTION ADDITIONAL
125 old-ns.example.com.             86400 IN        A       192.168.0.1
126 ENTRY_END
127 RANGE_END
128
129 ; ns.example.com. new owner
130 RANGE_BEGIN 0 500
131         ADDRESS 172.16.0.1
132 ENTRY_BEGIN
133 MATCH opcode qtype qname
134 ADJUST copy_id
135 REPLY QR AA NOERROR
136 SECTION QUESTION
137 example.com. IN NS
138 SECTION ANSWER
139 example.com.    86400 IN NS     new-ns.example.com.
140 SECTION ADDITIONAL
141 new-ns.example.com.             86400 IN        A       172.16.0.1
142 ENTRY_END
143
144 ENTRY_BEGIN
145 MATCH opcode qtype qname
146 ADJUST copy_id
147 REPLY QR AA NOERROR
148 SECTION QUESTION
149 old-ns.example.com. IN A
150 SECTION ANSWER
151 old-ns.example.com. 86400 IN A  172.16.0.1
152 SECTION AUTHORITY
153 example.com.    86400 IN NS     new-ns.example.com.
154 SECTION ADDITIONAL
155 new-ns.example.com.             86400 IN        A       172.16.0.1
156 ENTRY_END
157
158 ENTRY_BEGIN
159 MATCH opcode qtype qname
160 ADJUST copy_id
161 REPLY QR AA NOERROR
162 SECTION QUESTION
163 www.example.com. IN A
164 SECTION ANSWER
165 www.example.com. 3600 IN A      10.2.2.2
166 SECTION AUTHORITY
167 example.com.    86400 IN NS     new-ns.example.com.
168 SECTION ADDITIONAL
169 new-ns.example.com.             86400 IN        A       172.16.0.1
170 ENTRY_END
171 RANGE_END
172
173 STEP 1 QUERY
174 ENTRY_BEGIN
175 REPLY RD
176 SECTION QUESTION
177 www.example.com. IN A
178 ENTRY_END
179 ; recursion happens here.
180 STEP 10 CHECK_ANSWER
181 ENTRY_BEGIN
182 MATCH all ttl
183 REPLY QR RD RA NOERROR
184 SECTION QUESTION
185 www.example.com. IN A
186 SECTION ANSWER
187 www.example.com.        3600 IN A       10.1.1.1
188 SECTION AUTHORITY
189 example.com.            86400 IN NS     old-ns.example.com.
190 SECTION ADDITIONAL
191 old-ns.example.com.     86400 IN A      192.168.0.1
192 ENTRY_END
193
194 ; after 1800 secs still the cached answer
195 STEP 20 TIME_PASSES ELAPSE 1800
196
197 STEP 30 QUERY
198 ENTRY_BEGIN
199 REPLY RD
200 SECTION QUESTION
201 www.example.com. IN A
202 ENTRY_END
203 ; recursion happens here.
204 STEP 40 CHECK_ANSWER
205 ENTRY_BEGIN
206 MATCH all ttl
207 REPLY QR RD RA NOERROR
208 SECTION QUESTION
209 www.example.com. IN A
210 SECTION ANSWER
211 www.example.com.        1800 IN A       10.1.1.1
212 SECTION AUTHORITY
213 example.com.            84600 IN NS     old-ns.example.com.
214 SECTION ADDITIONAL
215 old-ns.example.com.     84600 IN A      192.168.0.1
216 ENTRY_END
217
218 ; after 1440 we are 360 seconds before the expiry
219 ; but it still contacts the old-ns
220 STEP 50 TIME_PASSES ELAPSE 1440
221
222 STEP 60 QUERY
223 ENTRY_BEGIN
224 REPLY RD
225 SECTION QUESTION
226 www.example.com. IN A
227 ENTRY_END
228 ; recursion happens here.
229 STEP 70 CHECK_ANSWER
230 ENTRY_BEGIN
231 MATCH all ttl
232 REPLY QR RD RA NOERROR
233 SECTION QUESTION
234 www.example.com. IN A
235 SECTION ANSWER
236 www.example.com.        360 IN A        10.1.1.1
237 SECTION AUTHORITY
238 example.com.            83160 IN NS     old-ns.example.com.
239 SECTION ADDITIONAL
240 old-ns.example.com.     83160 IN A      192.168.0.1
241 ENTRY_END
242
243 STEP 80 TRAFFIC
244 ; let traffic flow for prefetch to happen
245
246 ; we updated from the old-ns.
247 STEP 90 QUERY
248 ENTRY_BEGIN
249 REPLY RD
250 SECTION QUESTION
251 www.example.com. IN A
252 ENTRY_END
253 ; recursion happens here.
254 STEP 100 CHECK_ANSWER
255 ENTRY_BEGIN
256 MATCH all ttl
257 REPLY QR RD RA NOERROR
258 SECTION QUESTION
259 www.example.com. IN A
260 SECTION ANSWER
261 www.example.com.        3600 IN A       10.1.1.1
262 SECTION AUTHORITY
263 example.com.            83160 IN NS     old-ns.example.com.
264 SECTION ADDITIONAL
265 old-ns.example.com.     83160 IN A      192.168.0.1
266 ENTRY_END
267
268 ; the NS record is now 10% from expiry (8640 TTL left).
269 ; and the A record has expired completely, retry.
270 STEP 110 TIME_PASSES ELAPSE 74520
271
272 ; the NS record should have timed out.
273 ; but you see the full TTL here, this is only for *this query*
274 ; in the cache itself its 8640, not 86400.
275 STEP 120 QUERY
276 ENTRY_BEGIN
277 REPLY RD
278 SECTION QUESTION
279 www.example.com. IN A
280 ENTRY_END
281 ; recursion happens here.
282 STEP 130 CHECK_ANSWER
283 ENTRY_BEGIN
284 MATCH all ttl
285 REPLY QR RD RA NOERROR
286 SECTION QUESTION
287 www.example.com. IN A
288 SECTION ANSWER
289 www.example.com.        3600 IN A       10.1.1.1
290 SECTION AUTHORITY
291 example.com.            8640 IN NS      old-ns.example.com.
292 SECTION ADDITIONAL
293 old-ns.example.com.     8640 IN A       192.168.0.1
294 ENTRY_END
295
296 ; get it from cache
297 STEP 140 QUERY
298 ENTRY_BEGIN
299 REPLY RD
300 SECTION QUESTION
301 www.example.com. IN A
302 ENTRY_END
303 ; recursion happens here.
304 STEP 150 CHECK_ANSWER
305 ENTRY_BEGIN
306 MATCH all ttl
307 REPLY QR RD RA NOERROR
308 SECTION QUESTION
309 www.example.com. IN A
310 SECTION ANSWER
311 www.example.com.        3600 IN A       10.1.1.1
312 SECTION AUTHORITY
313 example.com.            8640 IN NS      old-ns.example.com.
314 SECTION ADDITIONAL
315 old-ns.example.com.     8640 IN A       192.168.0.1
316 ENTRY_END
317
318 ; the NS record times out after 8640 seconds.
319 STEP 160 TIME_PASSES ELAPSE 8641
320
321 ; fetch it
322 STEP 170 QUERY
323 ENTRY_BEGIN
324 REPLY RD
325 SECTION QUESTION
326 www.example.com. IN A
327 ENTRY_END
328 ; recursion happens here.
329 STEP 180 CHECK_ANSWER
330 ENTRY_BEGIN
331 MATCH all ttl
332 REPLY QR RD RA NOERROR
333 SECTION QUESTION
334 www.example.com. IN A
335 SECTION ANSWER
336 www.example.com.        3600 IN A       10.2.2.2
337 SECTION AUTHORITY
338 example.com.            86400 IN NS     new-ns.example.com.
339 SECTION ADDITIONAL
340 new-ns.example.com.     86400 IN A      172.16.0.1
341 ENTRY_END
342
343 ; a reply from cache 
344 STEP 190 QUERY
345 ENTRY_BEGIN
346 REPLY RD
347 SECTION QUESTION
348 www.example.com. IN A
349 ENTRY_END
350 ; recursion happens here.
351 STEP 200 CHECK_ANSWER
352 ENTRY_BEGIN
353 MATCH all ttl
354 REPLY QR RD RA NOERROR
355 SECTION QUESTION
356 www.example.com. IN A
357 SECTION ANSWER
358 www.example.com.        3600 IN A       10.2.2.2
359 SECTION AUTHORITY
360 example.com.            86400 IN NS     new-ns.example.com.
361 SECTION ADDITIONAL
362 new-ns.example.com.     86400 IN A      172.16.0.1
363 ENTRY_END
364
365 SCENARIO_END