yadifa - Man Page

YADIFA is an utility for controlling YADIFAD


yadifa module [--config|-c configfile] [--server|-s host] [@host ] [--port|-p port] [-K key-name] [--version|-V] [-h] [--verbose|-v] [-t] command [[-q] zone]


yadifa controls the operation of yadifad with its control module (ctrl), part of the YADIFA distribution from EURid vzw/asbl. The latest version of YADIFA can be found on:


yadifa communicates with a name server over a TCP connection.  Messages are authenticated using a TSIG signature. The key is a secret shared between client and server.  The key can be defined using a <key> section both in the client and the server.  Additionally, the client accepts a full definition as a command line option.  Note that using authentication is mandatory when using the control module.

For details about the key, see the manual or the TSIG section below.


Simple Usage

For controlling yadifad a command can be:

Normal Use Case

yadifa ctrl @server -t command -q argument

Friendlier Use Case

yadifa ctrl @server command argument

ctrl Module used for controlling yadifad

server Is the IP address of the name server to control. If no "server" argument is given yadifa.rc will be checked.

command Is the command to be invoked

argument Depending the command this can be e.g. a domain name.


yadifa ctrl @ freeze somedomain.eu


[--config|-c configfile]

Another config file will be used.

[--server|-s host] | [ @host ]

Host is the remote server to operate.


yadifa --server

yadifa @

By default the DNS port is used. A port can be specified along with the IP address:


yadifa --server " port 5353"

yadifa @" port 5353"

[--port|-p port]

Changes the DNS port. (default: 53)

[-K key-name]

Name of the key to be used for the controller. It needs to have been defined using a <key> section. (default: 'ctrl-key')

[-y hmac-algorithm:key-name:base64-key]

Definition of the key to be used for the controller.


Optional, can be: hmac-md5, hmac-sha1, hmac-sha224, hmac-256, hmac-384, hmac-512. (default: hmac-md5)


is the fqdn of the key.


is a base64 encoding of the key bytes.


-y hmac-sha1:our-shared-secret:ThisIsASecretShared=

-y our-shared-secret:ThisIsASecretShared=


Verbose output.


Show version information.


Show a help text


[-t] cfgreload

Reload the settings from the configuration file on disk.

[-t] freeze [-q] zone

Disables dynamic updates to a zone.

[-t] freezeall [-q] zone

Disables dynamic updates to every zone currently loaded.

[-t] loglevel level

Sets the log level to the given value (0-15), 6 = INFO, 15 = ALL.

[-t] logreopen

Close all log files and reopens them.

[-t] notify

Sends notifies to slaves of these zones.

[-t] querylog [enable|disable]

Sets the log for queries on or off (default: enable).

[-t] reload [-q] zone

Triggers the loading of the zone file(s) if the serial number is incremented.

[-t] shutdown

Shuts down the server.

[-t] sync [-q] [zone] [clean]

Write the zone to disk and optionally cleans up the journal.

[-t] thaw [-q] [zone]

Enables dynamic updates to a zone.

[-t] thawall

Enables dynamic updates to every zone.

[-t] unfreeze [-q] [zone]

Enables dynamic updates to a zone.

[-t] unfreezeall

Enables dynamic updates to every zone.

[-t] zonecfgreload

[-q zone]
Reload the zone information in the configuration file and reload the zone file(s) with increased serial number.

Tsig Keys

TSIG keys are used for authentication of messages.
Their use is mandatory in the controller module.

Several digest algorithms are supported for the TSIG key:

Several methods can be used to generate the base64-encoded sequence of bytes for the secret:


# TSIG key generation example
# can a
key_secret=$(openssl rand -base64 32)
if [ ! "x$1" == "x" ]

echo "# Encoded for the yadifa command-line: -y $key_algorithm:$key_name:$key_secret"
echo "<key>"
echo "algorithm $key_algorithm"
echo "name $key_name"
echo "secret $key_secret"
echo "</key>"



The name server remote client.


default yadifa configuration file.


default rcfile.


Configuration man page for yadifa.


Configuration man page for yadifa.


This man page.

See Also

yadifa.conf(5) yadifa.rc(5) yadifad(8)



yadifad requires OpenSSL version 1.1.1 or later.


Please check the ChangeLog file from the sources code.


Version: 2.5.4 of 2022-02-28.


There is a mailinglist for questions relating to any program in the yadifa package:

If you would like to stay informed about new versions and official patches send a subscription request to via:

(this is a read-only list).


Gery Van Emelen
Email: Gery.VanEmelen@EURid.eu
Eric Diaz Fernandez
Email: Eric.DiazFernandez@EURid.eu

WWW: http://www.EURid.eu

Referenced By

yadifa.conf(5), yadifa.rc(5).

2022-02-28 YADIFA