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