in.named is the Internet domain name server. For more information on the Internet name-domain system, see RFC 1033, RFC 1034 and RFC 1035.
When run without any arguments, in.named reads the default configuration file /etc/named.conf, reads any initial data, and listens for queries. If you give a config_file argument at the end of the command line, it will override any config_file that you specified by using the -b or -c options.
The named.conf(4) configuration file controls some of the options and behavior for in.named.
In the Trusted Solaris
environment, in.named listens for input requests on a multilevel port (MLP) and sends responses to the DNS client at the sensitivity label of the client's request. Thus, though in.named runs at the sensitivity label
ADMIN_LOW, it can accept requests at any sensitivity label. in.named can also serve DNS clients and communicate with other DNS name servers on either Trusted Solaris hosts or non-trusted hosts.
The DNS name server running on a Trusted Solaris machine is viewed as a supplier of public information, and the name database that it maintains is considered trusted. in.named requires the trusted path attribute, and it requires that the /etc/named.boot file,
zone files, and other configuration files that it uses be at the sensitivity label
ADMIN_LOW. As part of the name database, these files and their contents are also considered trusted; thus in.named can query any DNS name server
specified in the files. The DNS name servers specified in these files may reside on either Trusted Solaris hosts or non-trusted hosts.
in.named supports the following options:
Use an alternative configuration file. The default value for configfile is /etc/named.conf. The configfile, if any, specified at the end of the command line, overrides any value specified by this argument.
Print debugging information. The value of debuglevel determines the level of messages to print. If negative, debuglevel is set to 1.
The new debugging framework is considerably more sophisticated than in previous versions of in.named. The logging statement in the configuration file allows for multiple, distinct levels of debugging for each of a large set of categories of events, for example, for queries and transfers in and out. See named.conf(4).
Run this process in the foreground. The process will not fork(2). By default, in.named runs as a daemon in the background.
Specify the group the server should run as after it initializes. The value specified may be either a group name or a numeric group id.
Use the specified remote port number. in.named will send queries to this port number. By default, the value is the standard port number, that is, the port number returned by getservbyname(3SOCKET) for the service domain.
The current usage is equivalent to the old usage without localport# specified. This functionality can be specified with the listen-on clause options statement in the configuration file.
Trace all incoming queries. This option is deprecated in favor of the queries logging category of the logging statement in named.conf. See named.conf(4).
Turn recursion off in the server. Responses come only from local (primary or secondary) zones. You can use this option on root servers. By default, the server uses recursion. This option is deprecated and is overriden by the recursion clause of the options statement in the configuration file.
Specify the directory that the server is to chroot(2) into when it finishes processing command line arguments.
Specify the user that the server should run as after it initializes. The value of user_name may be either a user name or a numeric user id. If the -g option is not invoked, then the group id will be the primary group of the user specified. Since initgroups(3C) is called, all of the user's group will be available to the server.
Report the version and exit.
Set the working directory of the server. The directory clause of the options statement overrides any value specified on the command line. The default working directory is the current directory (“.”).
For compatibility with older implementations any additional argument will be interpreted as the name of the configuration file. This argument overrides any config_file specified by means of the -b or -c options. If no further argument is given, then the default configuration file, /etc/named.conf is used.
$INCLUDE <filename><opt_domain> $ORIGIN <domain> $TTL <ttl> <domain><opt_ttl><opt_class><type><resource_record_data>
The fields are defined as follows:
The value of domain can be ``.'' 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 not modified.
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. This field is optional. Neither the opt_domain field nor $ORIGIN statements in the included file modify the current origin for this file.
An integer number that sets the default time-to-live for future records that do not have an explicit 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.
The object address type. Currently only one type is supported, IN, for objects connected to the DARPA Internet.
This field contains one of the following tokens. The data expected in the resource_record_data field is in parentheses:
A host address (dotted-quad IP address).
An authoritative name server (domain).
A mail exchanger (domain), preceded by a preference value (0..32767), with lower numeric values representing higher logical preferences.
The canonical name for an alias (domain).
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.
A NULL resource record (no format or data).
A Responsible Person for some domain name (mailbox, TXT-referral).
A domain name pointer (domain).
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.
There are other resource record types not shown here. Some resource record types may have been standardized in more recent RFCs, but they have not yet been implemented in this version of BIND
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 changed 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 by means of 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. See RFC 2308.
In the Trusted Solaris environment, these files have a sensitivity label of
default name server configuration file.
the process ID.
in.named's current working directory, usually set by the "directory" options statement in named.conf.
dump of the name server database.
name server statistics data.
See attributes(5) for descriptions of the following attributes:
Standard BIND 8.2.2 patch
in.named accepts requests at any sensitivity label and replies at the sensitivity label of the client's request. in.named can serve DNS clients and can communicate with other DNS servers that are on Trusted Solaris hosts or non-trusted hosts.
Files used by in.named should be protected from unauthorized access by having the sensitivity label
Invoking in.named requires the trusted path attribute, an effective UID of 0, a process sensitivity label of
ADMIN_LOW, and the following privileges:
Andrews, M. RFC 2308, Negative Caching of DNS Queries (DNS NCACHE). Network Working Group. March 1998.
Braden, R., editor. RFC 1123, Requirements for Internet Hosts - Applications and Support . Network Working Group. October 1989.
Lotter, M. RFC 1033, Domain Administrators Operations Guide. Network Working Group. November 1987.
Mockapetris, Paul. RFC 882, Domain Names - Concepts and Facilities. Network Working Group. November 1983.
Mockapetris, Paul. RFC 883, Domain Names - Implementation and Specification. Network Working Group. November 1983.
Mockapetris, Paul. RFC 973, Domain System Changes and Observations. Network Working Group. January 1986.
Mockapetris, Paul. RFC 1034, Domain Names - Concepts and Facilities. Network Working Group. November 1987.
Mockapetris, Paul. RFC 1035, Domain Names - Implementation and Specification. Network Working Group. November 1987.
Partridge, Craig. RFC 974, Mail Routing and the Domain System. Network Working Group. January 1986.
Vixie, Paul, Dunlap, Kevin J., Karels, Michael J., Name Server Operations Guide for BIND Internet Software Consortium. 1996.
The boot file directives domain and suffixes are now obsolete. They have been replaced by a resolver-based implementation of suffixing for partially-qualified domain names. The earlier mechanisms failed under a number of situations, for example, when the local name server did not have complete information.
The following signals have the specified effect when sent to the server process using the kill(1) command:
Causes the server to read named.conf and reload the database. SIGHUP will also cause the server to check the serial number on all secondary zones.
Dumps the current database and cache to named_dump.db.
Dumps statistics data into named.stats. Statistics data is appended to the file.
Saves any modified dynamic zones to the file system and shuts down the server.
Turns on debugging. Each additional SIGUSR1 signal increments the debug level.
Turns off debugging completely.
Toggles logging of all incoming queries by means of syslog(3C).