NSD
is a complete implementation of an authoritative DNS nameserver.
Upon startup,
NSD
will read the database specified with
-fdatabase
argument and put itself into background and answers queries on port
53 or a different port specified with
-pport
option. The
database
must be generated beforehand with zonec(8). By default,
NSD
will bind to all local interfaces available. Use the
-aip-address[@port]
option to specify a single particular interface address to be
bound. If this option is given more than once,
NSD
will bind its UDP and TCP sockets to all the specified ip-addresses
separately. If IPv6 is enabled when
NSD
is compiled an IPv6 address can also be specified.
OPTIONS
All the options can be specified in the configfile (
-c
argument), except for the
-v
and
-h
options. If options are specified on the commandline, the options
on the commandline take precedence over the options in the
configfile.
Normally
NSD
should be started with the `nsdc(8) start` command invoked from a
/etc/rc.d/nsd.sh
script or similar at the operating system startup.
-4
Only listen to IPv4 connections.
-6
Only listen to IPv6 connections.
-a ip-address[@port]
Listen to the specified
ip-address.
The
ip-address
must be specified in numeric format (using the standard IPv4 or IPv6
notation). Optionally, a port number can be given.
This flag can be specified multiple times to listen to
multiple IP addresses. If this flag is not specified,
NSD
listens to the wildcard interface.
-c configfile
Read specified
configfile instead of the default/etc/nsd/nsd.conf.
For format description see nsd.conf(5).
-d
Turn on debugging mode, do not fork, stay in the foreground.
-f database
Use the specified
database
instead of the default of
/var/db/nsd/nsd.db.
If a
zonesdir:
is specified in the config file this path can be relative to that
directory.
-h
Print help information and exit.
-i identity
Return the specified
identity
when asked for
CH TXT ID.SERVER
(This option is used to determine which server is answering the queries
when they are multicast). The default is the name returned by
gethostname(3).
-I nsid
Add the specified
nsid
to the EDNS section of the answer when queried with an NSID EDNS
enabled packet.
-l logfile
Log messages to the specified
logfile.
The default is to log to stderr and syslog. If a
zonesdir:
is specified in the config file this path can be relative to that
directory.
-N count
Start
countNSD
servers. The default is 1. Starting more than a single server is
only useful on machines with multiple CPUs and/or network adapters.
-n number
The maximum
number
of concurrent TCP connection that can be handled by each server. The
default is 10.
-P pidfile
Use the specified
pidfile
instead of the platform specific default, which is mostly
/var/run/nsd.pid.
If a
zonesdir:
is specified in the config file, this path can be relative to that
directory.
-p port
Answer the queries on the specified
port.
Normally this is port 53.
-s seconds
Produce statistics dump every
seconds
seconds. This is equal to sending
SIGUSR1
to the daemon periodically.
-t chroot
Specifies a directory to
chroot
to upon startup. This option requires you to ensure that appropriate
syslogd(8) socket (e.g.
chrootdir
/dev/log) is available, otherwise
NSD
won't produce any log output.
-u username
Drop user and group privileges to those of
username
after binding the socket.
The
username
must be one of: username, id, or id.gid. For example: nsd, 80, or
80.80.
-V level
This value specifies the verbosity level for (non-debug) logging.
Default is 0.
-v
Print the version number of
NSD
to standard error and exit.
NSD
reacts to the following signals:
SIGTERM
Stop answering queries, shutdown, and exit normally.
SIGHUP
Reload the database.
SIGUSR1
Dump BIND8-style statistics into the log. Ignored otherwise.
FILES
/var/db/nsd/nsd.db
default
NSD
database
/var/run/nsd.pid
the process id of the name server.
/etc/nsd/nsd.conf
default
NSD
configuration file
DIAGNOSTICS
will log all the problems via the standard syslog(8)
daemon
facility, unless the
-d
option is specified.
NSD
was written by NLnet Labs and RIPE NCC joint team. Please see
CREDITS file in the distribution for further details.
BUGS
NSD
will answer the queries erroneously if the
database
was not properly compiled with zonec(8). Therefore problems with
misconfigured master zone files or zonec(8) bugs may not be visible
until the queries are actually answered with
NSD.