NAME¶
knotc - Knot DNS control utility
SYNOPSIS¶
knotc [
parameters]
action [
action_args]
DESCRIPTION¶
If no
action is specified, the program is executed in interactive mode.
Parameters¶
- -c, --config file
- Use a textual configuration file (default is
@config_dir@/knot.conf).
- -C, --confdb directory
- Use a binary configuration database directory (default is
@storage_dir@/confdb). The default configuration database, if
exists, has a preference to the default configuration file.
- -s, --socket path
- Use a control UNIX socket path (default is
@run_dir@/knot.sock).
- -t, --timeout seconds
- Use a control timeout in seconds. Set 0 for infinity (default is 5).
- -f, --force
- Forced operation. Overrides some checks.
- -v, --verbose
- Enable debug output.
- -h, --help
- Print the program help.
- -V, --version
- Print the program version.
Actions¶
- status
- Check if the server is running.
- stop
- Stop the server if running.
- reload
- Reload the server configuration and modified zone files. All open zone
transactions will be aborted!
- zone-check [zone...]
- Test if the server can load the zone. Semantic checks are executed if
enabled in the configuration. (*)
- zone-memstats [zone...]
- Estimate memory use for the zone. (*)
- zone-status [zone...]
- Show the zone status. (*)
- zone-reload [zone...]
- Trigger a zone reload from a disk without checking its modification time.
For slave zone, the refresh from a master server is scheduled; for master
zone, the notification of slave servers is scheduled. An open zone
transaction will be aborted!
- zone-refresh [zone...]
- Trigger a check for the zone serial on the zone's master. If the master
has a newer zone, a transfer is scheduled. This command is valid for slave
zones.
- zone-retransfer [zone...]
- Trigger a zone transfer from the zone's master. The server doesn't check
the serial of the master's zone. This command is valid for slave
zones.
- zone-flush [zone...]
- Trigger a zone journal flush into the zone file.
- zone-sign [zone...]
- Trigger a DNSSEC re-sign of the zone. Existing signatures will be dropped.
This command is valid for zones with automatic DNSSEC signing.
- zone-read zone [owner [type]]
- Get zone data that are currently being presented.
- zone-begin zone...
- Begin a zone transaction.
- zone-commit zone...
- Commit the zone transaction. All changes are applied to the zone.
- zone-abort zone...
- Abort the zone transaction. All changes are discarded.
- zone-diff zone
- Get zone changes within the transaction.
- zone-get zone [owner [type]]
- Get zone data within the transaction.
- zone-set zone owner [ttl] type
rdata
- Add zone record within the transaction. The first record in a rrset
requires a ttl value specified.
- zone-unset zone owner [type
[rdata]]
- Remove zone data within the transaction.
- zone-purge zone...
- Purge zone data, file, journal, and timers.
- conf-init
- Initialize the configuration database. (*)
- conf-check
- Check the server configuration. (*)
- conf-import filename
- Import a configuration file into the configuration database. Ensure the
server is not using the configuration database! (*)
- conf-export filename
- Export the configuration database into a config file. (*)
- conf-list [item]
- List the configuration database sections or section items.
- conf-read [item]
- Read the item from the active configuration database.
- conf-begin
- Begin a writing configuration database transaction. Only one transaction
can be opened at a time.
- conf-commit
- Commit the configuration database transaction.
- conf-abort
- Rollback the configuration database transaction.
- conf-diff [item]
- Get the item difference in the transaction.
- conf-get [item]
- Get the item data from the transaction.
- conf-set item [data...]
- Set the item data in the transaction.
- conf-unset [item] [data...]
- Unset the item data in the transaction.
Note¶
Empty or
-- zone parameter means all zones or all zones with a
transaction.
Use
@ owner to denote the zone name.
Type
item parameter in the form of
section[
[id]][
.name].
(*) indicates a local operation which requires a configuration.
Interactive mode¶
The utility provides interactive mode with basic line editing functionality,
command completion, and command history.
Interactive mode behavior can be customized in
~/.editrc. Refer to
editrc(5) for details.
Command history is saved in
~/.knotc_history.
EXAMPLES¶
Reload the whole server configuration¶
Flush the example.com and example.org zones¶
$ knotc zone-flush example.com example.org
Get the current server configuration¶
Get the list of the current zones¶
$ knotc conf-read zone.domain
Get the master remotes for the example.com zone¶
$ knotc conf-read 'zone[example.com].master'
Add example.org zone with a zonefile location¶
$ knotc conf-begin
$ knotc conf-set 'zone[example.org]'
$ knotc conf-set 'zone[example.org].file' '/var/zones/example.org.zone'
$ knotc conf-commit
$ knotc zone-read -- @ SOA
SEE ALSO¶
knotd(8),
knot.conf(5),
editrc(5).
AUTHOR¶
CZ.NIC Labs <
http://www.knot-dns.cz>
COPYRIGHT¶
Copyright 2010–2016, CZ.NIC, z.s.p.o.