DNS(7P) DNS(7P) NAME dns - Domain Name Service SYNOPSIS /var/ns/lib/libns_dns.so DESCRIPTION The Domain Name System (DNS) is an Internet standard name service for hostname to address translation. Queries are made from a client library (termed the resolver(4)) to a server daemon named(1M). The daemon nsd(1M) will make these calls and present the data in a filesystem namespace when the dns keyword exists in the nsswitch.conf configuration file for a domain. This man page documents the behavior of the DNS extension to the nsd daemon. The nsd daemon reads all of the nsswitch.conf configuration files, first /etc/nsswitch.conf for the default domain, then files /var/ns/domains/DOMAIN/nsswitch.conf for each DOMAIN the local host acts as a server for. As it reads these files if it encounters the keyword dns for some map then it will open the DNS library /var/ns/lib/libns_dns.so. On first open the library initialization routine will parse the resolver configuration file /etc/resolv.conf to determine the addresses of nameservers and the domain names to use for queries. Extended attributes in the nsswitch.conf file can be used to control the behavior of the DNS resolver. Extended attributes are simply lists of key/value pairs attached to each object in the nsd filesystem. The attributes supported in this library are: domain This is the domainname given as a parameter to the remote name server. This attribute is typically inherited from the daemon depending on the nsswitch.conf file that is being read. Given the configuration file /var/ns/domains/DOMAINNAME/nsswitch.conf the attribute "domain" is set to DOMAINNAME. For the default domain, represented by the file /etc/nsswitch.conf, the domain is unset and the DNS library uses the search path given in the resolver(4) configuration file. If the resolv.conf file is changed then the change will be reflected in the next lookup. table The table attribute is typically inherited from the daemon based on the line from which this entry occurs in the nsswitch.conf file. This implementation of the DNS resolver recognizes only two tables: hosts.byname which is translated into a type A request, hosts.byaddr which is translated into a type PTR request. key The key attribute is set by the daemon on each request. If the address is fully qualified (ends in a '.') then it is forwarded on to the remote name server as is. Else, it will have each element of the search path appended and looked up. If the key contains a sufficient number of dots (as defined by in resolv.conf as "option ndots") then it will first be attempted as is. dns_max_ttl The dns_max_ttl attribute specifies that nsd should use the DNS TTL value for the nsd cache timeout. Because DNS TTL values can be quite large a maximum value in seconds can be specified. Default is zero. dns_servers The dns_servers attribute is a space separated list of IP addresses of DNS servers. If this is not set then the nameservers listed in the /etc/resolv.conf file are used. dns_search The dns_search attribute is used to override the default domain search path built from /etc/resolv.conf. dns_parallel The dns_parallel attribute is a boolean which specifies use of a performance optimization where queries will be made to all defined name servers in parallel. This is only beneficial if each of the name servers is equally able to answer the request. By default this is 0. dns_retries The dns_retries attribute specifies the number of queries that we will make to each server. Each server is tried in turn in a round- robin basis until the number of retries is exhausted. This should be set to an integer value, and defaults to 3. dns_timeout The dns_timeout attribute is the number of milliseconds the library code will wait for a response from a name server before continuing to the next name server. The default is 2000. ip6_rtld Starting from Irix 6.5.28 the top level domain used to perform reverse name resolution for IPv6 addresses has being changed from deprecated ip6.int. to ip6.arpa.. If your DNS server does not support ip6.arpa. top level domain you can use this attribute to change the domain used to construct the query. Please note that in specifying the top level domain you must include the trailing dot (.) to form a valid request, e.g. ipnodes: files dns(ip6_rtld="ip6.int.") NOTE If there is no resolv.conf file on a system nsd will NOT use a default nameserver of localhost unless named has been enabled via chkconfig. SEE ALSO chkconfig(1M), named(1M), nsd(1M), nsswitch.conf(4), resolver(4), db(7P), IRIX Admin: Networking and Mail Page 3