Commit | Line | Data |
---|---|---|
e80b4c2d MW |
1 | ;;; Zone file for distorted.org.uk |
2 | ||
b4d4c18b | 3 | (load "hosts.lisp" :verbose nil) |
e80b4c2d | 4 | |
b1d5c6c2 | 5 | ;;;-------------------------------------------------------------------------- |
aef7892b MW |
6 | ;;; Anycast services. |
7 | ||
8 | (defvar *anycast-routable-families* (list :ipv6)) | |
9 | ||
10 | (defzoneparse :anycast (name data rec :prefix prefix :zname zname) | |
11 | (destructuring-bind (any-provider default-provider &rest other-providers) | |
12 | data | |
13 | ||
14 | ;; First, the default address. If the anycast network is preferred then | |
15 | ;; this is easy; otherwise we have something complicated to do because | |
16 | ;; IPv6 anycast addresses are globally routable, while IPv4 ones aren't. | |
17 | (if (zone-preferred-subnet-p (car any-provider)) | |
18 | (zone-set-address #'rec (cdr any-provider) :make-ptr-p t) | |
6baf2de2 | 19 | (do-host (addr (cdr any-provider)) |
aef7892b MW |
20 | (let ((family (ipaddr-family addr))) |
21 | (if (member family *anycast-routable-families*) | |
22 | (zone-set-address #'rec addr | |
23 | :family family :make-ptr-p t) | |
24 | (zone-set-address #'rec (cdr default-provider) | |
25 | :family family :make-ptr-p nil))))) | |
26 | ||
27 | ;; Now for all of the others. | |
28 | (dolist (provider (list* any-provider default-provider other-providers)) | |
29 | (zone-set-address #'rec (cdr provider) | |
30 | :make-ptr-p (eq provider any-provider) | |
c9f96590 MW |
31 | :name (domain-name-concat prefix |
32 | (zone-parse-host | |
33 | (car provider) | |
34 | zname)))))) | |
aef7892b MW |
35 | |
36 | ;;;-------------------------------------------------------------------------- | |
b1d5c6c2 | 37 | ;;; Other definitions. |
e80b4c2d MW |
38 | |
39 | (setf *default-zone-admin* "hostmaster@distorted.org.uk") | |
2bc217e8 | 40 | |
ff6c53ad | 41 | (setf *default-zone-source* 'radius.distorted.org.uk.) |
e80b4c2d | 42 | |
b1d5c6c2 MW |
43 | ;;;-------------------------------------------------------------------------- |
44 | ;;; Main zone definition. | |
45 | ||
e80b4c2d | 46 | (defzone distorted.org.uk |
ec4898f9 | 47 | |
6ef39f28 | 48 | ;; Nameservers. |
ff6c53ad | 49 | :ns #+view/inside ((radius.ns :ip radius) |
f0209b9c | 50 | (precision.ns :ip precision) |
1b9508ad | 51 | (telecaster.ns :ip telecaster) |
ff6c53ad MW |
52 | (vampire.ns :ip vampire)) |
53 | #-view/inside ((radius.ns :ip radius) | |
f0209b9c | 54 | (precision.ns :ip precision) |
1b9508ad | 55 | (telecaster.ns :ip telecaster) |
ff6c53ad | 56 | (mythic-beasts-1.ns :ip mythic-ns1) |
4a487d58 | 57 | (mythic-beasts-2.ns :ip mythic-ns2) |
ff6c53ad | 58 | (chiark.ns :ip chiark.greenend.org.uk)) |
ec4898f9 | 59 | |
6ef39f28 | 60 | ;; Mail servers. |
cf079d8b | 61 | ((@ mail blackhole) |
96c2a692 MW |
62 | :mx mail |
63 | :srv ((:smtp mail))) | |
39567ec1 MW |
64 | ((lists bugs cryptomail) |
65 | :ttl 300 | |
66 | :mx mail | |
67 | :srv ((:smtp old-mail))) | |
ec4898f9 | 68 | |
69bbb181 | 69 | (stratocaster.20140403._domainkey |
8d261a89 MW |
70 | :dkim ("stratocaster-20140403" |
71 | :v "DKIM1" :k "rsa" :h "sha256" :s "email")) | |
69bbb181 | 72 | |
06f1bb3f | 73 | ;; Anycast services. |
aef7892b MW |
74 | (dns0 :anycast ((any dns0.any) |
75 | (jump precision.jump) | |
76 | (colo precision.colo) | |
77 | (dmz radius.dmz) | |
78 | (unsafe radius.unsafe))) | |
79 | (dns1 :anycast ((any dns1.any) | |
80 | (jump telecaster.jump) | |
81 | (dmz vampire.dmz) | |
82 | (unsafe vampire.unsafe) | |
83 | (colo telecaster.colo))) | |
cfecfa5c MW |
84 | (dns :cname dns0) |
85 | ||
aef7892b MW |
86 | (ntp0 :anycast ((any ntp0.any) |
87 | (jump fender.jump) | |
88 | (dmz ibanez.dmz) | |
89 | (unsafe ibanez.unsafe) | |
90 | (colo fender.colo))) | |
91 | (ntp1 :anycast ((any ntp1.any) | |
92 | (dmz vampire.dmz) | |
93 | (unsafe vampire.unsafe))) | |
cfecfa5c MW |
94 | (ntp :cname ntp0) |
95 | ||
aef7892b | 96 | (www-cache :anycast ((any www-cache.any) |
6fcf076f MW |
97 | (jump telecaster.jump) |
98 | (dmz roadstar.dmz) | |
99 | (unsafe roadstar.unsafe) | |
100 | (colo telecaster.colo))) | |
345c0f69 MW |
101 | (wpad :cname www-cache) |
102 | ||
cfecfa5c | 103 | (_kerberos :txt "DISTORTED.ORG.UK") |
aef7892b MW |
104 | (krb0 :anycast ((any krb0.any) |
105 | (jump precision.jump) | |
106 | (dmz radius.dmz) | |
107 | (unsafe radius.unsafe) | |
108 | (colo precision.colo))) | |
109 | (krb1 :anycast ((any krb1.any) | |
110 | (dmz vampire.dmz) | |
111 | (unsafe vampire.unsafe))) | |
cfecfa5c MW |
112 | (krb-master (unsafe :svc radius.unsafe) |
113 | (dmz :svc radius.dmz)) | |
114 | :srv (((:kerberos :protocol :udp) | |
115 | krb0 | |
116 | (krb1 :prio 100)) | |
117 | ((:kerberos-master :protocol :udp :port 88) krb-master) | |
118 | (:kerberos-adm krb-master) | |
119 | ((:kpasswd :protocol :udp) krb-master)) | |
120 | (krb :cname krb0) | |
121 | ||
6ef39f28 | 122 | ;; Other services. |
96c2a692 MW |
123 | :srv ((:http www) |
124 | (:ftp ftp)) | |
ec4898f9 | 125 | |
92e99247 | 126 | ;; Entry is via little router box. |
ff6c53ad | 127 | (dmz :net dmz) |
c3997955 | 128 | (guvnor (dmz :addr guvnor.dmz)) |
c3997955 | 129 | (nat (dmz :addr nat.dmz)) |
ec4898f9 | 130 | |
6ef39f28 | 131 | ;; Wireless gateway. |
ff6c53ad | 132 | (wireless :net wireless) |
c3997955 | 133 | (evolution (safe :addr evolution.safe)) |
9c43df2a | 134 | (evolution :alias evo) |
ec4898f9 | 135 | |
4c25329e | 136 | ;; Colocated services. |
8d261a89 MW |
137 | ((irc vox) (colo :svc jazz.colo :sshfp "jazz") |
138 | (jump :svc jazz.jump :sshfp "jazz")) | |
139 | ((git www mail) (colo :svc stratocaster.colo :sshfp "stratocaster") | |
140 | (jump :svc stratocaster.jump :sshfp "stratocaster")) | |
d9fb2838 | 141 | ((www @) :tlsa (:https (:service-certificate-constraint |
9ce2de9d | 142 | :certificate :sha-256 #p"http-server-www#1"))) |
d9fb2838 | 143 | (git :tlsa (:https (:trust-anchor-assertion |
9ce2de9d | 144 | :certificate :sha-256 #p"distorted-ca"))) |
d9fb2838 | 145 | (www-cache :tlsa (3127 (:trust-anchor-assertion |
9ce2de9d MW |
146 | :certificate :sha-256 #p"distorted-ca"))) |
147 | (mail :tlsa ((:smtp :submission :imap) | |
148 | (:trust-anchor-assertion | |
149 | :certificate :sha-256 #p"distorted-ca"))) | |
d13943aa MW |
150 | :svc #+view/inside stratocaster.colo |
151 | #-view/inside stratocaster.jump | |
8d261a89 | 152 | (cabal :svc stratocaster.colo :sshfp "stratocaster") |
0dccfb48 MW |
153 | ((db ftp) (colo :svc telecaster.colo :sshfp "telecaster") |
154 | (jump :svc telecaster.jump :sshfp "telecaster")) | |
155 | (dyndns :svc telecaster.jump :sshfp "telecaster") | |
4c25329e | 156 | |
6ef39f28 | 157 | ;; Local services. |
6c719992 MW |
158 | ((rawk pifi) (unsafe :svc artist.unsafe) |
159 | (dmz :svc artist.dmz)) | |
8d261a89 MW |
160 | (mirror (dmz :svc roadstar.dmz :sshfp "roadstar") |
161 | (unsafe :svc roadstar.unsafe :sshfp "roadstar")) | |
162 | ((wiki bugs old-mail i2p) :svc vampire :sshfp "vampire") | |
ec4898f9 | 163 | |
6ef39f28 | 164 | ;; Internal services. |
8d261a89 | 165 | #+view/inside ((news lpr) :svc vampire.unsafe :sshfp "vampire") |
ec4898f9 | 166 | |
04db9729 | 167 | ;; Anonymity services. |
0865ffd5 | 168 | (anon (colo :svc jazz.colo) |
f99b371f | 169 | (unsafe :svc vampire.unsafe) |
c3997955 MW |
170 | (jump :addr anon.jump) |
171 | (dmz :addr anon.dmz)) | |
04db9729 | 172 | |
85a3496c | 173 | ;; Fancy connectivity. |
d267cd94 | 174 | (iodine (jump :svc jazz.jump)) |
85a3496c | 175 | |
38c2de7c MW |
176 | ;; Colocated hosts. |
177 | (colo :net colo) | |
178 | (jump :net jump) | |
9b7e4069 | 179 | (gate (jump :addr gate.jump :sshfp "precision")) |
c3997955 MW |
180 | (fender (colo :addr fender.colo :sshfp "fender") |
181 | (jump :addr fender.jump :sshfp "fender")) | |
182 | (precision (colo :addr precision.colo :sshfp "precision") | |
183 | (jump :addr precision.jump :sshfp "precision")) | |
184 | (telecaster (colo :addr telecaster.colo :sshfp "telecaster") | |
185 | (jump :addr telecaster.jump :sshfp "telecaster")) | |
38c2de7c | 186 | (telecaster :alias tele) |
c3997955 MW |
187 | (stratocaster (colo :addr stratocaster.colo :sshfp "stratocaster") |
188 | (jump :addr stratocaster.jump :sshfp "stratocaster")) | |
38c2de7c | 189 | (stratocaster :alias strat) |
c3997955 MW |
190 | (jazz (colo :addr jazz.colo :sshfp "jazz") |
191 | (jump :addr jazz.jump :sshfp "jazz") | |
192 | (iodine :addr jazz.iodine :sshfp "jazz")) | |
38c2de7c | 193 | |
4a372d1b | 194 | ;; Media server (on loan to Good Technology HSTG). |
376a10ac | 195 | (jaguar (jump :addr jaguar.jump :sshfp "jaguar")) |
4a372d1b | 196 | |
a20ec58c | 197 | ;; Nicko's server. |
c1f47051 | 198 | (richmond (jump :svc richmond.jump)) |
a20ec58c | 199 | |
6ef39f28 | 200 | ;; Wired ethernet. |
04d65182 MW |
201 | (unsafe :net unsafe) |
202 | (safe :net safe) | |
203 | (untrusted :net untrusted) | |
c3997955 MW |
204 | (vampire (unsafe :addr vampire.unsafe :sshfp "vampire") |
205 | (dmz :addr vampire.dmz :sshfp "vampire") | |
206 | (safe :addr vampire.safe :sshfp "vampire") | |
207 | (untrusted :addr vampire.untrusted :sshfp "vampire")) | |
208 | (ibanez (unsafe :addr ibanez.unsafe :sshfp "ibanez") | |
209 | (dmz :addr ibanez.dmz :sshfp "ibanez")) | |
210 | (radius (unsafe :addr radius.unsafe :sshfp "radius") | |
211 | (dmz :addr radius.dmz :sshfp "radius") | |
212 | (safe :addr radius.safe :sshfp "radius") | |
213 | (untrusted :addr radius.untrusted :sshfp "radius")) | |
214 | (roadstar (unsafe :addr roadstar.unsafe :sshfp "roadstar") | |
215 | (dmz :addr roadstar.dmz :sshfp "roadstar")) | |
216 | (jem (unsafe :addr jem.unsafe :sshfp "jem") | |
217 | (dmz :addr jem.dmz :sshfp "jem")) | |
218 | (artist (unsafe :addr artist.unsafe :sshfp "artist") | |
219 | (dmz :addr artist.dmz :sshfp "artist") | |
220 | (untrusted :addr artist.untrusted :sshfp "artist")) | |
ec4898f9 | 221 | |
ff6c53ad | 222 | ;; DHCP hosts. |
4b5e05ad MW |
223 | (gibson :cname gibson.dhcp) |
224 | (lespaul :cname lespaul.dhcp) | |
225 | (firebird :cname firebird.dhcp) | |
aa4d55b1 MW |
226 | (marauder :cname marauder.dhcp) |
227 | (invader :cname invader.dhcp) | |
098020ad | 228 | (gretsch :cname gretsch.dhcp) |
ec4898f9 | 229 | |
6ef39f28 | 230 | ;; Virtual network. |
374be896 | 231 | (vpn :net vpn) |
c3997955 MW |
232 | (crybaby (vpn :addr crybaby.vpn :sshfp "crybaby")) |
233 | (terror (vpn :addr terror.vpn :sshfp "terror")) | |
234 | (orange (vpn :addr orange.vpn :sshfp "orange")) | |
76bca42f | 235 | (haze (vpn :addr haze.vpn :sshfp "haze")) |
fc0ce2ed | 236 | (iodine :net iodine) |
ec4898f9 | 237 | |
6ef39f28 | 238 | ;; ITS. |
b1d5c6c2 | 239 | (its :net its) |
c3997955 MW |
240 | (gw (its :addr gw.its)) |
241 | (mz (its :addr mz.its)) | |
ec4898f9 | 242 | |
c2118713 | 243 | ;; Strange things. |
c3997955 | 244 | (blackhole (jump :addr blackhole.jump)) |
c2118713 | 245 | |
6ef39f28 | 246 | ;; Delegations. |
f0209b9c MW |
247 | (dhcp :ns ((radius.ns.dhcp :ip radius) |
248 | (precision.ns.dhcp :ip precision) | |
1b9508ad | 249 | (telecaster.ns.dhcp :ip telecaster) |
f0209b9c | 250 | (vampire.ns.dhcp :ip vampire))) |
49c5f8ff MW |
251 | (dyn :ns ((radius.ns.dyn :ip radius) |
252 | (precision.ns.dyn :ip precision) | |
1b9508ad | 253 | (telecaster.ns.dyn :ip telecaster) |
49c5f8ff | 254 | (vampire.ns.dyn :ip vampire))) |
0262908f | 255 | (dnserr :ns ((radius.ns.dnserr :ip radius.dmz) |
f0209b9c | 256 | (precision.ns.dnserr :ip precision.jump) |
1b9508ad | 257 | (telecaster.ns.dnserr :ip telecaster) |
0262908f | 258 | (vampire.ns.dnserr :ip vampire.dmz))) |
17c95de9 | 259 | (io :ns ((ns.io :ip jazz.jump)))) |
b1d5c6c2 MW |
260 | |
261 | ;;;-------------------------------------------------------------------------- | |
262 | ;;; Other subsidiary zones. | |
e80b4c2d | 263 | |
55f161b6 MW |
264 | (defzone dhcp.distorted.org.uk |
265 | (gibson :addr gibson.unsafe) | |
266 | (lespaul :addr lespaul.safe) | |
267 | (invader :addr invader.safe) | |
268 | (marauder :addr marauder.safe)) | |
269 | ||
c1f47051 MW |
270 | (defzone nicko.org |
271 | (richmond :addr richmond.jump)) | |
272 | ||
e80b4c2d | 273 | (defrevzone trusted |
8aa87005 MW |
274 | :ns (radius.distorted.org.uk. |
275 | precision.distorted.org.uk. | |
1b9508ad | 276 | telecaster.distorted.org.uk. |
8aa87005 | 277 | vampire.distorted.org.uk.) |
b59ce50d MW |
278 | :reverse unsafe |
279 | :reverse vpn | |
280 | :reverse colo | |
281 | :reverse its | |
345c0f69 | 282 | :reverse any |
8aa87005 MW |
283 | (dhcp :ns (radius.distorted.org.uk. |
284 | precision.distorted.org.uk. | |
1b9508ad | 285 | telecaster.distorted.org.uk. |
8aa87005 | 286 | vampire.distorted.org.uk.)) |
3503589d | 287 | :multi (((dhcp safe) :family :ipv4 :suffix "199.29.172.dhcp") :cname *)) |
b3f75214 | 288 | |
b29264c5 | 289 | (defrevzone (dmz :family :ipv6) |
8aa87005 MW |
290 | :ns (radius.distorted.org.uk. |
291 | precision.distorted.org.uk. | |
1b9508ad | 292 | telecaster.distorted.org.uk. |
8aa87005 | 293 | vampire.distorted.org.uk.) |
ff6c53ad | 294 | :reverse dmz) |
92e99247 | 295 | |
b29264c5 MW |
296 | (defrevzone (dmz :family :ipv4) |
297 | (144-159 :ns (radius.distorted.org.uk. | |
298 | precision.distorted.org.uk. | |
299 | telecaster.distorted.org.uk. | |
300 | vampire.distorted.org.uk.)) | |
301 | :multi ((dmz :suffix "144-159") :cname *)) | |
302 | ||
303 | (defzone 144-159.204.49.62.in-addr.arpa | |
304 | :ns (radius.distorted.org.uk. | |
305 | precision.distorted.org.uk. | |
306 | telecaster.distorted.org.uk. | |
307 | vampire.distorted.org.uk.) | |
308 | :reverse ((((:ipv4 dmz))))) | |
309 | ||
310 | (defrevzone (jump :family :ipv6) | |
8aa87005 MW |
311 | :ns (radius.distorted.org.uk. |
312 | precision.distorted.org.uk. | |
1b9508ad | 313 | telecaster.distorted.org.uk. |
8aa87005 | 314 | vampire.distorted.org.uk.) |
38c2de7c MW |
315 | :reverse jump) |
316 | ||
b29264c5 MW |
317 | (defrevzone (jump :family :ipv4) |
318 | (64-79 :ns (radius.distorted.org.uk. | |
319 | precision.distorted.org.uk. | |
320 | telecaster.distorted.org.uk. | |
321 | vampire.distorted.org.uk.)) | |
322 | :multi ((jump :suffix "64-79") :cname *)) | |
323 | ||
324 | (defzone 64-79.198.13.212.in-addr.arpa | |
325 | :ns (radius.distorted.org.uk. | |
326 | precision.distorted.org.uk. | |
327 | telecaster.distorted.org.uk. | |
328 | vampire.distorted.org.uk.) | |
329 | :reverse ((((:ipv4 jump))))) | |
330 | ||
652c34be MW |
331 | (defrevzone distorted.org.uk-he |
332 | :ns (radius.distorted.org.uk. | |
333 | precision.distorted.org.uk. | |
1b9508ad | 334 | telecaster.distorted.org.uk. |
652c34be MW |
335 | vampire.distorted.org.uk.) |
336 | :reverse distorted.org.uk-he) | |
337 | ||
338 | (defrevzone distorted.org.uk-jump | |
339 | :ns (radius.distorted.org.uk. | |
340 | precision.distorted.org.uk. | |
1b9508ad | 341 | telecaster.distorted.org.uk. |
652c34be MW |
342 | vampire.distorted.org.uk.) |
343 | :reverse distorted.org.uk-jump) | |
344 | ||
995d75b4 | 345 | (defzone io.distorted.org.uk |
17c95de9 | 346 | :ns ((ns :ip jazz.jump)) |
995d75b4 MW |
347 | (about :txt "Fake zone used for IP-over-DNS tunnelling.")) |
348 | ||
b1d5c6c2 | 349 | ;;;----- That's all, folks -------------------------------------------------- |