named(8)

NAME
named - Internet domain name server (DNS)

SYNOPSIS
named [-d debuglevel] [-p port#] [- ( b|c) config_file] [-f -q -r -v] [-u user_name] [-g group_name] [-t directory] [-w directory] [config_file]

DESCRIPTION
Named is the Internet domain name server. See RFC's 1033, 1034, and 1035 for more information on the Internet name-domain system. Without any arguments, named will read the default configuration file /usr/local/etc/named.conf, read any initial data, and listen for queries. A config_file argument given at the end of the command line will override any config_file specified by using the “-b” or “-c” flags.

NOTE: Several of named's options, and much more of its behaviour, can be controlled in the configuration file. Please refer to the configuration file guide included with this BIND distribution for further information.

Options are:

-d debuglevel
    Print debugging information. The debuglevel is a number determines the level of messages printed. If negative, debuglevel is set to “1”.

    NOTE: The new debugging framework is considerably more sophisticated than it was in older versions of named. The configuration file's “logging” statement allows for multiple, distinct levels of debugging for each of a large set of categories of events (such as queries, transfers in or out, etc.). Please refer to the configuration file guide included with this BIND distribution for further information about these extensive new capabilities.

-p port#
    Use the specified remote port number; this is the port number to which named will send queries. The default value is the standard port number, i.e., the port number returned by getservbyname(3) for service “domain”.

    NOTE: Previously, the syntax “-p port#[/localport#]” was supported; the first port was that used when contacting remote servers, and the second one was the service port bound by the local instance of named. The current usage is equivalent to the old usage without the localport# specified; this functionality can be specified with the “listen-on” clause of the configuration file's “options” statement.

- ( b|c) config_file Use an alternate config_file; this argument is overridden by any config_file which is specified at the end of the command line. The default value is /usr/local/etc/named.conf.

-f  Run this process in the foreground; don't fork(2) and daemonize. (The default is to daemonize.)

-q  Trace all incoming queries if named has been compiled with QRYLOG defined.

    NOTE: This option is deprecated in favor of the “queries” logging category of the configuration file's “logging” statement; for more information, please refer to the configuration file guide included with this distribution of BIND.

-r  Turns recursion off in the server. Answers can come only from local (primary or secondary) zones. This can be used on root servers. The default is to use recursion.

    NOTE: This option can be overridden by and is deprecated in favor of the “recursion” clause of the configuration file's “options” statement.

-v  Report the version and exit.

-u user_name
    Specifies the user the server should run as after it initializes. The value specified may be either a username or a numeric user id. If the “-g” flag is not specified, then the group id used will be the primary group of the user specified (initgroups() is called, so all of the user's groups will be available to the server).

-g group_name
    Specifies the group the server should run as after it initializes. The value specified may be either a groupname or a numeric group id.

-t directory
    Specifies the directory the server should chroot() into as soon as it is finshed processing command line arguments.

-w directory
    Sets the working directory of the server. The “directory” clause of the configuration file's “options” statement overrides any value specified on the command line. The default working directory is the current directory (“”)..

Any additional argument is taken as the name of the configuration file, for compatibility with older implementations; as noted above, this argument overrides any config_file specified by the use of the “-b” or “-c” flags. If no further argument is given, then the default configuration file is used (/usr/local/etc/named.conf).

  Master File Format
The master file consists of control information and a list of resource records for objects in the zone of the forms:

    $INCLUDE <filename> <opt_domain>
    $ORIGIN <domain>
    $TTL <ttl>
    <domain> <opt_ttl> <opt_class> <type> <resource_record_data>

where:

domain
    is “”. for root, “@” for the current origin, or a standard domain name. If domain is a standard domain name that does not end with “”., the current origin is appended to the domain. Domain names ending with “”. are unmodified.

opt_domain
    This field is used to define an origin for the data in an included file. It is equivalent to placing an $ORIGIN statement before the first line of the included file. The field is optional. Neither the opt_domain field nor $ORIGIN statements in the included file modify the current origin for this file.

ttl A integer number that sets the default time-to-live for future records without an explicit ttl.

opt_ttl
    An optional integer number for the time-to-live field. If not set the ttl is taken from the last $TTL statement. If no $TTL statement has occurred then the SOA minimum value is used and a warning is generated.

opt_class
    The object address type; currently only one type is supported, IN, for objects connected to the DARPA Internet.

type
    This field contains one of the following tokens; the data expected in the resource_record_data field is in parentheses:

    A   a host address (dotted-quad IP address)

    NS  an authoritative name server (domain)

    MX  a mail exchanger (domain), preceded by a preference value (0..32767), with lower numeric values representing higher logical preferences.

    CNAME
        the canonical name for an alias (domain)

    SOA marks the start of a zone of authority (domain of originating host, domain address of maintainer, a serial number and the following parameters in seconds: refresh, retry, expire and minimum TTL (see RFC 883 and RFC 2308)).

    NULL
        a null resource record (no format or data)

    RP  a Responsible Person for some domain name (mailbox, TXT-referral)

    PTR a domain name pointer (domain)

    HINFO
        host information (cpu_type OS_type)

Resource records normally end at the end of a line, but may be continued across lines between opening and closing parentheses. Comments are introduced by semicolons and continue to the end of the line.

NOTE: There are other resource record types not shown here. You should consult the BIND Operations Guide (“BOG”) for the complete list. Some resource record types may have been standardized in newer RFC's but not yet implemented in this version of BIND.

  SOA Record Format
Each master zone file should begin with an SOA record for the zone. An example SOA record is as follows:

    @	IN	SOA	ucbvax.Berkeley.EDU. rwh.ucbvax.Berkeley.EDU. (
    				1989020501	; serial
    				10800	; refresh
    				3600	; retry
    				3600000	; expire
    				86400 )	; minimum

The SOA specifies a serial number, which should be incremented each time the master file is changed. Note that the serial number can be given as a dotted number, but this is a very unwise thing to do since the translation to normal integers is via concatenation rather than multiplication and addition. You can spell out the year, month, day of month, and 0..99 version number and still fit inside the unsigned 32-bit size of this field. (It's true that we will have to rethink this strategy in the year 4294, but we're not worried about it.)

Secondary servers check the serial number at intervals specified by the refresh time in seconds; if the serial number changes, a zone transfer will be done to load the new data. If a master server cannot be contacted when a refresh is due, the retry time specifies the interval at which refreshes should be attempted. If a master server cannot be contacted within the interval given by the expire time, all data from the zone is discarded by secondary servers. The minimum value is the cache time-to-live for negative answers (RFC 2308).

NOTES
The boot file directives “domain” and “suffixes” have been obsoleted by a more useful, resolver-based implementation of suffixing for partially-qualified domain names. The prior mechanisms could fail under a number of situations, especially when then local nameserver did not have complete information.

The following signals have the specified effect when sent to the server process using the kill(1) command:

SIGHUP
    Causes server to read named.conf and reload the database. If the server is built with the FORCED_RELOAD compile-time option, then SIGHUP will also cause the server to check the serial number on all secondary zones; normally, the serial numbers are only checked at the SOA-specified intervals.

SIGINT
    Dumps the current data base and cache to “/var/tmp/named_dump.db” or the value of _PATH_DUMPFILE.

SIGILL
    Dumps statistics data into named.stats if the server is compiled with -DSTATS. Statistics data is appended to the file.

SIGSYS
    Dumps the profiling data in /var/tmp if the server is compiled with profiling (server forks, chdirs and exits).

SIGTERM
    Saves any modified dynamic zones to the file system, and shuts down the server.

SIGUSR1
    Turns on debugging; each SIGUSR1 increments debug level. ( SIGEMT on older systems without SIGUSR1.)

SIGUSR2
    Turns off debugging completely. ( SIGFPE on older systems without SIGUSR2.)

SIGWINCH
    Toggles logging of all incoming queries via syslog(3) (requires server to have been built with the QRYLOG option).

FILES
/usr/local/etc/named.conf
    default name server configuration file
/var/run/named.pid (_PATH_PIDFILE)
    the process id
/var/tmp/named_dump.db (_PATH_DUMPFILE)
    dump of the name server database
/var/tmp/named.run (file: _PATH_DEBUG)
    debug output
/var/tmp/named.stats (file: _PATH_STATS)
    nameserver statistics data

SEE ALSO
named.conf(5), gethostbyname(3), hostname(7), kill(1), resolver(3), resolver(5), signal(3), RFC 882, RFC 883, RFC 973, RFC 974, RFC 1033, RFC 1034, RFC 1035, RFC 1123, RFC 2308 “Name Server Operations Guide for BIND”