openresolv - ArchWiki

# openresolv

From ArchWiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Related articles

- systemd-resolvconf

openresolv is a resolvconf implementation, i.e. a resolv.conf management framework.

Although openresolv is most known for allowing multiple applications to modify `/etc/resolv.conf`, it is currently the only standard way to implement:

- dynamic control of a DNS resolver (other than glibc),
- dynamic conditional forwarding.

Tip: An alternative implementation is systemd-resolvconf, but it can only be used with systemd-resolved.

## Installation

Install the openresolv package.

## Usage

openresolv provides resolvconf(8) and is configured in `/etc/resolvconf.conf`. See resolvconf.conf(5) for supported options.

Running `resolvconf -u` will generate `/etc/resolv.conf`.

This article or section needs expansion.

Reason: Provide common usage examples. (Discuss in Talk:Openresolv#)

## Users

DHCP clients:

- dhcpcd has a hook which uses resolvconf if it is installed.
- iwd#Enable built-in network configuration

Network managers:

- netctl (used by default)
- NetworkManager#Use openresolv (limited to a single interface)

VPN clients:

- OpenConnect
- OpenVPN#DNS
- strongSwan
- WireGuard

## Subscribers

openresolv can be configured to pass name servers and search domains to DNS resolvers. The supported resolvers are:

- BIND
- dnsmasq#openresolv
- pdnsd
- powerdns-recursor
- Unbound

See the official documentation for instructions.

## Tips and tricks

### Defining multiple values for options

The man page does not mention it, but to define multiple values, for options that support it (e.g. `name_servers`, `resolv_conf_options` etc.) in `/etc/resolvconf.conf`, you need to write them space separated inside quotes. E.g.:

    /etc/resolvconf.conf

    resolv_conf_options="edns0 single-request"
    name_servers="192.168.35.1 fd7b:d0bd:7a6e::1"

Category:

- Domain Name System

Hidden category:

- Pages or sections flagged with Template:Expansion