resolv+ - enhanced DNS resolver library


Resolv+ is a modified version of the standard Berkeley BIND host resolver library. Enhancements include support for host lookups via the Internet Domain Name System (DNS), the /etc/hosts file, and Sun’s Network Information Service (NIS).

The programmer interface to the resolv+ routines is identical to that of the standard resolver library. For further information see the appropriate manual pages.


As with the standard resolver library, the file /etc/resolv.conf must be set up before the resolver can function. In addition, the file /etc/host.conf contains configuration information specific to resolv+.

The host.conf file should contain one configuration keyword per line, followed by appropriate configuration information. The keywords recognized are order, trim, multi, nospoof, and reorder. Each keyword is described seperately below.
order This keyword specifies how host lookups are to be performed. It should be followed by one or more lookup methods, seperated by commas. Valid methods are bind, hosts and nis.
trim This keyword may be listed more than once. Each time it should be followed by a single domain name, with the leading dot. When set, the resolv+ library will automatically trim the given domain name from the end of any hostname resolved via DNS. This is intended for use with local hosts and domains. (Related note: trim will not affect host- names gathered via NIS or the hosts file. Care should be taken to insure that the first hostname for each entry in the hosts file is fully qualified or non-qualified, as appropriate for the local installation.)
multi Valid values are on and off. If set to "on," the resolv+ library will return all valid addresses for a host that appears in the /etc/hosts file, instead of only the first. This is off by default, as it may cause a substantial performance loss at sites with large hosts files.
nospoof Valid values are on and off. If set to "on," the resolv+ library will attempt to prevent hostname spoofing to enhance the security of rlogin and rsh. It works as follows: after performing a host address lookup, resolv+ will perform a hostname lookup for that address. If the two hostnames do not match, the query will fail.
alert If this option is set to "on" and the nospoof option is also set, resolv+ will log a warning of the error via the syslog facility. The default value is off.
reorder Valid values are on and off. If set to "on," resolv+ will attempt to reorder host addresses so that local addresses (i.e., on the same subnet) are listed first when a gethostbyname() is performed. Reordering is done for all lookup methods. The default value is off.


The following environment variables may be set to override resolv+’s configured behavior:
RESOLV_HOST_CONF If set, it will override the default filename ("/etc/host.conf") for the resolv+ configuration file.
RESOLV_SERV_ORDER If set, will override the "order" keyword in the host.conf file.
RESOLV_SPOOF_CHECK If set, will override the spoof check flag. Valid values are "off" to disable checking, "warn" to enable checking and warning, and "warn off" to enable checking but not warning.
RESOLV_ADD_TRIM_DOMAINS If set, contains a list of domains to trim that will augment, not supersede, the list in the host.conf file.
RESOLV_OVERRIDE_TRIM_DOMAINS If set, contains a list of domains to trim that will override those in the host.conf file.
RESOLV_MULTI If set, overrides the "multi" keyword in the host.conf file.
RESOLV_REORDER If set, overrides the "reorder" keyword in the host.conf file.


/etc/host.conf, /etc/hosts


Quite possibly.


The original BIND resolver library comes from the University of California at Berkeley’s Computer Science Research Group. The original resolv+ modifications were made by Bill Wisner <wisner@uunet.UU.NET>. Bug fixes and enhancements were contributed by Patrick Gosling, Chris Metcalf, John DiMarco and J. Porter Clark, John P. Rouillard, Dan O’Neill and Tom Limoncelli.


resolver(3), resolver(5), hosts(5), hostname(7), named(8)

openSUSE Logo