Networking Guide
Chapter 6, Configuring the Domain Name Service

Troubleshooting DNS

Troubleshooting DNS

After configuration, DNS starts automatically if /etc/named.boot is present. When named starts up, it writes its process id to the file /etc/named.pid. This is useful to programs that want to send signals to named.

If you encounter problems with named, first view the logfile /usr/adm/syslog for any errors. If none are found, send one or more signals with the kill command to named to troubleshoot DNS without restarting the named process. The signals are: 

SIGHUP (kill -1)
Causes named to read named.boot and reload the database, overwriting cached data. This is useful when you make a change to a data file and you want named's internal database to reflect the change.

SIGHUP also has the effect of scheduling all secondary zones for serial-number checks, which could lead to zone transfers ahead of the usual schedule. Normally, serial-number comparisons are done only at the intervals specified in the zone's SOA record.

SIGINT (kill -2)
Dumps the current database and cache to /usr/tmp/named_dump.db. This gives you an indication to whether the database was loaded correctly.

SIGUSR1 (kill -16)
Turns on debugging. Each following USR1 increments the debug level. The output goes to /usr/tmp/named.run.

SIGUSR2 (kill -17)
Turns off debugging completely.

SIGWINCH (kill -20)
Toggles tracing of all incoming queries. The trace is sent to /usr/adm/syslog and provides a large amount of data.