]> git.openstreetmap.org Git - dns.git/blob - dnsconfig.js
85c2f2d4cb3fb3e46c8f2f454ec256c140b1d0f7
[dns.git] / dnsconfig.js
1 var REG_NONE = NewRegistrar("none");
2 var REG_GANDI = NewRegistrar("gandi_v5");
3 var PROVIDER = NewDnsProvider("cloudflare");
4
5 var DOMAIN;
6 var REGISTRAR;
7 var DYNAMIC_RECORDS;
8
9 var QUALIFY = function (name) {
10   return name + "." + DOMAIN + ".";
11 };
12
13 function loadTemplate(template) {
14   return function (domain, registrar) {
15     DOMAIN = domain;
16     REGISTRAR = registrar;
17
18     require("src/" + template + ".js");
19   };
20 }
21
22 // Ensure that the reverse DNS records are in RFC 4183 notation
23 REVCOMPAT("rfc4183");
24
25 require("src/hosts.js");
26
27 var OPENSTREETMAP = loadTemplate("openstreetmap");
28
29 require("include/sshfp.js");
30 require("include/nominatim.js");
31
32 try {
33   require("include/geo.js");
34 } catch (e) {
35   var GEO_NS_RECORDS = [];
36 }
37
38 OPENSTREETMAP("openstreetmap.org", REG_GANDI);
39 OPENSTREETMAP("openstreetmap.com", REG_GANDI);
40 OPENSTREETMAP("openstreetmap.net", REG_GANDI);
41 OPENSTREETMAP("openstreetmap.ca", REG_GANDI);
42 OPENSTREETMAP("openstreetmap.eu", REG_NONE);
43 OPENSTREETMAP("openstreetmap.pro", REG_GANDI);
44 OPENSTREETMAP("openstreetmap.gay", REG_GANDI);
45 OPENSTREETMAP("openstreetmaps.org", REG_GANDI);
46 OPENSTREETMAP("osm.org", REG_GANDI);
47 OPENSTREETMAP("openmaps.org", REG_GANDI);
48 OPENSTREETMAP("openstreetmap.io", REG_GANDI);
49 OPENSTREETMAP("osm.io", REG_GANDI);
50 OPENSTREETMAP("openstreetmap.li", REG_GANDI);
51 OPENSTREETMAP("openworldmap.org", REG_GANDI);
52 OPENSTREETMAP("freeosm.org", REG_GANDI);
53 OPENSTREETMAP("open-maps.org", REG_GANDI);
54 OPENSTREETMAP("open-maps.com", REG_GANDI);
55 OPENSTREETMAP("osmbugs.org", REG_GANDI);
56 OPENSTREETMAP("openstreetmap.ai", REG_GANDI);
57 OPENSTREETMAP("openstreetmap.am", REG_GANDI);
58 OPENSTREETMAP("openstreetmap.fi", REG_GANDI);
59 OPENSTREETMAP("openstreetmap.gr", REG_GANDI);
60 OPENSTREETMAP("openstreetmap.me", REG_GANDI);
61 OPENSTREETMAP("openstreetmap.mx", REG_GANDI);
62 OPENSTREETMAP("openstreetmap.nz", REG_GANDI);
63 OPENSTREETMAP("openstreetmap.pe", REG_GANDI);
64 OPENSTREETMAP("openstreetmap.ph", REG_GANDI);
65 OPENSTREETMAP("openstreetmap.sg", REG_GANDI);
66 OPENSTREETMAP("openstreetmap.tv", REG_GANDI);
67 OPENSTREETMAP("openstreetmap.wales", REG_GANDI);
68 OPENSTREETMAP("openstreetmapdata.org", REG_GANDI);
69 OPENSTREETMAP("openstreetmap.org.nz", REG_GANDI);
70
71 // Disable due to registration issue
72 // OPENSTREETMAP("openstreetmap.al", REG_NONE);
73
74 D_EXTEND("openstreetmap.org",
75   CNAME("_acme-challenge.tile", "bxve5ryiwwv7woiraq.fastly-validations.com.", TTL("10m")),
76
77   SSHFP_RECORDS,
78   GEO_NS_RECORDS,
79   NOMINATIM_RECORDS
80 );
81
82 D_EXTEND("osm.org",
83   CNAME("_acme-challenge.tile", "21gvdfyyxjoc4lmsem.fastly-validations.com.", TTL("10m")),
84
85   SSHFP_RECORDS
86 );
87
88 // Mastodon redirects to en.osm.town
89 var OPENSTREETMAP_TOWN = loadTemplate("openstreetmap-town");
90 OPENSTREETMAP_TOWN("openstreetmap.town", REG_GANDI);
91
92 // Domain owned by Amanda McCann
93 // osm.town
94
95 // Managed independently by Guillaume Rischard
96 // openstreetmap.lu
97 // osm.lu
98
99 var OSM_LI = loadTemplate("osm-li");
100
101 OSM_LI("osm.li", REG_GANDI);
102
103 var OPENSTREETMAP_UK = loadTemplate("openstreetmap-uk");
104
105 OPENSTREETMAP_UK("openstreetmap.uk", REG_GANDI);
106 OPENSTREETMAP_UK("openstreetmap.org.uk", REG_GANDI);
107 OPENSTREETMAP_UK("openstreetmap.co.uk", REG_GANDI);
108
109 var OPENSTREETMAP_ZA = loadTemplate("openstreetmap-za");
110
111 OPENSTREETMAP_ZA("openstreetmap.org.za", REG_NONE);
112 OPENSTREETMAP_ZA("osm.org.za", REG_NONE);
113
114 var OSMFOUNDATION = loadTemplate("osmfoundation");
115
116 OSMFOUNDATION("osmfoundation.org", REG_GANDI);
117
118 var STATEOFTHEMAP = loadTemplate("stateofthemap");
119
120 STATEOFTHEMAP("stateofthemap.org", REG_GANDI);
121 STATEOFTHEMAP("stateofthemap.com", REG_GANDI);
122 STATEOFTHEMAP("sotm.org", REG_GANDI);
123
124 // The domain is registation is managed by FOSSGIS.de
125 var STATEOFTHEMAP_EU = loadTemplate("stateofthemap-eu");
126 STATEOFTHEMAP_EU("stateofthemap.eu", REG_NONE);
127
128 // State of the Map Madagascar
129 var OPENSTREETMAP_MG = loadTemplate("openstreetmap-mg");
130 OPENSTREETMAP_MG("openstreetmap.mg", REG_GANDI);
131
132 var OPENGEODATA = loadTemplate("opengeodata");
133 OPENGEODATA("opengeodata.org", REG_GANDI);
134
135 var SWITCH2OSM = loadTemplate("switch2osm");
136
137 SWITCH2OSM("switch2osm.org", REG_GANDI);
138 SWITCH2OSM("switch2osm.com", REG_GANDI);
139
140 var OSM2PGSQL = loadTemplate("osm2pgsql");
141
142 OSM2PGSQL("osm2pgsql.org", REG_GANDI);
143 OSM2PGSQL("osm2pgsql.com", REG_GANDI);
144
145 var IDEDITOR = loadTemplate("ideditor");
146
147 IDEDITOR("ideditor.com", REG_GANDI);
148
149 var OSMWIKI = loadTemplate("osm-wiki");
150 OSMWIKI("osm.wiki", REG_GANDI);
151
152 var PTR_HE_DUB_IPV4 = loadTemplate("ptr_he_dub_ipv4");
153
154 PTR_HE_DUB_IPV4(REV("184.104.226.96/27"), REG_NONE);
155
156 var PTR_HE_DUB_IPV6 = loadTemplate("ptr_he_dub_ipv6");
157
158 PTR_HE_DUB_IPV6(REV("2001:470:1:b3b::/64"), REG_NONE);
159
160 var PTR_EQUINIX_AMS_IPV4 = loadTemplate("ptr_equinix_ams_ipv4");
161
162 PTR_EQUINIX_AMS_IPV4(REV("82.199.86.96/27"), REG_NONE);
163
164 var PTR_EQUINIX_AMS_IPV6 = loadTemplate("ptr_equinix_ams_ipv6");
165
166 PTR_EQUINIX_AMS_IPV6(REV("2001:4d78:500:5e3::/64"), REG_NONE);
167
168 var PTR_EQUINIX_DUB_IPV4 = loadTemplate("ptr_equinix_dub_ipv4");
169
170 PTR_EQUINIX_DUB_IPV4(REV("87.252.214.96/27"), REG_NONE);
171
172 var PTR_EQUINIX_DUB_IPV6 = loadTemplate("ptr_equinix_dub_ipv6");
173
174 PTR_EQUINIX_DUB_IPV6(REV("2001:4d78:fe03:1c::/64"), REG_NONE);
175
176 // No immediate plans
177 // External DNS and hosting still up
178 // freethepostcode.org
179
180 // External DNS and hosting
181 // openstreetmap.cymru