# openresolv - the DNS management framework
/etc/resolv.conf is a file that holds the configuration for the
local resolution of domain names.
Normally this file is either static or maintained by a local
normally a DHCP daemon.
But what happens if more than one thing wants to control the file?
Say you have wired and wireless interfaces to different
subnets and run a
VPN or two on top of that,
how do you say which one controls the file?
It's also not as easy as just adding and removing the
nameservers each client knows about
as different clients could add the same nameservers.
the middleman between the network configuration services and
resolvconf itself is just a script that stores, removes and lists a
full resolv.conf generated for the interface.
It then calls all the helper scripts it knows about so it can configure the
/etc/resolv.conf and optionally any local nameservers other than libc.
openresolv is released under the 2 clause BSD license.
You can find a distinfo (
.distinfo) file and GPG signature (
.distinfo.asc) for newer releases alongside the released archive.
GPG Fingerprint: A785 ED27 5595 5D9E 93EA 59F6 597F 97EA 9AD4 5549
# Reasons for using openresolv
Why openresolv over the Debian implementation? Here's some reasons:
- Works with POSIX shell and userland
- Does not need awk, grep or sed which means we can work without
- Works with other init systems than Debians' out of the box
- Available as a 2 clause BSD license
- Prefer configs via IF_METRIC for dynamic ordering
- Configures zones for local resolvers other than libc
The last point is quite important, especially when running VPN systems. Take the following resolv.conf files which have been generated by a DHCP client and sent to resolvconf:
# resolv.conf from bge0 search foo.com nameserver 126.96.36.199 # resolv.conf from tap0 domain bar.org nameserver 188.8.131.52
In this instance, queries for foo.com will go to 184.108.40.206 and queries for bar.org will go to 220.127.116.11. This does require the resolvers to be configured to pickup the resolvconf generated configuration for them though. openresolv ships with helpers for dnsmasq, ISC BIND, PowerDNS Recursor and unbound.
See the configuration section for more details.
# Mailing Lists
Currently there is just the openresolv-discuss mailing list, which is powered by mlmmj. One interacts with mlmmj via email.
To subscribe to the list, send an empty email to email@example.com.
Once subscribed to the list, you can post to it by sending an email to firstname.lastname@example.org.
To unsubscribe from the list, send an empty email to email@example.com.
You can learn more about the capabilities of mlmmj by sending an empty mail to firstname.lastname@example.org.
You can also read the openresolv-discuss archive