]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - testdata/iter_prefetch.rpl
Import unbound 1.4.20
[FreeBSD/FreeBSD.git] / testdata / iter_prefetch.rpl
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 almost expired data
12
13 ; K.ROOT-SERVERS.NET.
14 RANGE_BEGIN 0 100
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 qtype qname
30 ADJUST copy_id
31 REPLY QR NOERROR
32 SECTION QUESTION
33 www.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.
42 RANGE_BEGIN 0 100
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 qtype qname
58 ADJUST copy_id
59 REPLY QR NOERROR
60 SECTION QUESTION
61 www.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 ; ns.example.com.
70 RANGE_BEGIN 0 40
71         ADDRESS 1.2.3.4
72 ENTRY_BEGIN
73 MATCH opcode qtype qname
74 ADJUST copy_id
75 REPLY QR NOERROR
76 SECTION QUESTION
77 example.com. IN NS
78 SECTION ANSWER
79 example.com.    IN NS   ns.example.com.
80 SECTION ADDITIONAL
81 ns.example.com.         IN      A       1.2.3.4
82 ENTRY_END
83
84 ENTRY_BEGIN
85 MATCH opcode qtype qname
86 ADJUST copy_id
87 REPLY QR NOERROR
88 SECTION QUESTION
89 www.example.com. IN A
90 SECTION ANSWER
91 www.example.com. 3600 IN A      10.20.30.40
92 SECTION AUTHORITY
93 example.com.    3600 IN NS      ns.example.com.
94 SECTION ADDITIONAL
95 ns.example.com. 3600    IN      A       1.2.3.4
96 ENTRY_END
97 RANGE_END
98
99 ; ns.example.com.
100 RANGE_BEGIN 50 100
101         ADDRESS 1.2.3.4
102 ENTRY_BEGIN
103 MATCH opcode qtype qname
104 ADJUST copy_id
105 REPLY QR NOERROR
106 SECTION QUESTION
107 example.com. IN NS
108 SECTION ANSWER
109 example.com.    IN NS   ns.example.com.
110 SECTION ADDITIONAL
111 ns.example.com.         IN      A       1.2.3.4
112 ENTRY_END
113
114 ENTRY_BEGIN
115 MATCH opcode qtype qname
116 ADJUST copy_id
117 REPLY QR NOERROR
118 SECTION QUESTION
119 www.example.com. IN A
120 SECTION ANSWER
121 www.example.com. 3600 IN A      10.20.30.40
122 SECTION AUTHORITY
123 example.com.    3600 IN NS      ns.example.com.
124 SECTION ADDITIONAL
125 ns.example.com. 3600    IN      A       1.2.3.4
126 ENTRY_END
127 RANGE_END
128
129 STEP 1 QUERY
130 ENTRY_BEGIN
131 REPLY RD
132 SECTION QUESTION
133 www.example.com. IN A
134 ENTRY_END
135
136 ; recursion happens here.
137 STEP 10 CHECK_ANSWER
138 ENTRY_BEGIN
139 MATCH all ttl
140 REPLY QR RD RA NOERROR
141 SECTION QUESTION
142 www.example.com. IN A
143 SECTION ANSWER
144 www.example.com. 3600 IN A      10.20.30.40
145 SECTION AUTHORITY
146 example.com.    3600 IN NS      ns.example.com.
147 SECTION ADDITIONAL
148 ns.example.com. 3600    IN      A       1.2.3.4
149 ENTRY_END
150
151 ; after 1800 secs still the cached answer
152 STEP 20 TIME_PASSES ELAPSE 1800
153
154 STEP 30 QUERY
155 ENTRY_BEGIN
156 REPLY RD
157 SECTION QUESTION
158 www.example.com. IN A
159 ENTRY_END
160 ; recursion happens here.
161 STEP 40 CHECK_ANSWER
162 ENTRY_BEGIN
163 MATCH all ttl
164 REPLY QR RD RA NOERROR
165 SECTION QUESTION
166 www.example.com. IN A
167 SECTION ANSWER
168 www.example.com. 1800 IN A      10.20.30.40
169 SECTION AUTHORITY
170 example.com.    1800 IN NS      ns.example.com.
171 SECTION ADDITIONAL
172 ns.example.com. 1800    IN      A       1.2.3.4
173 ENTRY_END
174
175 ; after 1440 we are 360 seconds before the expiry
176 ; (the authority changes behind the scenes to detect new lookup)
177 STEP 50 TIME_PASSES ELAPSE 1440
178
179 STEP 60 QUERY
180 ENTRY_BEGIN
181 REPLY RD
182 SECTION QUESTION
183 www.example.com. IN A
184 ENTRY_END
185 ; recursion happens here.
186 STEP 70 CHECK_ANSWER
187 ENTRY_BEGIN
188 MATCH all ttl
189 REPLY QR RD RA NOERROR
190 SECTION QUESTION
191 www.example.com. IN A
192 SECTION ANSWER
193 www.example.com. 360 IN A       10.20.30.40
194 SECTION AUTHORITY
195 example.com.    360 IN NS       ns.example.com.
196 SECTION ADDITIONAL
197 ns.example.com. 360     IN      A       1.2.3.4
198 ENTRY_END
199 STEP 80 TRAFFIC
200 ; let traffic flow for prefetch to happen
201
202 ; above a cache reply with 10% of the original TTL
203 ; but the actual cache is changed, try to get that
204 STEP 120 QUERY
205 ENTRY_BEGIN
206 REPLY RD
207 SECTION QUESTION
208 www.example.com. IN A
209 ENTRY_END
210 ; recursion happens here.
211 STEP 130 CHECK_ANSWER
212 ENTRY_BEGIN
213 MATCH all ttl
214 REPLY QR RD RA NOERROR
215 SECTION QUESTION
216 www.example.com. IN A
217 SECTION ANSWER
218 www.example.com. 3600 IN A      10.20.30.40
219 SECTION AUTHORITY
220 ; NS rrset picked up from parent-NS (the child-NS timed out at now+prefetch)
221 example.com.    3600 IN NS      ns.example.com.
222 SECTION ADDITIONAL
223 ns.example.com. 3600    IN      A       1.2.3.4
224 ENTRY_END
225
226 SCENARIO_END