wtdnsd - WtDNS daemon
wtdnsd [options] ...
WtDNSd is a master DNS server working with zone records stored on a one-type-per-file basis. This makes it simple to configure, easy to update, and efficient for systems with very frequent updates.
WtDNSd is not a caching or recursive DNS server and has no built in resolver.
For more information about the resource record store, see wtdns(8).
Listen port for all following interfaces. Default is 53.
The IP address you want the WtDNSd to listen on. Multiple interfaces can be specified. If omitted, it defaults to “0.0.0.0” meaning all interfaces.
Change identity to this user just before starting to serve. This is done after opening logs and ports, creating PID, and forking. Default is user nobody if started by root and no change otherwise.
Change identity to this user just before starting to serve. This is done after opening logs and ports, creating PID, and forking. Default is group nogroup if started by root and no change otherwise.
Fork twice into the background (to run as a daemon process); otherwise WtDNSd runs in the foreground.
Write process ID to this file. This is done after the forks when -d is used. Note that WtDNSd does not lock or check the file at start, and does not delete it when exiting.
Create control sockets on a randomized port on localhost, generate a random token domain name used for control queries, and write both of them to a file, readable only by owner, in the resource data directory.
Omit the hash mark ‘#’ from the hashes. This makes WtDNS use the same hash directories as the original SheerDNS. Remember to use this option with wtdnshash if you use it with wtdnsd.
Omit the hash (two character hex) part of the path when looking up queries. This is useful for smaller sites. Do not use wtdnshash to create directories when using this option.
The directory where WtDNS resource records are stored.
The time-to-live field to be set on normal responses. Records that are likely to be fixed (not dynamic) are given a 3-day ttl. Examples are the IP address of the NS record, and the CNAME, MX, NS, and SOA records. Other records are given the ttl specified in this option. The default is one day.
The time-to-live field to be set on authority records (SOA and NS) in responses. Default is three days.
Use DNSSEC, wich requires some extra processing and adds some extra data to packets whenever a client requests secure data.
Assure clients using DNSSEC that the served data is authentic (except for names in the base dynamic dns domain).
Assure clients using DNSSEC that the served data is authentic for names in the base dynamic dns domain as well.
The time-to-live field to be set on responses for subdomains of the base dynamic domain. For a frequently updated dynamic domain a TTL as low as 10 seconds might make sense here. Default is 10 minutes.
Honour timeouts configured for purge and fallback for dynamic domains. Dynamic records older than purge will not be found, while dynamic records older than fallback will be replaced with fallback records if such are defined. When using this, regularly running wtdns-maintain is not needed.
Only honour timeouts for dynamic records where the record files user or group matches the one set in the configuration file. Note: wtdnsd never honours timeouts for records with user or group 0.
Read specified configuration file.
Log to syslog (using the daemon facility).
Log to file. If using this together with -ls, less information will be logged to syslog.
Log debug information to a separate file. If using this together with -ls and/or -lf, less information will be logged to syslog and the other file.
Increase log level by 1.
Print WtDNSd name and version, then exit.
Print usage information, then exit.
The following global options are recognized in the configuration file.
The directory where WtDNS resource records are stored. Default is “/var/lib/wtdns”.
The base domain for dynamic DNS. wtdnsd will only honour purge and fallback times for records for subdomains of this domain.
Wether to use the hash part in the domain name paths or not. For small sites turning of hashing might make things easier for the administrator. Default is to use hashing. Do not use wtdnshash to create directories when this is turned off.
If on, WtDNS will omit the ‘#’ i front of the hash, wich makes it compatible with the oriinal SheerDNS software.
User to match for dynamic resource records file owner.
Group to match for dynamic resource records file group.
Dynamic records older than this time will be replaced with fallback values (if avalilable).
Dynamic records older than this time will not be found.
A TXT record (one line in a TXT record file) can be replaced with a macro. For this to be done the line must consist only and totally of the macro, wich has the following syntax:
%%wtdns:macrotag%%
where “macrotag” is the one of the macros listed below.
Connection counters from the running instance of WtDNSd, including the following fields:
Total number of connections (one received UDP packet counts as one connection)
Number of UDP packets received.
Number of TCP connections accepted.
Counters for the number of incoming messages (wether they actually contains a valid query or not), including the following fields:
Total number of messages (packets) received.
Number of messages received with UDP.
Number of messages received over TCP.
Number of messages received with an EDNS OPT pseudo RR.
Number of messages received with the DNSSEC OK bit set.
Number of bad or broken messages received.
Counters for the number of sent responses, including the following fields:
Total number of messages sent.
Number of messages sent with UDP.
Number of messages sent over TCP.
Number of messages sent with an EDNS OPT pseudo RR.
Number of non-error responses sent with NXDOMAIN or no answers.
Number of error reponses sent.
Number of answers that had to be truncated.
Counters for resource record types queried for.
Counters for resource record types included in responses.
Average size of different messages (not including network overhead), including the following fields:
Average size of received messages.
Average size of messages received with UDP.
Average size of messages received over TCP.
Average size of received messages with an EDNS OPT pseudo RR.
Average UDP payload size advertized in EDNS OPT pseudo RRs.
Average size of sent messages.
Average size of messages sent with UDP.
Average size of messages sent over TCP.
Average size of sent messages with an EDNS OPT pseudo RR.
Time at which wtdnsd was started and how long ago that was.
wtdnsd version and build date.
There could be an example TXT record file with macros installed to your WtDNS documentations var directory.
All resource records are stored in this directory.
This file contains the information needed to connect to the control sockets.
wtdns(8), wtdns.ini(8), wtdnsinfo(8), wtdnsadd(8), wtdnssign(8), wtdnshash(8), wtdns-deepen(8), wtdns-flatten(8), wtdns-fromlog(8), wtdns-maintain(8), dig(1)