1 D(DOMAIN, REGISTRAR, DnsProvider(PROVIDER),
3 // Publish CAA records indicating that only letsencrypt should issue certificates
5 CAA("@", "issue", "letsencrypt.org", CF_TTL_ANY),
6 CAA("@", "issuewild", "letsencrypt.org", CF_TTL_ANY),
7 CAA("@", "iodef", "mailto:hostmaster@openstreetmap.org"),
9 // Use shenron as the MX host
11 MX("@", 10, QUALIFY("a.mx")),
12 MX("messages", 10, QUALIFY("a.mx")),
13 MX("noreply", 10, QUALIFY("a.mx")),
14 MX("otrs", 10, QUALIFY("a.mx")),
15 A("a.mx", "212.110.172.32"),
16 AAAA("a.mx", "2001:41c9:1:400::32"),
18 // Publish SPF records indicating that only shenron sends mail
20 TXT("@", "v=spf1 ip4:212.110.172.32 ip6:2001:41c9:1:400::32 mx -all"),
21 TXT("otrs", "v=spf1 ip4:212.110.172.32 ip6:2001:41c9:1:400::32 mx -all"),
23 // Announce MTA-STS policy and TLSRPT policy for error reports
25 TXT("_mta-sts", "v=STSv1; id=202001291805Z"),
26 TXT("_smtp._tls", "v=TLSRPTv1; rua=mailto:postmaster@openstreetmap.org"),
28 // Delegate MTA-STS policy for subdomains
30 CNAME("_mta-sts.messages", QUALIFY("_mta-sts")),
31 CNAME("_mta-sts.noreply", QUALIFY("_mta-sts")),
32 CNAME("_mta-sts.otrs", QUALIFY("_mta-sts")),
34 // Google postmaster tools verification
36 CNAME("af323lytato5", "gv-o4v3qh5pfayqex.dv.googlehosted.com."),
37 CNAME("irzdddnmh465", "gv-cwr6bvt7xsgact.dv.googlehosted.com."),
39 // Delegate geo.openstreetmap.org to PowerDNS
41 NS("geo", QUALIFY("saphira")),
42 NS("geo", QUALIFY("ridgeback")),
43 NS("geo", QUALIFY("jakelong")),
44 NS("geo", QUALIFY("katie")),
45 NS("geo", QUALIFY("stormfly-02")),
46 NS("geo", QUALIFY("chrysophylax")),
48 // Main web servers and their aliases
50 A("spike-04", "89.16.162.21"),
51 AAAA("spike-04", "2001:41c9:2:d6::21"),
52 // A("@", "89.16.162.21", TTL("10m")),
53 // AAAA("@", "2001:41c9:2:d6::21", TTL("10m")),
54 // A("www", "89.16.162.21", TTL("10m")),
55 // AAAA("www", "2001:41c9:2:d6::21", TTL("10m")),
56 // A("api", "89.16.162.21", TTL("10m")),
57 // AAAA("api", "2001:41c9:2:d6::21", TTL("10m")),
58 // A("maps", "89.16.162.21", TTL("10m")),
59 // AAAA("maps", "2001:41c9:2:d6::21", TTL("10m")),
60 // A("mapz", "89.16.162.21", TTL("10m")),
61 // AAAA("mapz", "2001:41c9:2:d6::21", TTL("10m")),
62 A("spike-04.bm", "10.0.32.21"),
63 A("spike-04.oob", "10.0.33.21"),
65 A("spike-05", "89.16.162.22"),
66 AAAA("spike-05", "2001:41c9:2:d6::22"),
67 // A("@", "89.16.162.22", TTL("10m")),
68 // AAAA("@", "2001:41c9:2:d6::22", TTL("10m")),
69 // A("www", "89.16.162.22", TTL("10m")),
70 // AAAA("www", "2001:41c9:2:d6::22", TTL("10m")),
71 // A("api", "89.16.162.22", TTL("10m")),
72 // AAAA("api", "2001:41c9:2:d6::22", TTL("10m")),
73 // A("maps", "89.16.162.22", TTL("10m")),
74 // AAAA("maps", "2001:41c9:2:d6::22", TTL("10m")),
75 // A("mapz", "89.16.162.22", TTL("10m")),
76 // AAAA("mapz", "2001:41c9:2:d6::22", TTL("10m")),
77 A("spike-05.bm", "10.0.32.22"),
78 A("spike-05.oob", "10.0.33.22"),
80 A("spike-06", "130.117.76.11"),
81 AAAA("spike-06", "2001:978:2:2c::172:B"),
82 A("@", "130.117.76.11", TTL("10m")),
83 AAAA("@", "2001:978:2:2c::172:B", TTL("10m")),
84 A("www", "130.117.76.11", TTL("10m")),
85 AAAA("www", "2001:978:2:2c::172:B", TTL("10m")),
86 A("api", "130.117.76.11", TTL("10m")),
87 AAAA("api", "2001:978:2:2c::172:B", TTL("10m")),
88 A("maps", "130.117.76.11", TTL("10m")),
89 AAAA("maps", "2001:978:2:2c::172:B", TTL("10m")),
90 A("mapz", "130.117.76.11", TTL("10m")),
91 AAAA("mapz", "2001:978:2:2c::172:B", TTL("10m")),
92 A("spike-06.ams", "10.0.48.11"),
93 A("spike-06.oob", "10.0.49.11"),
95 A("spike-07", "130.117.76.12"),
96 AAAA("spike-07", "2001:978:2:2c::172:C"),
97 A("@", "130.117.76.12", TTL("10m")),
98 AAAA("@", "2001:978:2:2c::172:C", TTL("10m")),
99 A("www", "130.117.76.12", TTL("10m")),
100 AAAA("www", "2001:978:2:2c::172:C", TTL("10m")),
101 A("api", "130.117.76.12", TTL("10m")),
102 AAAA("api", "2001:978:2:2c::172:C", TTL("10m")),
103 A("maps", "130.117.76.12", TTL("10m")),
104 AAAA("maps", "2001:978:2:2c::172:C", TTL("10m")),
105 A("mapz", "130.117.76.12", TTL("10m")),
106 AAAA("mapz", "2001:978:2:2c::172:C", TTL("10m")),
107 A("spike-07.ams", "10.0.48.12"),
108 A("spike-07.oob", "10.0.49.12"),
110 A("spike-08", "130.117.76.13"),
111 AAAA("spike-08", "2001:978:2:2c::172:D"),
112 A("@", "130.117.76.13", TTL("10m")),
113 AAAA("@", "2001:978:2:2c::172:D", TTL("10m")),
114 A("www", "130.117.76.13", TTL("10m")),
115 AAAA("www", "2001:978:2:2c::172:D", TTL("10m")),
116 A("api", "130.117.76.13", TTL("10m")),
117 AAAA("api", "2001:978:2:2c::172:D", TTL("10m")),
118 A("maps", "130.117.76.13", TTL("10m")),
119 AAAA("maps", "2001:978:2:2c::172:D", TTL("10m")),
120 A("mapz", "130.117.76.13", TTL("10m")),
121 AAAA("mapz", "2001:978:2:2c::172:D", TTL("10m")),
122 A("spike-08.ams", "10.0.48.13"),
123 A("spike-08.oob", "10.0.49.13"),
125 // Rails application servers
127 A("thorn-01.ams", "10.0.48.51"),
128 A("rails1.ams", "10.0.48.51"),
129 A("thorn-01.oob", "10.0.49.51"),
131 A("thorn-02.ams", "10.0.48.52"),
132 A("rails2.ams", "10.0.48.52"),
133 A("thorn-02.oob", "10.0.49.52"),
135 A("thorn-03.ams", "10.0.48.53"),
136 A("rails3.ams", "10.0.48.53"),
137 A("thorn-03.oob", "10.0.49.53"),
139 A("thorn-04.bm", "10.0.32.41"),
140 A("rails4.bm", "10.0.32.41"),
141 A("thorn-04.oob", "10.0.33.41"),
143 A("thorn-05.bm", "10.0.32.42"),
144 A("rails5.bm", "10.0.32.42"),
145 A("thorn-05.oob", "10.0.33.42"),
149 A("pummelzacken", "193.60.236.18"),
150 // A("nominatim", "193.60.236.18", TTL("10m")),
151 A("pummelzacken.ucl", "10.0.0.20"),
152 A("pummelzacken.oob", "10.0.1.20"),
154 A("dulcy", "130.117.76.9"),
155 AAAA("dulcy", "2001:978:2:2c::172:9"),
156 A("nominatim", "130.117.76.9", TTL("10m")),
157 AAAA("nominatim", "2001:978:2:2c::172:9", TTL("10m")),
158 A("dulcy.ams", "10.0.48.9"),
159 A("dulcy.oob", "10.0.49.9"),
163 A("grindtooth", "193.60.236.15"),
164 A("taginfo", "193.60.236.15", TTL("10m")),
165 A("grindtooth.ucl", "10.0.0.19"),
166 A("grindtooth.oob", "10.0.1.19"),
168 A("stormfly-01", "140.211.167.104"),
169 AAAA("stormfly-01", "2605:bc80:3010:700::8cde:a768"),
170 // A("taginfo", "140.211.167.104", TTL("10m")),
171 // AAAA("taginfo", "2605:bc80:3010:700::8cde:a768", TTL("10m")),
172 A("stormfly-01.oob", "10.0.0.99"),
176 A("orm", "130.117.76.3"),
177 AAAA("orm", "2001:978:2:2c::172:3"),
178 A("orm.ams", "10.0.48.3"),
179 A("orm.oob", "10.0.49.3"),
181 A("odin", "130.117.76.15"),
182 AAAA("odin", "2001:978:2:2c::172:f"),
183 A("odin.ams", "10.0.48.15"),
184 A("odin.oob", "10.0.49.15"),
186 A("ysera", "193.60.236.22"),
187 A("ysera.ucl", "10.0.0.15"),
188 A("ysera.oob", "10.0.1.15"),
190 A("scorch", "176.31.235.79"),
191 AAAA("scorch", "2001:41d0:2:fc4f::1"),
193 A("rhaegal", "161.53.248.77"),
195 A("pyrene", "140.211.167.98"),
196 AAAA("pyrene", "2605:bc80:3010:700::8cd3:a762"),
197 A("pyrene.oob", "10.0.0.40"),
199 A("bowser", "138.44.68.106"),
201 CNAME("tile", QUALIFY("tile.geo")),
202 CNAME("a.tile", QUALIFY("tile.geo")),
203 CNAME("b.tile", QUALIFY("tile.geo")),
204 CNAME("c.tile", QUALIFY("tile.geo")),
208 A("ironbelly", "130.117.76.10"),
209 AAAA("ironbelly", "2001:978:2:2c::172:a"),
210 A("backup", "130.117.76.10", TTL("10m")),
211 AAAA("backup", "2001:978:2:2c::172:a", TTL("10m")),
212 A("planet", "130.117.76.10", TTL("10m")),
213 AAAA("planet", "2001:978:2:2c::172:a", TTL("10m")),
214 A("logstash", "130.117.76.10"),
215 AAAA("logstash", "2001:978:2:2c::172:a"),
216 A("ironbelly.ams", "10.0.48.10"),
217 A("ironbelly.oob", "10.0.49.10"),
219 A("grisu", "89.16.162.20"),
220 AAAA("grisu", "2001:41c9:2:d6::20"),
221 // A("backup", "89.16.162.20", TTL("10m")),
222 // AAAA("backup", "2001:41c9:2:d6::20", TTL("10m")),
223 // A("planet", "89.16.162.20", TTL("10m")),
224 // AAAA("planet", "2001:41c9:2:d6::20", TTL("10m")),
225 A("grisu.bm", "10.0.32.20"),
226 A("grisu.oob", "10.0.33.20"),
230 A("karm.ams", "10.0.48.50"),
231 A("karm.oob", "10.0.49.50"),
233 A("eddie.ucl", "10.0.0.10"),
234 A("eddie.oob", "10.0.1.10"),
236 A("katla.bm", "10.0.32.40"),
237 A("katla.oob", "10.0.33.40"),
239 A("ramoth.ams", "10.0.48.5"),
240 A("ramoth.oob", "10.0.49.5"),
242 // Development server with wildcard alias for user sites
244 A("errol", "193.60.236.13"),
245 A("dev", "193.60.236.13"),
246 A("*.dev", "193.60.236.13"),
247 A("ooc", "193.60.236.13"),
248 A("a.ooc", "193.60.236.13"),
249 A("b.ooc", "193.60.236.13"),
250 A("c.ooc", "193.60.236.13"),
251 A("npe", "193.60.236.13"),
252 A("errol.ucl", "10.0.0.14"),
253 A("errol.oob", "10.0.1.14"),
257 A("ridley", "193.60.236.19"),
258 A("otrs", "193.60.236.19"),
259 A("blog", "193.60.236.19"),
260 A("foundation", "193.60.236.19"),
261 A("hot", "193.60.236.19"),
262 A("dmca", "193.60.236.19"),
263 A("ridley.ucl", "10.0.0.3"),
264 A("ridley.oob", "10.0.1.3"),
268 A("eustace", "193.60.236.14"),
269 A("piwik", "193.60.236.14"),
270 A("eustace.ucl", "10.0.0.9"),
271 A("eustace.oob", "10.0.1.9"),
275 A("draco", "193.60.236.12"),
276 A("draco.ucl", "10.0.0.11"),
277 A("draco.oob", "10.0.1.11"),
279 A("kessie", "178.250.74.36"),
280 AAAA("kessie", "2a02:1658:4:0:dad3:85ff:fe5d:875e"),
281 A("agri", "178.250.74.36", TTL("1h")),
282 AAAA("agri", "2a02:1658:4:0:dad3:85ff:fe5d:875e", TTL("1h")),
283 A("a.agri", "178.250.74.36", TTL("1h")),
284 AAAA("a.agri", "2a02:1658:4:0:dad3:85ff:fe5d:875e", TTL("1h")),
285 A("b.agri", "178.250.74.36", TTL("1h")),
286 AAAA("b.agri", "2a02:1658:4:0:dad3:85ff:fe5d:875e", TTL("1h")),
287 A("c.agri", "178.250.74.36", TTL("1h")),
288 AAAA("c.agri", "2a02:1658:4:0:dad3:85ff:fe5d:875e", TTL("1h")),
289 A("os", "178.250.74.36", TTL("1h")),
290 AAAA("os", "2a02:1658:4:0:dad3:85ff:fe5d:875e", TTL("1h")),
291 A("a.os", "178.250.74.36", TTL("1h")),
292 AAAA("a.os", "2a02:1658:4:0:dad3:85ff:fe5d:875e", TTL("1h")),
293 A("b.os", "178.250.74.36", TTL("1h")),
294 AAAA("b.os", "2a02:1658:4:0:dad3:85ff:fe5d:875e", TTL("1h")),
295 A("c.os", "178.250.74.36", TTL("1h")),
296 AAAA("c.os", "2a02:1658:4:0:dad3:85ff:fe5d:875e", TTL("1h")),
297 A("kessie.oob", "178.250.74.37"),
301 A("urmel", "193.60.236.21"),
302 A("munin", "193.60.236.21"),
303 A("urmel.ucl", "10.0.0.6"),
304 A("urmel.oob", "10.0.1.6"),
308 A("sarel", "193.60.236.20"),
309 A("chef", "193.60.236.20"),
310 A("hardware", "193.60.236.20"),
311 A("acme", "193.60.236.20"),
312 A("git", "193.60.236.20", TTL("10m")),
313 A("dns", "193.60.236.20", TTL("10m")),
314 A("sarel.ucl", "10.0.0.12"),
315 A("sarel.oob", "10.0.1.12"),
319 A("clifford", "193.60.236.11"),
320 A("forum", "193.60.236.11", TTL("10m")),
321 A("clifford.ucl", "10.0.0.17"),
322 A("clifford.oob", "10.0.1.17"),
326 A("kvm1.ucl", "10.0.0.21"),
328 // Managed network switches
330 A("switch1", "130.117.76.2"),
331 AAAA("switch1", "2001:978:2:2c::172:2"),
333 // Managed power strips
335 A("pdu1.ams", "10.0.48.100"),
336 A("pdu2.ams", "10.0.48.101"),
338 // Bytemark machine, and the services which operate from it
340 A("shenron", "212.110.172.32"),
341 AAAA("shenron", "2001:41c9:1:400::32"),
342 A("mail", "212.110.172.32"),
343 AAAA("mail", "2001:41c9:1:400::32"),
344 A("mta-sts", "212.110.172.32"),
345 AAAA("mta-sts", "2001:41c9:1:400::32"),
346 A("lists", "212.110.172.32"),
347 AAAA("lists", "2001:41c9:1:400::32"),
348 A("svn", "212.110.172.32"),
349 AAAA("svn", "2001:41c9:1:400::32"),
350 A("trac", "212.110.172.32"),
351 AAAA("trac", "2001:41c9:1:400::32"),
352 A("irc", "212.110.172.32"),
353 AAAA("irc", "2001:41c9:1:400::32"),
354 A("help", "212.110.172.32"),
355 AAAA("help", "2001:41c9:1:400::32"),
356 A("blogs", "212.110.172.32", TTL("10m")),
357 AAAA("blogs", "2001:41c9:1:400::32", TTL("10m")),
358 A("shenron.bm", "10.0.16.3"),
362 A("tabaluga", "130.117.76.14"),
363 AAAA("tabaluga", "2001:978:2:2c::172:e"),
364 A("wiki", "130.117.76.14", TTL("10m")),
365 AAAA("wiki", "2001:978:2:2c::172:e", TTL("10m")),
366 A("tabaluga.ams", "10.0.48.14"),
367 A("tabaluga.oob", "10.0.49.14"),
371 A("noquiklos", "193.60.236.16"),
372 A("gps-tile", "193.60.236.16"),
373 A("a.gps-tile", "193.60.236.16"),
374 A("b.gps-tile", "193.60.236.16"),
375 A("c.gps-tile", "193.60.236.16"),
376 A("gps.tile", "193.60.236.16"),
377 A("gps-a.tile", "193.60.236.16"),
378 A("gps-b.tile", "193.60.236.16"),
379 A("gps-c.tile", "193.60.236.16"),
380 A("noquiklos.ucl", "10.0.0.13"),
381 A("noquiklos.oob", "10.0.1.13"),
383 // Tile cache servers
385 A("gorynych", "5.45.248.21"),
386 AAAA("gorynych", "2a02:6b8:b010:5065::a001"),
387 A("trogdor", "134.90.146.26"),
388 A("trogdor.oob", "134.90.146.30"),
389 A("ridgeback", "31.169.50.10"),
390 A("ridgeback.oob", "31.169.50.14"),
391 A("jakelong", "71.19.155.177"),
392 AAAA("jakelong", "2605:2700:0:17:a800:ff:fe3e:cdca"),
393 A("nepomuk", "77.95.65.39"),
394 AAAA("nepomuk", "2a03:9180:0:100::7"),
395 A("simurgh", "94.20.20.55"),
396 A("katie", "144.76.70.77"),
397 AAAA("katie", "2a01:4f8:191:834c::2"),
398 A("konqi", "81.7.11.83"),
399 AAAA("konqi", "2a02:180:1:1::517:b53"),
400 A("longma", "140.110.240.7"),
401 AAAA("longma", "2001:e10:2000:240::7"),
402 A("viserion", "193.198.233.211"),
403 AAAA("viserion", "2001:b68:4cff:3::3"),
404 A("drogon", "161.53.30.107"),
405 AAAA("drogon", "2001:b68:c0ff:0:221:5eff:fe40:c7c4"),
406 A("saphira", "185.73.44.30"),
407 AAAA("saphira", "2001:ba8:0:2c1e::"),
408 A("toothless", "185.73.44.167"),
409 AAAA("toothless", "2001:ba8:0:2ca7::"),
410 A("sarkany", "37.17.173.8"),
411 AAAA("sarkany", "2001:4c48:2:bf04:250:56ff:fe8f:5c81"),
412 A("cmok", "31.130.201.40"),
413 AAAA("cmok", "2001:67c:2268:1005:21e:8cff:fe8c:8d3b"),
414 A("stormfly-02", "140.211.167.105"),
415 AAAA("stormfly-02", "2605:bc80:3010:700::8cde:a769"),
416 A("stormfly-02.oob", "10.0.0.108"),
417 A("rimfaxe", "130.225.254.109"),
418 AAAA("rimfaxe", "2001:878:346::109"),
419 A("culebre", "155.210.4.103"),
420 A("kalessin", "185.66.195.245"),
421 AAAA("kalessin", "2a03:2260:2000:1::5"),
422 A("angor", "196.10.54.165"),
423 // AAAA("angor", "2001:43f8:1f4:b00:b283:feff:fed8:dd45"),
424 A("ladon", "83.212.2.116"),
425 AAAA("ladon", "2001:648:2ffe:4::116"),
426 A("ascalon", "184.107.48.228"),
427 A("noomoahk", "91.224.148.166"),
428 AAAA("noomoahk", "2a03:7220:8080:a600::1"),
429 A("cherufe", "200.91.44.37"),
430 A("norbert", "89.234.186.100"),
431 AAAA("norbert", "2a00:5884:821c::1"),
432 A("chrysophylax", "217.71.244.22"),
433 AAAA("chrysophylax", "2001:8e0:40:2039::10"),
434 A("necrosan", "80.67.167.77"),
435 AAAA("necrosan", "2a0b:cbc0:110d:1::1c"),
436 A("keizer", "195.201.226.63"),
437 AAAA("keizer", "2a01:4f8:1c1c:bc54::1"),
438 A("vipertooth", "176.122.99.101"),
439 AAAA("vipertooth", "2001:67c:2d40::65"),
440 A("tuatara", "114.23.141.203"),
441 AAAA("tuatara", "2406:1e00:b410:c24:529a:4cff:fe79:bc3b"),
442 A("waima", "103.197.61.160"),
443 A("nidhogg", "130.236.254.221"),
444 AAAA("nidhogg", "2001:6b0:17:f0a0::dd"),
445 A("boitata", "200.236.31.207"),
446 AAAA("boitata", "2801:82:80ff:8002:216:ccff:feaa:21"),
447 A("fafnir", "130.239.18.114"),
448 AAAA("fafnir", "2001:6b0:e:2a18::114"),
449 A("fume", "147.228.60.16"),
450 A("balerion", "138.44.68.134"),
451 A("naga", "185.116.130.151"),
455 A("tiamat-00", "193.60.236.40"),
456 A("tiamat-00.ucl", "10.0.0.40"),
457 A("tiamat-00.oob", "10.0.1.40"),
458 A("tiamat-01", "193.60.236.41"),
459 A("tiamat-01.ucl", "10.0.0.41"),
460 A("tiamat-01.oob", "10.0.1.41"),
461 A("tiamat-02", "193.60.236.42"),
462 A("tiamat-02.ucl", "10.0.0.42"),
463 A("tiamat-02.oob", "10.0.1.42"),
464 A("tiamat-03", "193.60.236.43"),
465 A("tiamat-03.ucl", "10.0.0.43"),
466 A("tiamat-03.oob", "10.0.1.43"),
467 A("tiamat-10", "193.60.236.44"),
468 A("tiamat-10.ucl", "10.0.0.44"),
469 A("tiamat-10.oob", "10.0.1.44"),
470 A("tiamat-11", "193.60.236.45"),
471 A("tiamat-11.ucl", "10.0.0.45"),
472 A("tiamat-11.oob", "10.0.1.45"),
473 A("tiamat-12", "193.60.236.46"),
474 A("tiamat-12.ucl", "10.0.0.46"),
475 A("tiamat-12.oob", "10.0.1.46"),
476 A("tiamat-13", "193.60.236.47"),
477 A("tiamat-13.ucl", "10.0.0.47"),
478 A("tiamat-13.oob", "10.0.1.47"),
479 A("tiamat-20", "193.60.236.48"),
480 A("tiamat-20.ucl", "10.0.0.48"),
481 A("tiamat-20.oob", "10.0.1.48"),
482 A("tiamat-21", "193.60.236.49"),
483 A("tiamat-21.ucl", "10.0.0.49"),
484 A("tiamat-21.oob", "10.0.1.49"),
485 A("tiamat-22", "193.60.236.50"),
486 A("tiamat-22.ucl", "10.0.0.50"),
487 A("tiamat-22.oob", "10.0.1.50"),
488 A("tiamat-23", "193.60.236.51"),
489 A("tiamat-23.ucl", "10.0.0.51"),
490 A("tiamat-23.oob", "10.0.1.51"),
494 A("donate", "193.60.236.19", TTL("10m")),
496 // Uptime site at StatusCake
498 CNAME("uptime", "uptimessl.statuscake.com."),
500 // Custom Domain for https://github.com/osmfoundation/welcome-mat/
502 CNAME("welcome", "osmfoundation.github.io."),
504 // Dynamic DNS records