amazon-route-53-dns-zone-file
Version:
Makes DNS Zone File easy. Parses and validates BIND zone files and can be extended for custom features. Functionality is modular. Features are made open for extension and closed for runtime mutation. Written in TypeScript.
76 lines (69 loc) • 1.96 kB
text/typescript
export const combined = `
$ORIGIN igloo.com.
; negative ttl
$TTL -6
; $TTL 1w
; ipv6 for ipv4
moose A 2001:db8:a0b:12f0::1
; invalid ipv6
canada AAAA ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffffffffff
; ipv4 for ipv6
eh AAAA 20.0.0.0
; wrong subdomain
treefrog.ca. 3W IN TXT "v=spf1 a mx a:mail.treefrog.ca a:webmail.treefrog.ca ip4:76.75.250.33 ?all"
treemonkey.ca. 3W IN TXT "v=DKIM1\; k=rsa\; p=MIGf..."
treemonkey1.ca. 3W IN TXT "v=DKIM1\; k=rsa\; p=MIGf..."
`;
// 11
export const mixedSimpleRecords = `
; comment
$TTL 1d
1 AAAA 20.0.0.0
2 A 127.0.0.1
3 A 127.0.0.1
4.1 PTR HOST1.igloo.com.
5 NAPTR 102 10 "U" "E2U+email" "!^.*$!mailto:information@example.com!" .
6 42s SPF "v=spf1" "mx:gcloud-node.com." "-all"
7 CAA 0 issue "ca.igloo.com"
8 NS NS2.NAMESERVER.NET.
9 CAA 0 iodef "mailto:security@igloo.com"
@ MX 10 mail2
treefrog.ca. 3W TXT "v=spf1 a mx a:mail.treefrog.ca a:webmail.treefrog.ca ip4:76.75.250.33 ?all"
`;
// 27
export const manySimpleRecords = `
$TTL 1w
1 A 127.0.0.1
2 A 127.0.0.1
3 A 127.0.0.1
4 A 127.0.0.1
5 A 127.0.0.1
6 A 127.0.0.1
7 A 127.0.0.1
8 A 127.0.0.1
9 A 127.0.0.1
10 A 127.0.0.1
11 A 127.0.0.1
12 A 127.0.0.1
13 A 127.0.0.1
14 A 127.0.0.1
15 A 127.0.0.1
16 A 127.0.0.1
17 A 127.0.0.1
18 A 127.0.0.1
19 A 127.0.0.1
20 A 127.0.0.1
21 A 127.0.0.1
22 A 127.0.0.1
23 A 127.0.0.1
24 A 127.0.0.1
25 A 127.0.0.1
26 A 127.0.0.1
27 A 127.0.0.1
`;
// 1000 is simple for ui, 10000 is not great for ui I think
export const reallyLargeFile = 'A 127.0.0.1|'
.repeat(10000)
.split('|')
.map((x, i) => `${i} ${x}`)
.join('\n');