1var DSP_CLOUDFLARE = NewDnsProvider("cloudflare");
2var REG_NONE = NewRegistrar("none");
3
4var WOLUMONDE_IP = "23.88.101.188";
5var DZWONEK_IP = "94.237.26.47";
6
7D(
8 "gaze.systems",
9 REG_NONE,
10 DnsProvider(DSP_CLOUDFLARE),
11 DefaultTTL(1),
12 A("@", WOLUMONDE_IP, CF_PROXY_OFF),
13 A("doc", WOLUMONDE_IP, CF_PROXY_OFF),
14 A("git", WOLUMONDE_IP, CF_PROXY_OFF),
15 A("limbus", WOLUMONDE_IP, CF_PROXY_OFF),
16 A("pmart", WOLUMONDE_IP, CF_PROXY_OFF),
17 // A("webhook", WOLUMONDE_IP, CF_PROXY_OFF),
18 A("dash", WOLUMONDE_IP, CF_PROXY_OFF), // perses
19 A("knot", WOLUMONDE_IP, CF_PROXY_OFF),
20 A("spindle", WOLUMONDE_IP, CF_PROXY_OFF),
21 A("skeetdeck", WOLUMONDE_IP, CF_PROXY_OFF),
22 A("likes", WOLUMONDE_IP, CF_PROXY_OFF),
23 A("id", WOLUMONDE_IP, CF_PROXY_OFF),
24 A("test", WOLUMONDE_IP, CF_PROXY_OFF),
25 // atp handles
26 A("dawn", WOLUMONDE_IP, CF_PROXY_OFF),
27 A("guestbook", WOLUMONDE_IP, CF_PROXY_OFF),
28 A("drew", WOLUMONDE_IP, CF_PROXY_OFF),
29 A("eris", WOLUMONDE_IP, CF_PROXY_OFF),
30 // dzwonek
31 A("vpn", DZWONEK_IP, CF_PROXY_OFF),
32 // A("meow", WOLUMONDE_IP, CF_PROXY_OFF),
33 // thing
34 // TXT("id", "a data endpoint for entity with serial id /90008/."),
35 // TXT("id", "entity linked here uses it/they pronouns. it can be referred to as /dusk/ or /dawn/."),
36 // TXT("id", "this one is not a human, try to refer to it in third person. use /this one/, /this thing/, etc."),
37 // TXT("id", "try connecting to https://gaze.systems/about for more information."),
38 // github pages
39 CNAME("dev", "90-008.github.io."),
40 // fastmail
41 CNAME("fm1._domainkey", "fm1.gaze.systems.dkim.fmhosted.com."),
42 CNAME("fm2._domainkey", "fm2.gaze.systems.dkim.fmhosted.com."),
43 CNAME("fm3._domainkey", "fm3.gaze.systems.dkim.fmhosted.com."),
44 MX("@", 10, "in1-smtp.messagingengine.com."),
45 MX("@", 20, "in2-smtp.messagingengine.com."),
46 TXT("@", "v=spf1 include:spf.messagingengine.com ?all"),
47 TXT("_dmarc", "v=DMARC1; p=none;"),
48 // resend
49 MX("send.poke", 10, "feedback-smtp.us-east-1.amazonses.com."),
50 TXT(
51 "resend._domainkey.poke",
52 "p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC8/06F14LZgg7l6eko9GXasUwCBUGHe1Abd5hMg0Xf9ufdUj7lAUB746DS1ErS04oxGEbCdjamkAGqRsYWvk5KGRIXmeYuKyMPFM44U0dt6caHOIr8pHoDj9ytAJD/RS/p1xQZoFXHBxKgAeEY3TUZy7iNLvGxCLkxuPnO7nlWKwIDAQAB",
53 ),
54 TXT("send.poke", "v=spf1 include:amazonses.com ~all"),
55 // atproto
56 TXT("_atproto.eris", "did=did:plc:bxjnsrfzozl365rsdo5yvuz5", TTL(60)),
57 // TXT("_atproto", "did=did:plc:dfl62fgb7wtjj3fcbb72naae", TTL(60)),
58 // TXT("_atproto.dusk", "did=did:plc:dfl62fgb7wtjj3fcbb72naae", TTL(60)),
59);
60
61D(
62 "9.0.0.0.8.e.f.1.5.0.7.4.0.1.0.0.2.ip6.arpa",
63 REG_NONE,
64 DnsProvider(DSP_CLOUDFLARE),
65 DefaultTTL(1),
66 A("@", WOLUMONDE_IP, CF_PROXY_ON),
67 TXT("@", "a data endpoint for entity with serial id /90008/."),
68 TXT(
69 "@",
70 "entity linked here uses it/they pronouns. it can be referred to as /dusk/ or /dawn/.",
71 ),
72 TXT(
73 "@",
74 "this one is not a human, try to refer to it in third person. use /this one/, /this thing/, etc.",
75 ),
76 TXT(
77 "@",
78 "try connecting to https://gaze.systems/about for more information.",
79 ),
80 // atproto
81 // TXT("_atproto", "did=did:plc:dfl62fgb7wtjj3fcbb72naae"),
82);
83
84D(
85 "poor.dog",
86 REG_NONE,
87 DnsProvider(DSP_CLOUDFLARE),
88 DefaultTTL(1),
89 A("@", WOLUMONDE_IP, CF_PROXY_OFF),
90 TXT("@", "v=spf1 -all"),
91 TXT("_dmarc", "v=DMARC1; p=reject;"),
92);
93
94var EMAIL_TTL = 86400;
95
96D(
97 "ptr.pet",
98 REG_NONE,
99 DnsProvider(DSP_CLOUDFLARE),
100 DefaultTTL(1),
101 A("@", WOLUMONDE_IP, CF_PROXY_OFF),
102 A("test", WOLUMONDE_IP, CF_PROXY_OFF),
103 A("nucleus", DZWONEK_IP, CF_PROXY_OFF),
104 // atproto
105 TXT("_atproto", "did=did:plc:dfl62fgb7wtjj3fcbb72naae"),
106 A("nil", WOLUMONDE_IP, CF_PROXY_OFF),
107 TXT("_atproto.nil", "did=did:plc:dumbmutt4po52ept2tczimje"),
108 TXT("_atproto.june", "did=did:plc:y3z2rr7q5rywu4fjn3fmfyop"),
109 // june
110 CNAME("june", "girlboss.ceo."),
111 CNAME("*.june", "girlboss.ceo."),
112 // email
113 // verification
114 TXT("@", "hosted-email-verify=zr04ylon", TTL(EMAIL_TTL)),
115
116 MX("@", 10, "aspmx1.migadu.com.", TTL(EMAIL_TTL)),
117 MX("@", 20, "aspmx2.migadu.com.", TTL(EMAIL_TTL)),
118
119 // DKIM
120 CNAME(
121 "key1._domainkey",
122 "key1.ptr.pet._domainkey.migadu.com.",
123 TTL(EMAIL_TTL),
124 ),
125 CNAME(
126 "key2._domainkey",
127 "key2.ptr.pet._domainkey.migadu.com.",
128 TTL(EMAIL_TTL),
129 ),
130 CNAME(
131 "key3._domainkey",
132 "key3.ptr.pet._domainkey.migadu.com.",
133 TTL(EMAIL_TTL),
134 ),
135
136 // SPF
137 TXT("@", "v=spf1 include:spf.migadu.com -all", TTL(EMAIL_TTL)),
138
139 // DMARC
140 TXT(
141 "_dmarc",
142 "v=DMARC1; p=reject; sp=reject; adkim=s; aspf=s; fo=1; pct=100; rua=mailto:infrastructure@ptr.pet; ruf=mailto:infrastructure@ptr.pet",
143 TTL(EMAIL_TTL),
144 ),
145
146 // configuration
147 TXT(
148 "@",
149 "mailconf=https://autoconfig.migadu.com/mail/config-v1.1.xml",
150 TTL(EMAIL_TTL),
151 ),
152
153 // TLS reporting
154 TXT(
155 "_smtp._tls",
156 "v=TLSRPTv1; rua=mailto:infrastructure@ptr.pet",
157 TTL(EMAIL_TTL),
158 ),
159
160 // mta-sts
161 A("mta-sts", WOLUMONDE_IP, CF_PROXY_OFF),
162 TXT("_mta-sts", "v=STSv1; id=20250930T1945", TTL(EMAIL_TTL)),
163
164 // autoconfig
165 A("autoconfig", WOLUMONDE_IP, CF_PROXY_OFF),
166 A("autodiscover", WOLUMONDE_IP, CF_PROXY_OFF),
167
168 // autodiscovery
169 SRV(
170 "_autodiscover._tcp",
171 0,
172 1,
173 443,
174 "autodiscover.migadu.com.",
175 TTL(EMAIL_TTL),
176 ),
177 SRV("_submissions._tcp", 0, 1, 465, "smtp.migadu.com.", TTL(EMAIL_TTL)),
178 SRV("_imaps._tcp", 0, 1, 993, "imap.migadu.com.", TTL(EMAIL_TTL)),
179 SRV("_pop3s._tcp", 0, 1, 995, "pop.migadu.com.", TTL(EMAIL_TTL)),
180);