1#!/bin/sh
2#
3# Copyright (C) 2004, 2007, 2009, 2011-2014  Internet Systems Consortium, Inc. ("ISC")
4# Copyright (C) 2001-2003  Internet Software Consortium.
5#
6# Permission to use, copy, modify, and/or distribute this software for any
7# purpose with or without fee is hereby granted, provided that the above
8# copyright notice and this permission notice appear in all copies.
9#
10# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
11# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
12# AND FITNESS.  IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
13# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
14# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
15# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
16# PERFORMANCE OF THIS SOFTWARE.
17
18# Id: genzone.sh,v 1.13 2011/03/03 23:47:31 tbox Exp
19
20#
21# Set up a test zone
22#
23# Usage: genzone.sh master-server-number slave-server-number...
24#
25# e.g., "genzone.sh 2 3 4" means ns2 is the master and ns3, ns4
26# are slaves.
27#
28
29master="$1"
30
31cat <<EOF
32\$TTL 3600
33
34@		86400	IN SOA	ns${master} hostmaster (
35					1397051952 ; "SER0"
36					5
37					5
38					1814400
39					3600 )
40EOF
41
42for n
43do
44	cat <<EOF
45@			NS	ns${n}
46ns${n}			A	10.53.0.${n}
47EOF
48done
49
50cat <<\EOF
51
52; type 1
53a01			A	0.0.0.0
54a02			A	255.255.255.255
55
56; type 2
57; see NS records at top of file
58
59; type 3
60; md01			MD	madname
61; 			MD	.
62
63; type 4
64; mf01			MF	madname
65; mf01			MF	.
66
67; type 5
68cname01			CNAME	cname-target.
69cname02			CNAME	cname-target
70cname03			CNAME	.
71
72; type 6
73; see SOA record at top of file
74
75; type 7
76mb01			MG	madname
77mb02			MG	.
78
79; type 8
80mg01			MG	mgmname
81mg02			MG	.
82
83; type 9
84mr01			MR	mrname
85mr02			MR	.
86
87; type 10
88; NULL RRs are not allowed in master files per RFC1035.
89;null01			NULL
90
91; type 11
92wks01			WKS	10.0.0.1 tcp telnet ftp 0 1 2
93wks02			WKS	10.0.0.1 udp domain 0 1 2
94wks03			WKS	10.0.0.2 tcp 65535
95
96; type 12
97ptr01			PTR	@
98
99; type 13
100hinfo01			HINFO	"Generic PC clone" "NetBSD-1.4"
101hinfo02			HINFO	PC NetBSD
102
103; type 14
104minfo01			MINFO	rmailbx emailbx
105minfo02			MINFO	. .
106
107; type 15
108mx01			MX	10 mail
109mx02			MX	10 .
110
111; type 16
112txt01			TXT	"foo"
113txt02			TXT	"foo" "bar"
114txt03			TXT	foo
115txt04			TXT	foo bar
116txt05			TXT	"foo bar"
117txt06			TXT	"foo\032bar"
118txt07			TXT	foo\032bar
119txt08			TXT	"foo\010bar"
120txt09			TXT	foo\010bar
121txt10			TXT	foo\ bar
122txt11			TXT	"\"foo\""
123txt12			TXT	\"foo\"
124txt13			TXT	"foo;"
125txt14			TXT	"foo\;"
126txt15			TXT	"bar\\;"
127
128; type 17
129rp01			RP	mbox-dname txt-dname
130rp02			RP	. .
131
132; type 18
133afsdb01			AFSDB	0 hostname
134afsdb02			AFSDB	65535 .
135
136; type 19
137x2501			X25	123456789
138;x2502			X25	"123456789"
139
140; type 20
141isdn01			ISDN	"isdn-address"
142isdn02			ISDN	"isdn-address" "subaddress"
143isdn03			ISDN	isdn-address
144isdn04			ISDN	isdn-address subaddress
145
146; type 21
147rt01			RT	0 intermediate-host
148rt02			RT	65535 .
149
150; type 22
151nsap01			NSAP	(
152	0x47.0005.80.005a00.0000.0001.e133.ffffff000161.00 )
153nsap02			NSAP	(
154	0x47.0005.80.005a00.0000.0001.e133.ffffff000161.00. )
155;nsap03			NSAP	0x
156
157; type 23
158nsap-ptr01		NSAP-PTR foo.
159nsap-ptr01		NSAP-PTR .
160
161; type 24
162;sig01			SIG	NXT 1 3 ( 3600 20000102030405
163;				19961211100908 2143 foo.nil.
164;				MxFcby9k/yvedMfQgKzhH5er0Mu/vILz45I
165;				kskceFGgiWCn/GxHhai6VAuHAoNUz4YoU1t
166;				VfSCSqQYn6//11U6Nld80jEeC8aTrO+KKmCaY= )
167
168; type 25
169;key01			KEY	512 ( 255 1 AQMFD5raczCJHViKtLYhWGz8hMY
170;				9UGRuniJDBzC7w0aRyzWZriO6i2odGWWQVucZqKV
171;				sENW91IOW4vqudngPZsY3GvQ/xVA8/7pyFj6b7Esg
172;				a60zyGW6LFe9r8n6paHrlG5ojqf0BaqHT+8= )
173
174; type 26
175px01			PX	65535 foo. bar.
176px02			PX	65535 . .
177
178; type 27
179gpos01			GPOS    -22.6882 116.8652 250.0
180gpos02			GPOS    "" "" ""
181
182; type 29
183loc01			LOC	60 9 N 24 39 E 10 20 2000 20
184loc02			LOC 	60 09 00.000 N 24 39 00.000 E 10.00m 20.00m (
185				  2000.00m 20.00m )
186
187; type 30
188;nxt01			NXT	a.secure.nil. ( NS SOA MX RRSIG KEY LOC NXT )
189;nxt02			NXT	. NXT NSAP-PTR
190;nxt03			NXT	. 1
191;nxt04			NXT	. 127
192
193; type 33
194srv01			SRV 0 0 0 .
195srv02			SRV 65535 65535 65535  old-slow-box
196
197; type 35
198naptr01			NAPTR   0 0 "" "" "" .
199naptr02			NAPTR   65535 65535 blurgh blorf blllbb foo.
200naptr02			NAPTR   65535 65535 "blurgh" "blorf" "blllbb" foo.
201
202; type 36
203kx01			KX	10 kdc
204kx02			KX	10 .
205
206; type 37
207cert01			CERT	65534 65535 254 (
208				MxFcby9k/yvedMfQgKzhH5er0Mu/vILz45I
209				kskceFGgiWCn/GxHhai6VAuHAoNUz4YoU1t
210				VfSCSqQYn6//11U6Nld80jEeC8aTrO+KKmCaY= )
211; type 38
212a601			A6	0 ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff
213a601			A6	64 ::ffff:ffff:ffff:ffff foo.
214a601			A6	127 ::1 foo.
215a601			A6	128 .
216
217; type 39
218dname01			DNAME	dname-target.
219dname02			DNAME	dname-target
220dname03			DNAME	.
221
222; type 41
223; OPT is a meta-type and should never occur in master files.
224
225; type 46
226rrsig01			RRSIG	NSEC 1 3 ( 3600 20000102030405
227				19961211100908 2143 foo.nil.
228				MxFcby9k/yvedMfQgKzhH5er0Mu/vILz45I
229				kskceFGgiWCn/GxHhai6VAuHAoNUz4YoU1t
230				VfSCSqQYn6//11U6Nld80jEeC8aTrO+KKmCaY= )
231
232; type 47
233nsec01			NSEC	a.secure.nil. ( NS SOA MX RRSIG DNSKEY LOC NSEC )
234nsec02			NSEC	. NSEC NSAP-PTR
235nsec03			NSEC	. TYPE1
236nsec04			NSEC	. TYPE127
237
238; type 48
239dnskey01		DNSKEY	512 ( 255 1 AQMFD5raczCJHViKtLYhWGz8hMY
240				9UGRuniJDBzC7w0aRyzWZriO6i2odGWWQVucZqKV
241				sENW91IOW4vqudngPZsY3GvQ/xVA8/7pyFj6b7Esg
242				a60zyGW6LFe9r8n6paHrlG5ojqf0BaqHT+8= )
243
244; type 59
245cds01			CDS	30795 1 1 (
246					310D27F4D82C1FC2400704EA9939FE6E1CEA
247					A3B9 )
248
249; type 60
250cdnskey01		CDNSKEY	512 ( 255 1 AQMFD5raczCJHViKtLYhWGz8hMY
251				9UGRuniJDBzC7w0aRyzWZriO6i2odGWWQVucZqKV
252				sENW91IOW4vqudngPZsY3GvQ/xVA8/7pyFj6b7Esg
253				a60zyGW6LFe9r8n6paHrlG5ojqf0BaqHT+8= )
254
255; type 61
256openpgpkey		OPENPGPKEY	( AQMFD5raczCJHViKtLYhWGz8hMY
257				9UGRuniJDBzC7w0aRyzWZriO6i2odGWWQVucZqKV
258				sENW91IOW4vqudngPZsY3GvQ/xVA8/7pyFj6b7Esg
259				a60zyGW6LFe9r8n6paHrlG5ojqf0BaqHT+8= )
260
261; type 249
262; TKEY is a meta-type and should never occur in master files.
263; The text representation is not specified in the draft.
264; This example was written based on the bind9 RR parsing code.
265;tkey01			TKEY	928321914 928321915 (
266;				255		; algorithm
267;				65535 		; mode
268;				0		; error
269;				3 		; key size
270;				aaaa		; key data
271;				3 		; other size
272;				bbbb		; other data
273;				)
274;; A TKEY with empty "other data"
275;tkey02			TKEY	928321914 928321915 (
276;				255		; algorithm
277;				65535 		; mode
278;				0		; error
279;				3 		; key size
280;				aaaa		; key data
281;				0 		; other size
282;						; other data
283;				)
284
285hip1			HIP	( 2 200100107B1A74DF365639CC39F1D578
286				AwEAAbdxyhNuSutc5EMzxTs9LBPCIkOFH8cIvM4p9+LrV4e19WzK00+CI6zBCQTdtWsuxKbWIy87UOoJTwkUs7lBu+Upr1gsNrut79ryra+bSRGQb1slImA8YVJyuIDsj7kwzG7jnERNqnWxZ48AWkskmdHaVDP4BcelrTI3rMXdXF5D )
287
288
289hip2			HIP	( 2 200100107B1A74DF365639CC39F1D578
290                                AwEAAbdxyhNuSutc5EMzxTs9LBPCIkOFH8cIvM4p9+LrV4e19WzK00+CI6zBCQTdtWsuxKbWIy87UOoJTwkUs7lBu+Upr1gsNrut79ryra+bSRGQb1slImA8YVJyuIDsj7kwzG7jnERNqnWxZ48AWkskmdHaVDP4BcelrTI3rMXdXF5D
291				rvs.example.com. )
292
293tlsa			TLSA	( 1 1 2 92003ba34942dc74152e2f2c408d29ec
294				a5a520e7f2e06bb944f4dca346baf63c
295				1b177615d466f6c4b71c216a50292bd5
296				8c9ebdd2f74e38fe51ffd48c43326cbc )
297
298nid			NID	10 0014:4fff:ff20:ee64
299
300l32			L32	10 1.2.3.4
301
302l64			L64	10 0014:4fff:ff20:ee64
303
304lp			LP	10 example.net.
305
306eui48			EUI48	01-23-45-67-89-ab
307
308eui64			EUI64	01-23-45-67-89-ab-cd-ef
309
310; type 255
311; TSIG is a meta-type and should never occur in master files.
312
313; type 256
314uri01			URI	10 20 "https://www.isc.org/"
315uri02			URI	30 40 "https://www.isc.org/HolyCowThisSureIsAVeryLongURIRecordIDontEvenKnowWhatSomeoneWouldEverWantWithSuchAThingButTheSpecificationRequiresThatWesupportItSoHereWeGoTestingItLaLaLaLaLaLaLaSeriouslyThoughWhyWouldYouEvenConsiderUsingAURIThisLongItSeemsLikeASillyIdeaButEnhWhatAreYouGonnaDo/"
316uri03			URI	30 40 ""
317
318; type 257
319caa01                   CAA     0 issue "ca.example.net; policy=ev"
320caa02                   CAA     128 tbs "Unknown"
321caa03                   CAA     128 tbs ""
322
323; keydata (internal type used for managed-keys)
324keydata			TYPE65533	\# 0
325keydata			TYPE65533	\# 6 010203040506
326keydata			TYPE65533	\# 18 010203040506010203040506010203040506
327
328EOF
329