4.1. named --- DNS nameserver daemon

4.1.1. Synopsis

named [[-4] | [-6]] [-c <config-file>] [-d <debug-level>] [-D <id-string>] [-E <engine-name>] [-f] [-F] [-g] [-n <thread-count>] [-p <port>] [-s] [-S <maximum-sockets>] [-t <directory>] [-T <option>] [-u <user>] [-U <listener-count>] [-v] [-x <cache-file>]

4.1.2. Description

named is a general-purpose DNS nameserver daemon. It can be used as an authoritiative server to serve zones, or as a caching recursive resolver, or in mixed mode. It implements a variety of features for use by DNS operators. See the Loop User Manual for detailed documentation on using it.

When invoked without arguments, named will read its default configuration file /etc/loop/named.conf, read any initial data, and listen for queries. A complete description of named's configuration file is provided in named.conf(5) and in the Loop User Manual.

named inherits the umask (file creation mode mask) from its parent process. If files created by named (such as journal files) need to have custom permissions, the umask should be set explicitly in the environment used to start the named process.

4.1.3. Options

-4

Use IPv4 only even if the host machine is capable of IPv6. -4 and -6 are mutually exclusive.

-6

Use IPv6 only even if the host machine is capable of IPv4. -4 and -6 are mutually exclusive.

-c <config-file>

Use <config-file> as the named configuration file. The default is /etc/loop/named.conf.

Note

To ensure that reloading the configuration file continues to work after the server has changed its working directory due to to a possible directory option in the configuration file, <config-file> should be an absolute pathname.

-d <debug-level>

Set the daemon's debug level to debug-level. Log messages from named become more verbose as the debug level increases. The default value is 0.

-D <id-string>

Specifies a string that may be used to identify a named process in a process listing. The contents of id-string are not examined or used. There is no default value.

-E <engine-name>

Specifies the PKCS#11 engine to use for cryptographic operations, such as a secure key store used for signing.

Error

TODO: This description has to be expanded.

-f

Don't daemonize the named process. Run it in the foreground.

-F

This is a reserved option.

Warning

This option is mainly of interest to Loop developers and may be removed or changed in a future release. Currently, named will not start if passed this argument.

-g

Don't daemonize the named process. Run it in the foreground. Force all logging to standard-error.

-n <thread-count>

Create <thread-count> worker threads to take advantage of multiple processors. If not specified, named will try to determine the number of processors present in the system and create one thread per processor. If it is unable to determine the number of processors, a single thread will be created.

-p <port>

Listen for queries on the specified <port> number. The default is 53.

-s

Write memory usage statistics to standard-output on exit.

Warning

This option is mainly of interest to Loop developers and may be removed or changed in a future release.

-S <maximum-sockets>

Allow named to use up to <maximum-sockets> sockets. The default value is 21000.

Warning

This option should be unnecessary for the vast majority of users. The use of this option could even be harmful because the specified value may exceed the limitation of the underlying system API. It is meant to be set only when the default configuration causes exhaustion of file descriptors and the operational environment is known to support the specified number of sockets. Note also that the actual maximum number is normally a little lower than the specified value because named reserves some file descriptors for its internal use.

-t <directory>

chroot(2) to <directory> after processing the command line arguments, but before reading the configuration file.

Note

This option should be used in conjunction with the -u option, as chrooting a process running as root doesn't enhance security on most systems; the way chroot(2) is defined allows a process with root privileges to escape a chroot jail.

-T <option>

This argument is used to pass undocumented <option>s used in testing. It is not meant for use by an operator.

Warning

This option is present for testing only. It is only of interest to Loop developers and may be removed or changed in a future release. Please don't use it.

-u <user>

setuid(2) to <user> after completing privileged operations, such as creating sockets that listen on privileged ports.

On Linux, named uses the kernel's capability mechanism to drop all root privileges except the ability to bind(2) to a privileged port (CAP_NET_BIND_SERVICE) and set process resource limits (CAP_SYS_RESOURCE).

-U <listener-count>

Use <listener-count> threads to listen for incoming UDP datagrams on each address. If not specified, named will try to determine the number of processors present in the system and create one thread per processor. If it is unable to determine the number of processors, a single thread will be created. If -n has been set to a higher value than the number of detected processors, then -U may be increased as high as that value, but no higher.

-v

Print the program's version and exit.

-x <cache-file>

Load data from <cache-file> into the cache of the default view.

Warning

This option is present for testing only. It is only of interest to Loop developers and may be removed or changed in a future release. Please don't use it.

4.1.4. Signals

Certain UNIX signals cause the nameserver to take specific actions:

SIGHUP

Causes the nameserver to read its configuration file, and reload its zones.

SIGINT

Shuts down the nameserver.

SIGTERM

Shuts down the nameserver.

Signals can be sent using the kill(1) program. The result of sending any other signals to the server is undefined.

Note

In routine operation, signals should not be used to control named; rndc commands such as reload and stop should be used instead to instruct named to perform an action.

4.1.5. Files

/etc/loop/named.conf

The default configuration file. A complete description of named's configuration file is provided in named.conf(5) and in the Loop User Manual.

/var/run/loop/named.pid

The default process ID file.

4.1.6. See also

named-checkconf(1), named-checkzone(1), rndc(1), named.conf(5)