Release openresolv-3.5.3
[openresolv] / resolvconf.conf.5.in
1 .\" Copyright (c) 2009-2012 Roy Marples
2 .\" All rights reserved
3 .\"
4 .\" Redistribution and use in source and binary forms, with or without
5 .\" modification, are permitted provided that the following conditions
6 .\" are met:
7 .\" 1. Redistributions of source code must retain the above copyright
8 .\"    notice, this list of conditions and the following disclaimer.
9 .\" 2. Redistributions in binary form must reproduce the above copyright
10 .\"    notice, this list of conditions and the following disclaimer in the
11 .\"    documentation and/or other materials provided with the distribution.
12 .\"
13 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
14 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
17 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
19 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
21 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
22 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
23 .\" SUCH DAMAGE.
24 .\"
25 .Dd October 2, 2012
26 .Dt RESOLVCONF.CONF 5 SMM
27 .Os
28 .Sh NAME
29 .Nm resolvconf.conf
30 .Nd resolvconf configuration file
31 .Sh DESCRIPTION
32 .Nm
33 is the configuration file for
34 .Xr resolvconf 8 .
35 The
36 .Nm
37 file is a shell script that is sourced by
38 .Xr resolvconf 8 ,
39 meaning that
40 .Nm
41 must contain valid shell commands.
42 Listed below are the standard
43 .Nm
44 variables that may be set.
45 .Pp
46 After updating this file, you may wish to run
47 .Nm resolvconf -u
48 to apply the new configuration.
49 .Sh RESOLVCONF OPTIONS
50 .Bl -tag -width indent
51 .It Sy interface_order
52 These interfaces will always be processed first.
53 If unset, defaults to the following:-
54 .D1 lo lo[0-9]*
55 .It Sy dynamic_order
56 These interfaces will be processed next, unless they have a metric.
57 If unset, defaults to the following:-
58 .D1 tap[0-9]* tun[0-9]* vpn vpn[0-9]* ppp[0-9]* ippp[0-9]*
59 .It Sy search_domains
60 Prepend search domains to the dynamically generated list.
61 .It Sy search_domains_append
62 Append search domains to the dynamically generated list.
63 .It Sy domain_blacklist
64 A list of domains to be removed from consideration.
65 To remove a domain, you can use foo.*
66 To remove a sub domain, you can use *.bar
67 .It Sy name_servers
68 Prepend name servers to the dynamically generated list.
69 You should set this to 127.0.0.1 if you use a local name server other than
70 libc.
71 .It Sy name_servers_append
72 Append name servers to the dynamically generated list.
73 .It Sy name_server_blacklist
74 A list of name servers to be removed from consideration.
75 The default is 0.0.0.0 as some faulty routers send it via DHCP.
76 To remove a block, you can use 192.168.*
77 .It Sy private_interfaces
78 These interfaces name servers will only be queried for the domains listed
79 in their resolv.conf.
80 Useful for VPN domains.
81 This is equivalent to the
82 .Nm resolvconf -p
83 option.
84 .It Sy state_dir
85 Override the default state directory of
86 .Pa @VARDIR@ .
87 This should not be changed once
88 .Nm resolvconf
89 is in use unless the old directory is copied to the new one.
90 .El
91 .Sh LIBC OPTIONS
92 The following variables affect
93 .Xr resolv.conf 5
94 directly:-
95 .Bl -tag -width indent
96 .It Sy resolv_conf
97 Defaults to
98 .Pa /etc/resolv.conf
99 if not set.
100 .It Sy resolv_conf_options
101 A list of libc resolver options, as specified in
102 .Xr resolv.conf 5 .
103 .It Sy resolv_conf_passthrough
104 When set to YES the latest resolv.conf is written to
105 .Sy resolv_conf
106 without any alteration.
107 .It Sy resolv_conf_sortlist
108 A libc resolver sortlist, as specified in
109 .Xr resolv.conf 5 .
110 .It Sy resolv_conf_local_only
111 If a local nameserver is configured then the default is just to specify that
112 and ignore all other entries as they will be configured for the local
113 nameserver.
114 Set this to YES to list them instead, if you need working DNS and the local
115 nameserver stops functioning at the expense of duplicated server queries.
116 .El
117 .Sh SUBSCRIBER OPTIONS
118 openresolv ships with subscribers for the name servers
119 .Xr dnsmasq 8 ,
120 .Xr named 8 ,
121 .Xr pdnsd 8
122 and
123 .Xr unbound 8 .
124 Each subscriber can create configuration files which should be included in
125 in the subscribers main configuration file.
126 .Bl -tag -width indent
127 .It Sy dnsmasq_conf
128 This file tells dnsmasq which nameservers to use for specific domains.
129 .It Sy dnsmasq_resolv
130 This file tells dnsmasq which nameservers to use for global lookups.
131 .Pp
132 Example resolvconf.conf for dnsmasq:
133 .D1 nameservers=127.0.0.1
134 .D1 dnsmasq_conf=/etc/dnsmasq-conf.conf
135 .D1 dnsmasq_resolv=/etc/dnsmasq-resolv.conf
136 .Pp
137 Example dnsmasq.conf:
138 .D1 listen-address=127.0.0.1
139 .D1 conf-file=/etc/dnsmasq-conf.conf
140 .D1 resolv-file=/etc/dnsmasq-resolv.conf
141 .It Sy named_options
142 Include this file in the named options block.
143 This file tells named which nameservers to use for global lookups.
144 .It Sy named_zones
145 Include this file in the named global scope, after the options block.
146 This file tells named which nameservers to use for specific domains.
147 .Pp
148 Example resolvconf.conf for named:
149 .D1 nameservers=127.0.0.1
150 .D1 named_options=/etc/named-options.conf
151 .D1 named_zones=/etc/named-zones.conf
152 .Pp
153 Example named.conf:
154 .D1 options {
155 .D1     listen-on { 127.0.0.1; };
156 .D1     include "/etc/named-options.conf";
157 .D1 };
158 .D1 include "/etc/named-zones.conf";
159 .It Sy pdnsd_conf
160 This is the main pdnsd configuration file which we modify to add our
161 forward domains to.
162 If this variable is not set then we rely on the pdnsd configuration file
163 setup to read
164 .Pa pdnsd_resolv
165 as documented below.
166 .It Sy pdnsd_resolv
167 This file tells pdnsd about global nameservers.
168 If this variable is not set then it's written to
169 .Pa pdnsd_conf .
170 .Pp
171 Example resolvconf.conf for pdnsd:
172 .D1 nameservers=127.0.0.1
173 .D1 pdnsd_conf=/etc/pdnsd.conf
174 .D1 # pdnsd_resolv=/etc/pdnsd-resolv.conf
175 .Pp
176 Example pdnsd.conf:
177 .D1 global {
178 .D1     server_ip = 127.0.0.1;
179 .D1     status_ctl = on;
180 .D1 }
181 .D1 server {
182 .D1     # A server definition is required, even if emtpy.
183 .D1     label="empty";
184 .D1     proxy_only=on;
185 .D1     # file="/etc/pdnsd-resolv.conf";
186 .D1 }
187 .It Sy unbound_conf
188 This file tells unbound about specific and global nameservers.
189 .Pp
190 Example resolvconf.conf for unbound:
191 .D1 nameservers=127.0.0.1
192 .D1 unbound_conf=/etc/unbound-resolvconf.conf
193 .Pp
194 Example unbound.conf:
195 .D1 include: /etc/unbound-resolvconf.conf
196 .El
197 .Sh SUBSCRIBER INTEGRATION
198 Not all distributions store the files the subscribers need in the same
199 locations.
200 For example, named service scripts have been called named, bind and rc.bind
201 and they could be located in a directory called /etc/rc.d, /etc/init.d or
202 similar.
203 Each subscriber attempts to automatically configure itself, but not every
204 distribution has been catered for.
205 Also, users could equally want to use a different version from the one
206 installed by default, such as bind8 and bind9.
207 To accomodate this, the subscribers have these files in configurable
208 variables, documented below.
209 .Pp
210 .Bl -tag -width indent
211 .It Sy dbus_pid
212 Locaiton of the dbus pidfile.
213 .It Sy dnsmasq_service
214 Location of the dnsmasq service.
215 .It Sy dnsmasq_restart
216 Command to restart the dnsmasq service.
217 .It Sy dnsmasq_pid
218 Location of the dnsmasq pidfile.
219 .It Sy libc_service
220 Location of the libc service.
221 .It Sy libc_restart
222 Command to restart the libc service.
223 .It Sy named_service
224 Location of the named service.
225 .It Sy named_restart
226 Command to restart the named service.
227 .It Sy pdnsd_restart
228 Command to restart the pdnsd service.
229 .It Sy unbound_service
230 Location of the unbound service.
231 .It Sy unbound_restart
232 Command to restart the unbound service.
233 .It Sy unbound_pid
234 Location of the unbound pidfile.
235 .Sh SEE ALSO
236 .Xr resolv.conf 5
237 and
238 .Xr resolvconf 8 .
239 .Sh AUTHORS
240 .An Roy Marples Aq roy@marples.name
241 .Sh BUGS
242 Each distribution is a special snowflake and likes to name the same thing
243 differently, namely the named service script and the dbus pidfile location.
244 .Pp
245 Please report them to
246 .Lk http://roy.marples.name/projects/openresolv