]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - testdata/dns64_lookup.rpl
unbound: Vendor import 1.19.0
[FreeBSD/FreeBSD.git] / testdata / dns64_lookup.rpl
1 ; config options
2 server:
3         target-fetch-policy: "0 0 0 0 0"
4         qname-minimisation: "no"
5         module-config: "dns64 validator iterator"
6         dns64-prefix: 64:ff9b::0/96
7         dns64-ignore-aaaa: ip6ignore.example.com
8         dns64-ignore-aaaa: ip6only.example.com
9         minimal-responses: no
10
11 stub-zone:
12         name: "."
13         stub-addr: 193.0.14.129         # K.ROOT-SERVERS.NET.
14 CONFIG_END
15
16 SCENARIO_BEGIN Test dns64 lookup and synthesis.
17 ; normal A lookup should still succeed
18 ; AAAA is synthesized if not present.
19 ; AAAA if present, is passed through unchanged.
20 ; AAAA if present (but configured to be ignored) but no A, AAAA is passed through unchanged.
21
22 ; K.ROOT-SERVERS.NET.
23 RANGE_BEGIN 0 200
24         ADDRESS 193.0.14.129 
25 ENTRY_BEGIN
26 MATCH opcode qtype qname
27 ADJUST copy_id
28 REPLY QR NOERROR
29 SECTION QUESTION
30 . IN NS
31 SECTION ANSWER
32 . IN NS K.ROOT-SERVERS.NET.
33 SECTION ADDITIONAL
34 K.ROOT-SERVERS.NET.     IN      A       193.0.14.129
35 ENTRY_END
36
37 ENTRY_BEGIN
38 MATCH opcode qtype qname
39 ADJUST copy_id
40 REPLY QR NOERROR
41 SECTION QUESTION
42 www.example.com. IN A
43 SECTION AUTHORITY
44 com.    IN NS   a.gtld-servers.net.
45 SECTION ADDITIONAL
46 a.gtld-servers.net.     IN      A       192.5.6.30
47 ENTRY_END
48
49 ENTRY_BEGIN
50 MATCH opcode subdomain
51 ADJUST copy_id copy_query
52 REPLY QR NOERROR
53 SECTION QUESTION
54 7.6.5.in-addr.arpa. IN A
55 SECTION AUTHORITY
56 7.6.5.in-addr.arpa. IN NS ns.example.com.
57 SECTION ADDITIONAL
58 ns.example.com.         IN      A       1.2.3.4
59 ENTRY_END
60
61 RANGE_END
62
63 ; a.gtld-servers.net.
64 RANGE_BEGIN 0 200
65         ADDRESS 192.5.6.30
66 ENTRY_BEGIN
67 MATCH opcode qtype qname
68 ADJUST copy_id
69 REPLY QR NOERROR
70 SECTION QUESTION
71 com. IN NS
72 SECTION ANSWER
73 com.    IN NS   a.gtld-servers.net.
74 SECTION ADDITIONAL
75 a.gtld-servers.net.     IN      A       192.5.6.30
76 ENTRY_END
77
78 ENTRY_BEGIN
79 MATCH opcode qtype qname
80 ADJUST copy_id
81 REPLY QR NOERROR
82 SECTION QUESTION
83 www.example.com. IN A
84 SECTION AUTHORITY
85 example.com.    IN NS   ns.example.com.
86 SECTION ADDITIONAL
87 ns.example.com.         IN      A       1.2.3.4
88 ENTRY_END
89 RANGE_END
90
91 ; ns.example.com.
92 RANGE_BEGIN 0 200
93         ADDRESS 1.2.3.4
94 ENTRY_BEGIN
95 MATCH opcode qtype qname
96 ADJUST copy_id
97 REPLY QR NOERROR
98 SECTION QUESTION
99 example.com. IN NS
100 SECTION ANSWER
101 example.com.    IN NS   ns.example.com.
102 SECTION ADDITIONAL
103 ns.example.com.         IN      A       1.2.3.4
104 ENTRY_END
105
106 ENTRY_BEGIN
107 MATCH opcode qtype qname
108 ADJUST copy_id
109 REPLY QR NOERROR
110 SECTION QUESTION
111 www.example.com. IN A
112 SECTION ANSWER
113 www.example.com. IN A   10.20.30.40
114 SECTION AUTHORITY
115 example.com.    IN NS   ns.example.com.
116 SECTION ADDITIONAL
117 ns.example.com.         IN      A       1.2.3.4
118 ENTRY_END
119
120 ENTRY_BEGIN
121 MATCH opcode qtype qname
122 ADJUST copy_id
123 REPLY QR NOERROR
124 SECTION QUESTION
125 ip4.example.com. IN AAAA
126 SECTION ANSWER
127 ; NO AAAA present
128 SECTION AUTHORITY
129 example.com.    IN SOA  a. b. 1 2 3 4 5
130 ENTRY_END
131
132 ENTRY_BEGIN
133 MATCH opcode qtype qname
134 ADJUST copy_id
135 REPLY QR NOERROR
136 SECTION QUESTION
137 ip4.example.com. IN A
138 SECTION ANSWER
139 ip4.example.com. IN A   5.6.7.8
140 SECTION AUTHORITY
141 example.com.    IN NS   ns.example.com.
142 SECTION ADDITIONAL
143 ns.example.com.         IN      A       1.2.3.4
144 ENTRY_END
145
146 ENTRY_BEGIN
147 MATCH opcode qtype qname
148 ADJUST copy_id
149 REPLY QR NOERROR
150 SECTION QUESTION
151 ip6.example.com. IN AAAA
152 SECTION ANSWER
153 ip6.example.com. IN AAAA 1:2:3::4
154 SECTION AUTHORITY
155 example.com.    IN NS   ns.example.com.
156 SECTION ADDITIONAL
157 ns.example.com.         IN      A       1.2.3.4
158 ENTRY_END
159
160 ENTRY_BEGIN
161 MATCH opcode qtype qname
162 ADJUST copy_id
163 REPLY QR NOERROR
164 SECTION QUESTION
165 ip6ignore.example.com. IN AAAA
166 SECTION ANSWER
167 ip6ignore.example.com. IN AAAA 1:2:3::4
168 SECTION AUTHORITY
169 example.com.    IN NS   ns.example.com.
170 SECTION ADDITIONAL
171 ns.example.com.         IN      A       1.2.3.4
172 ENTRY_END
173
174 ENTRY_BEGIN
175 MATCH opcode qtype qname
176 ADJUST copy_id
177 REPLY QR NOERROR
178 SECTION QUESTION
179 ip6ignore.example.com. IN A
180 SECTION ANSWER
181 ip6ignore.example.com. IN A     5.6.7.8
182 SECTION AUTHORITY
183 example.com.    IN NS   ns.example.com.
184 SECTION ADDITIONAL
185 ns.example.com.         IN      A       1.2.3.4
186 ENTRY_END
187
188 ENTRY_BEGIN
189 MATCH opcode qtype qname
190 ADJUST copy_id
191 REPLY QR NOERROR
192 SECTION QUESTION
193 ip6only.example.com. IN AAAA
194 SECTION ANSWER
195 ip6only.example.com. IN AAAA 1:2:3::4
196 SECTION AUTHORITY
197 example.com.    IN NS   ns.example.com.
198 SECTION ADDITIONAL
199 ns.example.com.         IN      A       1.2.3.4
200 ENTRY_END
201
202 ENTRY_BEGIN
203 MATCH opcode qtype qname
204 ADJUST copy_id
205 REPLY QR NOERROR
206 SECTION QUESTION
207 ip6only.example.com. IN A
208 SECTION ANSWER
209 ; NO A present
210 SECTION AUTHORITY
211 example.com.    IN SOA  a. b. 1 2 3 4 5
212 ENTRY_END
213
214
215 ENTRY_BEGIN
216 MATCH opcode qtype qname
217 ADJUST copy_id
218 REPLY QR NOERROR
219 SECTION QUESTION
220 8.7.6.5.in-addr.arpa. IN PTR
221 SECTION ANSWER
222 8.7.6.5.in-addr.arpa. PTR ip4.example.com.
223 SECTION AUTHORITY
224 7.6.5.in-addr.arpa. IN NS ns.example.com.
225 ENTRY_END
226
227 RANGE_END
228
229 STEP 1 QUERY
230 ENTRY_BEGIN
231 REPLY RD
232 SECTION QUESTION
233 www.example.com. IN A
234 ENTRY_END
235
236 ; recursion happens here.
237 STEP 10 CHECK_ANSWER
238 ENTRY_BEGIN
239 MATCH all
240 REPLY QR RD RA NOERROR
241 SECTION QUESTION
242 www.example.com. IN A
243 SECTION ANSWER
244 www.example.com. IN A   10.20.30.40
245 SECTION AUTHORITY
246 example.com.    IN NS   ns.example.com.
247 SECTION ADDITIONAL
248 ns.example.com.         IN      A       1.2.3.4
249 ENTRY_END
250
251 ; synthesize from A record 5.6.7.8
252 STEP 20 QUERY
253 ENTRY_BEGIN
254 REPLY RD
255 SECTION QUESTION
256 ip4.example.com. IN AAAA
257 ENTRY_END
258
259 ; recursion happens here.
260 STEP 30 CHECK_ANSWER
261 ENTRY_BEGIN
262 MATCH all
263 REPLY QR RD RA NOERROR
264 SECTION QUESTION
265 ip4.example.com. IN AAAA
266 SECTION ANSWER
267 ip4.example.com.        IN      AAAA    64:ff9b::506:708
268 SECTION AUTHORITY
269 example.com.    IN NS   ns.example.com.
270 SECTION ADDITIONAL
271 ns.example.com.         IN      A       1.2.3.4
272 ENTRY_END
273
274 ; this node has its own ipv6 address
275 STEP 40 QUERY
276 ENTRY_BEGIN
277 REPLY RD
278 SECTION QUESTION
279 ip6.example.com. IN AAAA
280 ENTRY_END
281
282 ; recursion happens here.
283 STEP 50 CHECK_ANSWER
284 ENTRY_BEGIN
285 MATCH all
286 REPLY QR RD RA NOERROR
287 SECTION QUESTION
288 ip6.example.com. IN AAAA
289 SECTION ANSWER
290 ip6.example.com. IN AAAA 1:2:3::4
291 SECTION AUTHORITY
292 example.com.    IN NS   ns.example.com.
293 SECTION ADDITIONAL
294 ns.example.com.         IN      A       1.2.3.4
295 ENTRY_END
296
297 ; test ptr lookup
298 STEP 60 QUERY
299 ENTRY_BEGIN
300 REPLY RD
301 SECTION QUESTION
302 8.0.7.0.6.0.5.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.b.9.f.f.4.6.0.0.ip6.arpa. IN PTR
303 ENTRY_END
304
305 ; recursion happens here.
306 STEP 70 CHECK_ANSWER
307 ENTRY_BEGIN
308 MATCH all
309 REPLY QR RD RA NOERROR
310 SECTION QUESTION
311 8.0.7.0.6.0.5.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.b.9.f.f.4.6.0.0.ip6.arpa. IN PTR
312 SECTION ANSWER
313 8.0.7.0.6.0.5.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.b.9.f.f.4.6.0.0.ip6.arpa. IN PTR ip4.example.com.
314 SECTION AUTHORITY
315 7.6.5.in-addr.arpa. IN NS ns.example.com.
316 ENTRY_END
317
318 ; ignore AAAA and synthesize from A record 5.6.7.8
319 STEP 80 QUERY
320 ENTRY_BEGIN
321 REPLY RD
322 SECTION QUESTION
323 ip6ignore.example.com. IN AAAA
324 ENTRY_END
325
326 ; recursion happens here.
327 STEP 90 CHECK_ANSWER
328 ENTRY_BEGIN
329 MATCH all
330 REPLY QR RD RA NOERROR
331 SECTION QUESTION
332 ip6ignore.example.com. IN AAAA
333 SECTION ANSWER
334 ip6ignore.example.com.        IN      AAAA    64:ff9b::506:708
335 SECTION AUTHORITY
336 example.com.    IN NS   ns.example.com.
337 SECTION ADDITIONAL
338 ns.example.com.         IN      A       1.2.3.4
339 ENTRY_END
340
341 ; try to ignore AAAA but no A record to synthesize, fallback to AAAA
342 STEP 100 QUERY
343 ENTRY_BEGIN
344 REPLY RD
345 SECTION QUESTION
346 ip6only.example.com. IN AAAA
347 ENTRY_END
348
349 ; recursion happens here.
350 STEP 110 CHECK_ANSWER
351 ENTRY_BEGIN
352 MATCH all
353 REPLY QR RD RA NOERROR
354 SECTION QUESTION
355 ip6only.example.com. IN AAAA
356 SECTION ANSWER
357 ip6only.example.com.        IN      AAAA    1:2:3::4
358 SECTION AUTHORITY
359 example.com.    IN NS   ns.example.com.
360 SECTION ADDITIONAL
361 ns.example.com.         IN      A       1.2.3.4
362 ENTRY_END
363
364 SCENARIO_END