Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
RESOLVCONF(8)		    System Manager's Manual		 RESOLVCONF(8)

     resolvconf	-- a framework for managing multiple DNS configurations

     resolvconf	-I
     resolvconf	[-m metric] [-p] -a interface <file
     resolvconf	[-f] -d	interface
     resolvconf	-il pattern
     resolvconf	-u

     resolvconf	manages	resolv.conf(5) files from multiple sources, such as
     DHCP and VPN clients.  Traditionally, the host runs just one client and
     that updates /etc/resolv.conf.  More modern systems frequently have wired
     and wireless interfaces and there is no guarantee both are	on the same
     network.  With the	advent of VPN and other	types of networking daemons,
     many things now contend for the contents of /etc/resolv.conf.

     resolvconf	solves this by letting the daemon send their resolv.conf(5)
     file to resolvconf	via stdin(3) with the argument -a interface instead of
     the filesystem.  resolvconf then updates /etc/resolv.conf as it thinks
     best.  When a local resolver other	than libc is installed,	such as
     dnsmasq(8)	or named(8), then resolvconf will supply files that the	re-
     solver should be configured to include.

     resolvconf	can mark an interfaces resolv.conf as private.	This means
     that the name servers listed in that resolv.conf are only used for
     queries against the domain/search listed in the same file.	 This only
     works when	a local	resolver other than libc is installed.	See
     resolvconf.conf(5)	for how	to configure resolvconf	to use a local name

     When an interface goes down, it should then call resolvconf with -d
     interface arguments to delete the resolv.conf file	for the	interface.

     Here are some more	options	that resolvconf	has:-

     -I	     Initialise	the state directory /var/run/resolvconf.  This only
	     needs to be called	if the initial system boot sequence does not
	     automatically clean it out; for example the state directory is
	     moved somewhere other than	/var/run.  If used, it should only be
	     called once as early in the system	boot sequence as possible and
	     before resolvconf is used to add interfaces.

     -f	     Ignore non	existant interfaces.  Only really useful for deleting

     -i	pattern
	     List the interfaces, optionally matching pattern, we have
	     resolv.conf files for.

     -l	pattern
	     List the resolv.conf files	we have.  If pattern is	specified then
	     we	list the files for the interfaces that match it.

     -m	metric
	     Set the metric of the interface when adding it, default of	0.
	     Lower metrics take	precedence.  This affects the default order of
	     interfaces	when listed.

     -p	     Marks the interface resolv.conf as	private.

     -u	     Force resolvconf to update	all it's subscribers.  resolvconf does
	     not update	the subscribers	when adding a resolv.conf that matches
	     what it already has for that interface.

     resolvconf	also has some options designed to be used by it's subscrib-

     -v	     Echo variables DOMAINS, SEARCH and	NAMESERVERS so that the	sub-
	     scriber can configure the resolver	easily.

     For resolvconf to work effectively, it has	to process the resolv.confs
     for the interfaces	in the correct order.  resolvconf first	processes in-
     terfaces from the interface_order list, then interfaces without a metic
     and that match the	dynamic_order list, then interfaces with a metric in
     order and finally the rest	in the operating systems lexical order.	 See
     resolvconf.conf(5)	for details on these lists.

     If	a subscriber has the executable	bit then it is executed	otherwise it
     is	assumed	to be a	shell script and sourced into the current environment
     in	a subshell.  This is done so that subscribers can remain fast, but are
     also not limited to the shell language.

     Portable subscribers should not use anything outside of /bin and /sbin
     because /usr and others may not be	available when booting.	 Also, it
     would be unwise to	assume any shell specific features.

     If	the -m option is not present then we use IF_METRIC for the metric.

     Marks the interface resolv.conf as	private.

     Configuration file	for resolvconf.

     Directory of subscribers which are	run every time resolvconf adds,
     deletes or	updates.

     Directory of subscribers which are	run after the libc subscriber is run.

     State directory for resolvconf.

     This implementation of resolvconf is called openresolv and	is fully com-
     mand line compatible with Debian's	resolvconf, as written by Thomas Hood.

     resolvconf	does not validate any of the files given to it.

     When running a local resolver other than libc, you	will need to configure
     it	to include files that resolvconf will generate.	 You should consult
     resolvconf.conf(5)	for instructions on how	to configure your resolver.

     resolv.conf(5), resolvconf.conf(5), resolver(3), stdin(3)

     Roy Marples <>

     Please report them	to

BSD			       December	3, 2009				   BSD


Want to link to this manual page? Use this URL:

home | help