1KNSUPDATE(1) Knot DNS KNSUPDATE(1)
2
3
4
6 knsupdate - Dynamic DNS update utility
7
9 knsupdate [options] [filename]
10
12 This utility sends Dynamic DNS update messages to a DNS server. Update
13 content is read from a file (if the parameter filename is given) or
14 from the standard input.
15
16 The format of updates is textual and is made up of commands. Every com‐
17 mand is placed on the separate line of the input. Lines starting with a
18 semicolon are comments and are not processed.
19
20 Options
21 -d Enable debug messages.
22
23 -h, --help
24 Print the program help.
25
26 -k keyfile
27 Use the TSIG key stored in a file keyfile to authenticate the
28 request. The file should contain the key in the same format,
29 which is accepted by the -y option.
30
31 -p port
32 Set the port to use for connections to the server (if not ex‐
33 plicitly specified in the update). The default is 53.
34
35 -r retries
36 The number of retries for UDP requests. The default is 3.
37
38 -t timeout
39 The total timeout (for all UDP update tries) of the update re‐
40 quest in seconds. The default is 12. If set to zero, the time‐
41 out is infinite.
42
43 -v Use a TCP connection.
44
45 -V, --version
46 Print the program version.
47
48 -y [alg:]name:key
49 Use the TSIG key with a name name to authenticate the request.
50 The alg part specifies the algorithm (the default is
51 hmac-sha256) and key specifies the shared secret encoded in
52 Base64.
53
54 Commands
55 server name [port]
56 Specifies a receiving server of the dynamic update message. The
57 name parameter can be either a host name or an IP address. If
58 the port is not specified, the default port is used. The default
59 port value can be controlled using the -p program option.
60
61 local address [port]
62 Specifies outgoing address and port. If no local is specified,
63 the address and port are set by the system automatically. The
64 default port number is 0.
65
66 zone name
67 Specifies that all updates are done within a zone name. If not
68 specified, the root zone (.) is considered.
69
70 origin name
71 Specifies fully qualified domain name suffix which is appended
72 to non-fqd owners in update commands. The default origin is the
73 root zone.
74
75 class name
76 Sets name as the default class for all updates. If not used, the
77 default class is IN.
78
79 ttl value
80 Sets value as the default TTL (in seconds). If not used, the de‐
81 fault value is 0.
82
83 key [alg:]name key
84 Specifies the TSIG key named name to authenticate the request.
85 An optional alg algorithm can be specified. This command has the
86 same effect as the program option -y.
87
88 [prereq] nxdomain name
89 Adds a prerequisite for a non-existing record owned by name.
90
91 [prereq] yxdomain name
92 Adds a prerequisite for an existing record owned by name.
93
94 [prereq] nxrrset name [class] type
95 Adds a prerequisite for a non-existing record of the type owned
96 by name. Internet class is expected.
97
98 [prereq] yxrrset name [class] type [data]
99 Adds a prerequisite for an existing record of the type owned by
100 name with optional data. Internet class is expected.
101
102 [update] add name [ttl] [class] type data
103 Adds a request to add a new resource record into the zone.
104 Please note that if the name is not fully qualified domain name,
105 the current origin name is appended to it.
106
107 [update] del[ete] name [ttl] [class] [type] [data]
108 Adds a request to remove all (or matching class, type or data)
109 resource records from the zone. There is the same requirement
110 for the name parameter as in update add command. The ttl item is
111 ignored.
112
113 show Displays current content of the update message.
114
115 send Sends the current update message and cleans the list of updates.
116
117 answer Displays the last answer from the server.
118
119 debug Enable debugging. This command has the same meaning as the -d
120 program option.
121
122 quit Quit the program.
123
125 Options -k and -y can not be used simultaneously.
126
127 Dnssec-keygen keyfile format is not supported. Use keymgr(8) instead.
128
129 Zone name/server guessing is not supported if the zone name/server is
130 not specified.
131
132 Empty line doesn't send the update.
133
135 Exit status of 0 means successful operation. Any other exit status in‐
136 dicates an error.
137
139 1. Send one update of the zone example.com to the server 192.168.1.1.
140 The update contains two new records:
141
142 $ knsupdate
143 > server 192.168.1.1
144 > zone example.com.
145 > origin example.com.
146 > ttl 3600
147 > add test1.example.com. 7200 A 192.168.2.2
148 > add test2 TXT "hello"
149 > show
150 > send
151 > answer
152 > quit
153
155 kdig(1), khost(1), keymgr(8).
156
158 CZ.NIC Labs <https://www.knot-dns.cz>
159
161 Copyright 2010–2021, CZ.NIC, z.s.p.o.
162
163
164
165
1663.1.4 2021-11-04 KNSUPDATE(1)