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