Environment Variables
Compiler & Linker Settings
Compiler & Linker Settings
configure
configure
-I<includedir>.configure
-g -O2.configure
configure
configure
Path Configuration Options
Directory and File Paths
Directory and File Paths
--with-configdir=dir
NSD configuration directory, default /etc/nsd.--with-nsd_conf_file=path
Pathname to the NSD configuration file, default /etc/nsd/nsd.conf.--with-pidfile=path
Pathname to the NSD pidfile, default is platform specific, mostly /var/run/nsd.pid.--with-zonesdir=dir
NSD default location for master zone files, default /etc/nsd/.--with-logfile=path
Pathname to the default log file.--with-dbdir=dir
Base directory for the xfrd zone timer state file, the zone list file and the cookie secrets file.--with-xfrdfile=path
Pathname to the NSD xfrd zone timer state file.--with-zonelistfile=path
Pathname to the NSD zone list file.--with-cookiesecretsfile=path
Pathname to the NSD cookie secrets file.--with-xfrdir=path
Pathname to where the NSD transfer dir is created.--with-sharedfilesdir=dir
NSD shared files directory.--with-chroot=dir
NSD default chroot directory.User & Service Options
Process and Service Configuration
Process and Service Configuration
--with-user=username
User name or ID to answer the queries with, default is nsd.--with-facility=facility
Specify the syslog facility to use. The default is LOG_DAEMON. See the syslog(3) manual page for the available facilities.--with-start_priority=number
Startup priority for NSD.--with-kill_priority=number
Shutdown priority for NSD.--with-tcp-timeout=number
Set the default TCP timeout (in seconds). The default is 120 seconds.Library Dependencies
External Library Configuration
External Library Configuration
--with-ssl=path
Specify the location of the OpenSSL libraries. OpenSSL 0.9.7 or higher is required for TSIG support.configure
--with-libevent=path
Specify the location of the libevent library (or libev). Useful when the zone count is high.configure
--with-libevent=no to use a builtin portable implementation (select()).Feature Enable/Disable Options
IPv6 Support
IPv6 Support
Statistics Options
Statistics Options
DNSSEC & NSEC3
DNSSEC & NSEC3
--disable-nsec3
Disable NSEC3 support. With NSEC3 support enabled, very large zones, also non-NSEC3 zones, use about 20% more memory.configure
Rate Limiting
Rate Limiting
Response Options
Response Options
--disable-minimal-responses
Disable minimal responses. If disabled, responses are more likely to get truncated, resulting in TCP fallback. When enabled (by default) NSD will leave out RRsets to make responses fit inside one datagram, but for shorter responses the full normal response is carried.configure
Development & Debugging
Development & Debugging
--enable-checking
Enable some internal development checks. Useful if you want to modify NSD. This option enables the standard C “assert” macro and compiler warnings.This will instruct NSD to be stricter when validating its input. This could lead to a reduced service level.configure
--enable-memclean
Cleanup memory (at exit) for eg. valgrind, memcheck.--enable-log-role
Shows the role of processes in the logfile (enable this only for debugging purposes).Advanced Features
Advanced Features
--disable-dnstap
Disable dnstap support (requires fstrm-devel, protobuf-c).--enable-systemd
Compile with systemd support, and then the server notifies libsystemd when the server is up (it needs pkg-config and systemd-devel).configure
--enable-recvmmsg
Enable recvmmsg and sendmmsg compilation, faster but some kernel versions may have implementation problems for IPv6.--enable-tcp-fastopen
Enable TCP Fast Open.configure
--enable-mmap
Use mmap instead of malloc. Experimental.--disable-radix-tree
You can disable the radix tree and use the red-black tree for the main lookups, the red-black tree uses less memory, but uses some more CPU.--enable-packed
Enable packed structure alignment, uses less memory, but unaligned reads.--enable-xdp
Enable XDP support.configure
File System Options
File System Options
--disable-largefile
Disable large file support (64 bit file lengths). Makes off_t a 32bit length during compilation.Root Server (Obsolete)
Root Server (Obsolete)
--enable-root-server
Configure NSD as a root server (obsolete).SIMD Zone Parser Options
Parser Kernel Configuration
Parser Kernel Configuration
Example Configuration
configure
Important Notes
The
--with-libevent=no option uses a builtin portable implementation based on select(). This is useful when libevent is not available, but may have reduced performance for high zone counts.