Commit | Line | Data |
---|---|---|
c55a77db | 1 | ; This is a testing zone file for use when testing DNS handling in Exim. This |
d2a2c69b | 2 | ; is a fake zone of no real use. The zone name is |
c55a77db PH |
3 | ; test.ex. This file is passed through the substitution mechanism before being |
4 | ; used by the fakens auxiliary program. This inserts the actual IP addresses | |
5 | ; of the local host into the zone. | |
6 | ||
7 | ; NOTE (1): apart from ::1, IPv6 addresses must always have 8 components. Do | |
8 | ; not abbreviate them by using the :: feature. Leading zeros in components may, | |
9 | ; however, be omitted. | |
10 | ||
11 | ; NOTE (2): the fakens program is very simple and assumes that the buffer into | |
12 | ; which is puts the response is always going to be big enough. In other words, | |
13 | ; the expectation is for just a few RRs for each query. | |
14 | ||
15 | ; NOTE (3): the top-level networks for testing addresses are parameterized by | |
16 | ; the use of V4NET and V6NET. These networks should be such that no real | |
17 | ; host ever uses them. | |
18 | ||
19 | test.ex. NS exim.test.ex. | |
d2a2c69b | 20 | test.ex. SOA exim.test.ex. hostmaster.exim.test.ex 1430683638 1200 120 604800 3600 |
c55a77db PH |
21 | |
22 | test.ex. TXT "A TXT record for test.ex." | |
230205fc | 23 | s/lash TXT "A TXT record for s/lash.test.ex." |
c55a77db PH |
24 | |
25 | cname CNAME test.ex. | |
26 | ||
27 | ptr PTR data.for.ptr.test.ex. | |
28 | ||
29 | ; Standard localhost handling | |
30 | ||
31 | localhost A 127.0.0.1 | |
32 | localhost AAAA ::1 | |
33 | ||
34 | ; This name exists only if qualified; it is never automatically qualified | |
35 | ||
36 | dontqualify A V4NET.255.255.254 | |
37 | ||
38 | ; A host with upper case letters in its canonical name | |
39 | ||
40 | UpperCase A 127.0.0.1 | |
41 | ||
766e7a65 | 42 | ; A host with punycoded UTF-8 characters used for its lookup ( mx.π.test.ex ) |
c55a77db | 43 | |
766e7a65 | 44 | mx.xn--1xa A V4NET.255.255.255 |
c55a77db PH |
45 | |
46 | ; A non-standard name for localhost | |
47 | ||
48 | thishost A 127.0.0.1 | |
ac9a0d91 JH |
49 | localhost4 A 127.0.0.1 |
50 | ||
c55a77db | 51 | |
1cce3af8 PH |
52 | ; Something that gives both the IP and the loopback |
53 | ||
54 | thisloop A HOSTIPV4 | |
55 | A 127.0.0.1 | |
56 | ||
57 | ; Something that gives an unreachable IP and the loopback | |
58 | ||
59 | badloop A V4NET.0.0.1 | |
60 | A 127.0.0.1 | |
61 | ||
c55a77db PH |
62 | ; Another host with both A and AAAA records |
63 | ||
64 | 46 A V4NET.0.0.4 | |
65 | AAAA V6NET:ffff:836f:0a00:000a:0800:200a:c031 | |
66 | ||
67 | ; And another | |
68 | ||
69 | 46b A V4NET.0.0.5 | |
70 | AAAA V6NET:ffff:836f:0a00:000a:0800:200a:c033 | |
71 | ||
72 | ; A working IPv4 address and a non-working IPv6 address, with different | |
73 | ; names so they can have different MX values | |
74 | ||
75 | 46c AAAA V6NET:ffff:836f:0a00:000a:0800:200a:c033 | |
76 | 46d A HOSTIPV4 | |
77 | ||
78 | ; A host with just a non-local IPv6 address | |
79 | ||
80 | v6 AAAA V6NET:ffff:836f:0a00:000a:0800:200a:c032 | |
81 | ||
82 | ; Alias A and CNAME records for the local host, under the name "eximtesthost" | |
b4161d10 | 83 | ; Make the A covered by DNSSEC and add a TLSA for it. |
c55a77db | 84 | |
101de477 | 85 | eximtesthost A HOSTIPV4 |
c55a77db PH |
86 | alias-eximtesthost CNAME eximtesthost.test.ex. |
87 | ||
88 | ; A bad CNAME | |
89 | ||
90 | badcname CNAME rhubarb.test.ex. | |
91 | ||
92 | ; Test a name containing an underscore | |
93 | ||
94 | a_b A 99.99.99.99 | |
95 | ||
96 | ; The reverse registration for this name is an empty string | |
97 | ||
98 | empty A V4NET.255.255.255 | |
99 | ||
100 | ; Some IPv6 stuff | |
101 | ||
102 | eximtesthost.ipv6 AAAA HOSTIPV6 | |
103 | test2.ipv6 AAAA V6NET:2101:12:1:a00:20ff:fe86:a062 | |
104 | test3.ipv6 AAAA V6NET:1234:5:6:7:8:abc:0d | |
105 | ||
106 | ; A case of forward and backward pointers disagreeing | |
107 | ||
108 | badA A V4NET.99.99.99 | |
109 | badB A V4NET.99.99.98 | |
110 | ||
111 | ; A host with multiple names in different (sub) domains | |
112 | ; These are intended to be within test.ex - absence of final dots is deliberate | |
113 | ||
114 | x.gov.uk A V4NET.99.99.97 | |
115 | x.co.uk A V4NET.99.99.97 | |
116 | ||
117 | ; A host, the reverse lookup of whose IP address gives this name plus another | |
118 | ; that does not forward resolve to the same address | |
119 | ||
120 | oneback A V4NET.99.99.90 | |
121 | host1.masq A V4NET.90.90.90 | |
122 | ||
123 | ; Fake hosts are registered in the V4NET.0.0.0 subnet. In the past, the | |
124 | ; 10.0.0.0/8 network was used; hence the names of the hosts. | |
125 | ||
126 | ten-1 A V4NET.0.0.1 | |
127 | ten-2 A V4NET.0.0.2 | |
128 | ten-3 A V4NET.0.0.3 | |
129 | ten-3-alias A V4NET.0.0.3 | |
130 | ten-3xtra A V4NET.0.0.3 | |
131 | ten-4 A V4NET.0.0.4 | |
132 | ten-5 A V4NET.0.0.5 | |
133 | ten-6 A V4NET.0.0.6 | |
134 | ten-5-6 A V4NET.0.0.5 | |
135 | A V4NET.0.0.6 | |
136 | ||
137 | ten-99 A V4NET.0.0.99 | |
138 | ||
139 | black-1 A V4NET.11.12.13 | |
140 | black-2 A V4NET.11.12.14 | |
141 | ||
142 | myhost A V4NET.10.10.10 | |
143 | myhost2 A V4NET.10.10.10 | |
144 | ||
145 | other1 A V4NET.12.4.5 | |
146 | other2 A V4NET.12.3.1 | |
147 | A V4NET.12.3.2 | |
148 | ||
149 | other99 A V4NET.99.0.1 | |
150 | ||
151 | testsub.sub A V4NET.99.0.3 | |
152 | ||
153 | ; This one's real name really is recurse.test.ex.test.ex. It is done like | |
154 | ; this for testing host widening, without getting tangled up in qualify issues. | |
155 | ||
156 | recurse.test.ex A V4NET.99.0.2 | |
157 | ||
8241d8dd JH |
158 | ; a CNAME pointing to a name with both ipv4 and ipv6 A-records |
159 | ; and one with only ipv4 | |
160 | ||
161 | cname46 CNAME localhost | |
162 | cname4 CNAME thishost | |
163 | ||
c55a77db PH |
164 | ; -------- Testing RBL records ------- |
165 | ||
166 | ; V4NET.11.12.13 is deliberately not reverse-registered | |
167 | ||
168 | 13.12.11.V4NET.rbl A 127.0.0.2 | |
169 | TXT "This is a test blacklisting message" | |
170 | 14.12.11.V4NET.rbl A 127.0.0.2 | |
171 | TXT "This is a test blacklisting message" | |
172 | 15.12.11.V4NET.rbl A 127.0.0.2 | |
173 | TXT "This is a very long blacklisting message, continuing for ages and ages and certainly being longer than 128 characters which was a previous limit on the length that Exim was prepared to handle." | |
174 | ||
175 | 14.12.11.V4NET.rbl2 A 127.0.0.2 | |
176 | TXT "This is a test blacklisting2 message" | |
177 | 16.12.11.V4NET.rbl2 A 127.0.0.2 | |
178 | TXT "This is a test blacklisting2 message" | |
179 | ||
180 | 14.12.11.V4NET.rbl3 A 127.0.0.2 | |
181 | TXT "This is a test blacklisting3 message" | |
182 | 15.12.11.V4NET.rbl3 A 127.0.0.3 | |
183 | TXT "This is a very long blacklisting message, continuing for ages and ages and certainly being longer than 128 characters which was a previous limit on the length that Exim was prepared to handle." | |
184 | ||
185 | 20.12.11.V4NET.rbl4 A 127.0.0.6 | |
186 | 21.12.11.V4NET.rbl4 A 127.0.0.7 | |
d6f6e0dc PH |
187 | 22.12.11.V4NET.rbl4 A 127.0.0.128 |
188 | TXT "This is a test blacklisting4 message" | |
189 | ||
190 | 22.12.11.V4NET.rbl5 A 127.0.0.1 | |
191 | TXT "This is a test blacklisting5 message" | |
c55a77db PH |
192 | |
193 | 1.13.13.V4NET.rbl CNAME non-exist.test.ex. | |
194 | 2.13.13.V4NET.rbl A 127.0.0.1 | |
195 | A 127.0.0.2 | |
196 | ||
197 | ; -------- Testing MX records -------- | |
198 | ||
199 | mxcased MX 5 ten-99.TEST.EX. | |
200 | ||
201 | ; Points to a host with both A and AAAA | |
202 | ||
203 | mx46 MX 46 46.test.ex. | |
204 | ||
205 | ; Points to two hosts with both kinds of address, equal precedence | |
206 | ||
207 | mx4646 MX 46 46.test.ex. | |
208 | MX 46 46b.test.ex. | |
209 | ||
210 | ; Ditto, with a third IPv6 host | |
211 | ||
212 | mx46466 MX 46 46.test.ex. | |
213 | MX 46 46b.test.ex. | |
214 | MX 46 v6.test.ex. | |
215 | ||
98cd9003 PH |
216 | ; This time, change precedence |
217 | ||
218 | mx46466b MX 46 46.test.ex. | |
219 | MX 47 46b.test.ex. | |
220 | MX 48 v6.test.ex. | |
221 | ||
c55a77db PH |
222 | ; Points to a host with a working IPv4 and a non-working IPv6 record |
223 | ||
224 | mx46cd MX 10 46c.test.ex. | |
225 | MX 11 46d.test.ex. | |
226 | ||
227 | ; Two equal precedence pointing to a v4 and a v6 host | |
228 | ||
229 | mx246 MX 10 v6.test.ex. | |
230 | MX 10 ten-1.test.ex. | |
231 | ||
232 | ; Lowest-numbered points to local host | |
233 | ||
234 | mxt1 MX 5 eximtesthost.test.ex. | |
235 | ||
236 | ; Points only to non-existent hosts | |
237 | ||
238 | mxt2 MX 5 not-exist.test.ex. | |
239 | ||
240 | ; Points to some non-existent hosts; | |
241 | ; Lowest numbered existing points to local host | |
242 | ||
243 | mxt3 MX 5 not-exist.test.ex. | |
244 | MX 6 eximtesthost.test.ex. | |
245 | ||
246 | ; Points to some non-existent hosts; | |
247 | ; Lowest numbered existing points to non-local host | |
248 | ||
249 | mxt3r MX 5 not-exist.test.ex. | |
250 | MX 6 exim.org. | |
251 | ||
252 | ; Points to an alias | |
253 | ||
254 | mxt4 MX 5 alias-eximtesthost.test.ex. | |
255 | ||
256 | ; Various combinations of precedence and local host | |
257 | ||
258 | mxt5 MX 5 eximtesthost.test.ex. | |
259 | MX 5 ten-1.test.ex. | |
260 | ||
261 | mxt6 MX 5 ten-1.test.ex. | |
262 | MX 6 eximtesthost.test.ex. | |
263 | MX 6 ten-2.test.ex. | |
264 | ||
265 | mxt7 MX 5 ten-2.test.ex. | |
266 | MX 6 ten-3.test.ex. | |
267 | MX 7 eximtesthost.test.ex. | |
268 | MX 8 ten-1.test.ex. | |
269 | ||
270 | mxt8 MX 5 ten-2.test.ex. | |
271 | MX 6 ten-3.test.ex. | |
272 | MX 7 eximtesthost.test.ex. | |
273 | MX 7 ten-4.test.ex. | |
274 | MX 8 ten-1.test.ex. | |
275 | ||
276 | ; Same host appearing twice; make some variants in different orders to | |
277 | ; simulate a real nameserver and its round robinning | |
278 | ||
279 | mxt9 MX 5 ten-1.test.ex. | |
280 | MX 6 ten-2.test.ex. | |
281 | MX 7 ten-3.test.ex. | |
282 | MX 8 ten-1.test.ex. | |
283 | ||
284 | mxt9a MX 6 ten-2.test.ex. | |
285 | MX 7 ten-3.test.ex. | |
286 | MX 8 ten-1.test.ex. | |
287 | MX 5 ten-1.test.ex. | |
288 | ||
289 | mxt9b MX 7 ten-3.test.ex. | |
290 | MX 8 ten-1.test.ex. | |
291 | MX 5 ten-1.test.ex. | |
292 | MX 6 ten-2.test.ex. | |
293 | ||
294 | ; MX pointing to IP address | |
295 | ||
296 | mxt10 MX 5 V4NET.0.0.1. | |
297 | ||
298 | ; Several MXs pointing to local host | |
299 | ||
300 | mxt11 MX 5 localhost.test.ex. | |
301 | MX 6 localhost.test.ex. | |
302 | ||
303 | mxt11a MX 5 localhost.test.ex. | |
304 | MX 6 ten-1.test.ex. | |
305 | ||
306 | mxt12 MX 5 local1.test.ex. | |
307 | MX 6 local2.test.ex. | |
308 | ||
309 | local1 A 127.0.0.2 | |
310 | local2 A 127.0.0.2 | |
311 | ||
312 | ; Some more | |
313 | ||
314 | mxt13 MX 4 other1.test.ex. | |
315 | MX 5 other2.test.ex. | |
316 | ||
317 | ; Different hosts with same IP addresses in the list | |
318 | ||
319 | mxt14 MX 4 ten-5-6.test.ex. | |
320 | MX 5 ten-5.test.ex. | |
321 | MX 6 ten-6.test.ex. | |
322 | ||
cd9868ec PH |
323 | ; Non-local hosts with different precedence |
324 | ||
325 | mxt15 MX 10 ten-1.test.ex. | |
326 | MX 20 ten-2.test.ex. | |
327 | ||
c55a77db PH |
328 | ; Large number of IP addresses at one MX value, and then some |
329 | ; at another, to check that hosts_max_try tries the MX different | |
330 | ; values if it can. | |
331 | ||
332 | mxt99 MX 1 ten-1.test.ex. | |
333 | MX 1 ten-2.test.ex. | |
334 | MX 1 ten-3.test.ex. | |
335 | MX 1 ten-4.test.ex. | |
336 | MX 1 ten-5.test.ex. | |
337 | MX 1 ten-6.test.ex. | |
338 | MX 3 black-1.test.ex. | |
339 | MX 3 black-2.test.ex. | |
340 | ||
341 | ; Special case test for @mx_any (to doublecheck a reported Exim 3 bug isn't | |
342 | ; in Exim 4). The MX points to two names, each with multiple addresses. The | |
343 | ; very last address is the local host. When Exim is testing, it will sort | |
344 | ; these addresses into ascending order. | |
345 | ||
346 | mxt98 MX 1 98-1.test.ex. | |
347 | MX 2 98-2.test.ex. | |
348 | ||
349 | 98-1 A V4NET.1.2.3 | |
350 | A V4NET.4.5.6 | |
351 | ||
352 | 98-2 A V4NET.7.8.9 | |
353 | A HOSTIPV4 | |
354 | ||
355 | ; IP addresses with the same MX value | |
356 | ||
357 | mxt97 MX 1 ten-1.test.ex. | |
358 | MX 1 ten-2.test.ex. | |
359 | MX 1 ten-3.test.ex. | |
360 | MX 1 ten-4.test.ex. | |
361 | ||
362 | ; MX pointing to a single-component name that exists if qualified, but not | |
363 | ; if not. We use the special name dontqualify to stop the fake resolver | |
364 | ; qualifying it. | |
365 | ||
366 | mxt1c MX 1 dontqualify. | |
367 | ||
766e7a65 | 368 | ; MX with punycoded UTF-8 characters used for its lookup ( π.test.ex ) |
c55a77db | 369 | |
766e7a65 JH |
370 | xn--1xa MX 0 mx.π.test.ex. |
371 | ||
372 | ; MX with actual UTF-8 characters in its name, for allow_utf8_domains mode test | |
373 | ||
374 | π MX 0 mx.xn--1xa.test.ex. | |
c55a77db PH |
375 | |
376 | ; -------- Testing SRV records -------- | |
377 | ||
378 | _smtp._tcp.srv01 SRV 0 0 25 ten-1.test.ex. | |
379 | ||
380 | _smtp._tcp.srv02 SRV 1 3 99 ten-1.test.ex. | |
381 | SRV 1 1 99 ten-2.test.ex. | |
382 | SRV 3 0 66 ten-3.test.ex. | |
383 | ||
384 | _smtp._tcp.nosmtp SRV 0 0 0 . | |
385 | ||
386 | _smtp2._tcp.srv03 SRV 0 0 88 ten-4.test.ex. | |
387 | ||
388 | _smtp._tcp.srv27 SRV 0 0 PORT_S localhost | |
389 | ||
390 | ||
391 | ; -------- With some for CSA testing plus their A records ------- | |
392 | ||
393 | _client._smtp.csa1 SRV 1 2 0 csa1.test.ex. | |
394 | _client._smtp.csa2 SRV 1 1 0 csa2.test.ex. | |
395 | ||
396 | csa1 A V4NET.9.8.7 | |
397 | csa2 A V4NET.9.8.8 | |
398 | ||
abe1353e HSHR |
399 | ; ------- Testing DNSSEC ---------- |
400 | ||
401 | mx-unsec-a-unsec MX 5 a-unsec | |
402 | mx-unsec-a-sec MX 5 a-sec | |
403 | DNSSEC mx-sec-a-unsec MX 5 a-unsec | |
404 | DNSSEC mx-sec-a-sec MX 5 a-sec | |
405 | ||
406 | a-unsec A V4NET.0.0.100 | |
407 | DNSSEC a-sec A V4NET.0.0.100 | |
408 | ||
101de477 JH |
409 | ; ------- Testing DANE ------------ |
410 | ||
411 | ; full suite dns chain, sha512 | |
412 | DNSSEC mxdane512ee MX 1 dane512ee. | |
413 | DNSSEC dane512ee A HOSTIPV4 | |
414 | DNSSEC _1225._tcp.dane512ee TLSA 3 1 2 3d5eb81b1dfc3f93c1fa8819e3fb3fdb41bb590441d5f3811db17772f4bc6de29bdd7c4f4b723750dda871b99379192b3f979f03db1252c4f08b03ef7176528d | |
415 | ||
416 | ; A-only, sha256 | |
417 | DNSSEC dane256ee A HOSTIPV4 | |
418 | DNSSEC _1225._tcp.dane256ee TLSA 3 1 1 2bb55f418bb03411a5007cecbfcd3ec1c94404312c0d53a44bb2166b32654db3 | |
419 | ||
82525c6f JH |
420 | ; full MX, sha256, TA-mode |
421 | DNSSEC mxdane256ta MX 1 dane256ta. | |
422 | DNSSEC dane256ta A HOSTIPV4 | |
423 | DNSSEC _1225._tcp.dane256ta TLSA 2 0 1 b2c6f27f2d16390b4f71cacc69742bf610d750534fab240516c0f2deb4042ad4 | |
424 | ||
846430d9 JH |
425 | ; ------- Testing delays ------------ |
426 | ||
427 | DELAY=500 delay500 A HOSTIPV4 | |
428 | DELAY=1500 delay1500 A HOSTIPV4 | |
429 | ||
430 | ||
c55a77db | 431 | ; End |