]>
Commit | Line | Data |
---|---|---|
89c4ed63 A |
1 | ; config options |
2 | server: | |
3 | target-fetch-policy: "0 0 0 0 0" | |
4 | prefetch: "yes" | |
5 | ||
6 | stub-zone: | |
7 | name: "." | |
8 | stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET. | |
9 | CONFIG_END | |
10 | ||
11 | SCENARIO_BEGIN Test resolver prefetch of NS record for moved domain | |
12 | ||
13 | ; K.ROOT-SERVERS.NET. | |
14 | RANGE_BEGIN 0 200 | |
15 | ADDRESS 193.0.14.129 | |
16 | ENTRY_BEGIN | |
17 | MATCH opcode qtype qname | |
18 | ADJUST copy_id | |
19 | REPLY QR NOERROR | |
20 | SECTION QUESTION | |
21 | . IN NS | |
22 | SECTION ANSWER | |
23 | . IN NS K.ROOT-SERVERS.NET. | |
24 | SECTION ADDITIONAL | |
25 | K.ROOT-SERVERS.NET. IN A 193.0.14.129 | |
26 | ENTRY_END | |
27 | ||
28 | ENTRY_BEGIN | |
29 | MATCH opcode subdomain | |
30 | ADJUST copy_id copy_query | |
31 | REPLY QR NOERROR | |
32 | SECTION QUESTION | |
33 | example.com. IN A | |
34 | SECTION AUTHORITY | |
35 | com. IN NS a.gtld-servers.net. | |
36 | SECTION ADDITIONAL | |
37 | a.gtld-servers.net. IN A 192.5.6.30 | |
38 | ENTRY_END | |
39 | RANGE_END | |
40 | ||
41 | ; a.gtld-servers.net. (before sale of domain) | |
42 | RANGE_BEGIN 0 20 | |
43 | ADDRESS 192.5.6.30 | |
44 | ENTRY_BEGIN | |
45 | MATCH opcode qtype qname | |
46 | ADJUST copy_id | |
47 | REPLY QR NOERROR | |
48 | SECTION QUESTION | |
49 | com. IN NS | |
50 | SECTION ANSWER | |
51 | com. IN NS a.gtld-servers.net. | |
52 | SECTION ADDITIONAL | |
53 | a.gtld-servers.net. IN A 192.5.6.30 | |
54 | ENTRY_END | |
55 | ||
56 | ENTRY_BEGIN | |
57 | MATCH opcode subdomain | |
58 | ADJUST copy_id copy_query | |
59 | REPLY QR NOERROR | |
60 | SECTION QUESTION | |
61 | example.com. IN A | |
62 | SECTION AUTHORITY | |
63 | example.com. IN NS ns.example.com. | |
64 | SECTION ADDITIONAL | |
65 | ns.example.com. IN A 1.2.3.4 | |
66 | ENTRY_END | |
67 | RANGE_END | |
68 | ||
69 | ; a.gtld-servers.net. (after sale of domain) | |
70 | RANGE_BEGIN 30 200 | |
71 | ADDRESS 192.5.6.30 | |
72 | ENTRY_BEGIN | |
73 | MATCH opcode qtype qname | |
74 | ADJUST copy_id | |
75 | REPLY QR NOERROR | |
76 | SECTION QUESTION | |
77 | com. IN NS | |
78 | SECTION ANSWER | |
79 | com. IN NS a.gtld-servers.net. | |
80 | SECTION ADDITIONAL | |
81 | a.gtld-servers.net. IN A 192.5.6.30 | |
82 | ENTRY_END | |
83 | ||
84 | ENTRY_BEGIN | |
85 | MATCH opcode subdomain | |
86 | ADJUST copy_id copy_query | |
87 | REPLY QR NOERROR | |
88 | SECTION QUESTION | |
89 | example.com. IN A | |
90 | SECTION AUTHORITY | |
91 | example.com. IN NS ns.example.com. | |
92 | SECTION ADDITIONAL | |
93 | ns.example.com. IN A 8.8.8.8 | |
94 | ENTRY_END | |
95 | RANGE_END | |
96 | ||
97 | ; ns.example.com. first owner | |
98 | RANGE_BEGIN 0 200 | |
99 | ADDRESS 1.2.3.4 | |
100 | ENTRY_BEGIN | |
101 | MATCH opcode qtype qname | |
102 | ADJUST copy_id | |
103 | REPLY QR NOERROR | |
104 | SECTION QUESTION | |
105 | example.com. IN NS | |
106 | SECTION ANSWER | |
107 | example.com. IN NS ns.example.com. | |
108 | SECTION ADDITIONAL | |
109 | ns.example.com. IN A 1.2.3.4 | |
110 | ENTRY_END | |
111 | ||
112 | ENTRY_BEGIN | |
113 | MATCH opcode qtype qname | |
114 | ADJUST copy_id | |
115 | REPLY QR NOERROR | |
116 | SECTION QUESTION | |
117 | www.example.com. IN A | |
118 | SECTION ANSWER | |
119 | www.example.com. 3600 IN A 10.20.30.40 | |
120 | SECTION AUTHORITY | |
121 | example.com. 3600 IN NS ns.example.com. | |
122 | SECTION ADDITIONAL | |
123 | ns.example.com. 3600 IN A 1.2.3.4 | |
124 | ENTRY_END | |
125 | RANGE_END | |
126 | ||
127 | ; ns.example.com. new owner | |
128 | RANGE_BEGIN 0 200 | |
129 | ADDRESS 8.8.8.8 | |
130 | ENTRY_BEGIN | |
131 | MATCH opcode qtype qname | |
132 | ADJUST copy_id | |
133 | REPLY QR NOERROR | |
134 | SECTION QUESTION | |
135 | example.com. IN NS | |
136 | SECTION ANSWER | |
137 | example.com. IN NS ns.example.com. | |
138 | SECTION ADDITIONAL | |
139 | ns.example.com. IN A 8.8.8.8 | |
140 | ENTRY_END | |
141 | ||
142 | ENTRY_BEGIN | |
143 | MATCH opcode qtype qname | |
144 | ADJUST copy_id | |
145 | REPLY QR NOERROR | |
146 | SECTION QUESTION | |
147 | www.example.com. IN A | |
148 | SECTION ANSWER | |
149 | www.example.com. 3600 IN A 88.88.88.88 | |
150 | SECTION AUTHORITY | |
151 | example.com. 3600 IN NS ns.example.com. | |
152 | SECTION ADDITIONAL | |
153 | ns.example.com. 3600 IN A 8.8.8.8 | |
154 | ENTRY_END | |
155 | RANGE_END | |
156 | ||
157 | STEP 1 QUERY | |
158 | ENTRY_BEGIN | |
159 | REPLY RD | |
160 | SECTION QUESTION | |
161 | www.example.com. IN A | |
162 | ENTRY_END | |
163 | ; recursion happens here. | |
164 | STEP 5 CHECK_ANSWER | |
165 | ENTRY_BEGIN | |
166 | MATCH all ttl | |
167 | REPLY QR RD RA NOERROR | |
168 | SECTION QUESTION | |
169 | www.example.com. IN A | |
170 | SECTION ANSWER | |
171 | www.example.com. 3600 IN A 10.20.30.40 | |
172 | SECTION AUTHORITY | |
173 | example.com. 3600 IN NS ns.example.com. | |
174 | SECTION ADDITIONAL | |
175 | ns.example.com. 3600 IN A 1.2.3.4 | |
176 | ENTRY_END | |
177 | ||
178 | STEP 10 QUERY | |
179 | ENTRY_BEGIN | |
180 | REPLY RD | |
181 | SECTION QUESTION | |
182 | example.com. IN NS | |
183 | ENTRY_END | |
184 | ; recursion happens here. | |
185 | STEP 15 CHECK_ANSWER | |
186 | ENTRY_BEGIN | |
187 | MATCH all ttl | |
188 | REPLY QR RD RA NOERROR | |
189 | SECTION QUESTION | |
190 | example.com. IN NS | |
191 | SECTION ANSWER | |
192 | example.com. 3600 IN NS ns.example.com. | |
193 | SECTION AUTHORITY | |
194 | SECTION ADDITIONAL | |
195 | ns.example.com. 3600 IN A 1.2.3.4 | |
196 | ENTRY_END | |
197 | ||
198 | ; after 1800 secs still the cached answer | |
199 | STEP 20 TIME_PASSES ELAPSE 1800 | |
200 | ||
201 | STEP 30 QUERY | |
202 | ENTRY_BEGIN | |
203 | REPLY RD | |
204 | SECTION QUESTION | |
205 | www.example.com. IN A | |
206 | ENTRY_END | |
207 | ; recursion happens here. | |
208 | STEP 40 CHECK_ANSWER | |
209 | ENTRY_BEGIN | |
210 | MATCH all ttl | |
211 | REPLY QR RD RA NOERROR | |
212 | SECTION QUESTION | |
213 | www.example.com. IN A | |
214 | SECTION ANSWER | |
215 | www.example.com. 1800 IN A 10.20.30.40 | |
216 | SECTION AUTHORITY | |
217 | example.com. 1800 IN NS ns.example.com. | |
218 | SECTION ADDITIONAL | |
219 | ns.example.com. 1800 IN A 1.2.3.4 | |
220 | ENTRY_END | |
221 | ||
222 | STEP 44 QUERY | |
223 | ENTRY_BEGIN | |
224 | REPLY RD | |
225 | SECTION QUESTION | |
226 | example.com. IN NS | |
227 | ENTRY_END | |
228 | ; recursion happens here. | |
229 | STEP 45 CHECK_ANSWER | |
230 | ENTRY_BEGIN | |
231 | MATCH all ttl | |
232 | REPLY QR RD RA NOERROR | |
233 | SECTION QUESTION | |
234 | example.com. IN NS | |
235 | SECTION ANSWER | |
236 | example.com. 1800 IN NS ns.example.com. | |
237 | SECTION AUTHORITY | |
238 | SECTION ADDITIONAL | |
239 | ns.example.com. 1800 IN A 1.2.3.4 | |
240 | ENTRY_END | |
241 | ||
242 | ; after 1440 we are 360 seconds before the expiry | |
243 | STEP 50 TIME_PASSES ELAPSE 1440 | |
244 | ||
245 | STEP 60 QUERY | |
246 | ENTRY_BEGIN | |
247 | REPLY RD | |
248 | SECTION QUESTION | |
249 | example.com. IN NS | |
250 | ENTRY_END | |
251 | ; recursion happens here. | |
252 | STEP 70 CHECK_ANSWER | |
253 | ENTRY_BEGIN | |
254 | MATCH all ttl | |
255 | REPLY QR RD RA NOERROR | |
256 | SECTION QUESTION | |
257 | example.com. IN NS | |
258 | SECTION ANSWER | |
259 | example.com. 360 IN NS ns.example.com. | |
260 | SECTION AUTHORITY | |
261 | SECTION ADDITIONAL | |
262 | ns.example.com. 360 IN A 1.2.3.4 | |
263 | ENTRY_END | |
264 | ||
265 | STEP 80 TRAFFIC | |
266 | ; let traffic flow for prefetch to happen | |
267 | ||
268 | ; check result of that prefetch | |
269 | STEP 90 QUERY | |
270 | ENTRY_BEGIN | |
271 | REPLY RD | |
272 | SECTION QUESTION | |
273 | example.com. IN NS | |
274 | ENTRY_END | |
275 | ; recursion happens here. | |
276 | ||
277 | ; because the prefetch+current makes old-NS expired, new delegation is picked up | |
278 | STEP 91 CHECK_ANSWER | |
279 | ENTRY_BEGIN | |
280 | MATCH all ttl | |
281 | REPLY QR RD RA NOERROR | |
282 | SECTION QUESTION | |
283 | example.com. IN NS | |
284 | SECTION ANSWER | |
285 | example.com. 3600 IN NS ns.example.com. | |
286 | SECTION AUTHORITY | |
287 | SECTION ADDITIONAL | |
288 | ns.example.com. 3600 IN A 8.8.8.8 | |
289 | ENTRY_END | |
290 | ||
291 | STEP 100 TIME_PASSES ELAPSE 2360 | |
292 | ||
293 | STEP 120 QUERY | |
294 | ENTRY_BEGIN | |
295 | REPLY RD | |
296 | SECTION QUESTION | |
297 | www.example.com. IN A | |
298 | ENTRY_END | |
299 | ; recursion happens here. | |
300 | STEP 130 CHECK_ANSWER | |
301 | ENTRY_BEGIN | |
302 | MATCH all ttl | |
303 | REPLY QR RD RA NOERROR | |
304 | SECTION QUESTION | |
305 | www.example.com. IN A | |
306 | SECTION ANSWER | |
307 | www.example.com. 3600 IN A 88.88.88.88 | |
308 | SECTION AUTHORITY | |
309 | example.com. 1240 IN NS ns.example.com. | |
310 | SECTION ADDITIONAL | |
311 | ns.example.com. 1240 IN A 8.8.8.8 | |
312 | ENTRY_END | |
313 | ||
314 | SCENARIO_END |