DNS on BSD

Domain Name Resolution (DNS) was invented for BSD, so in many ways DNS for BSD is just textbook DNS.


Name resolution

Name Service Switch

The Name Service Switch (NSS) file (/etc/nsswitch.conf) defines the order of operations for various services, among them being name resolution.

A minimal configuration looks like...

hosts: files dns

This configuration will require a fully configured hosts file, as seen below.

See here for more details on configuring /etc/nsswitch.

Hosts

The hosts file (/etc/hosts) is a list of addresses and names, especially for local hosts and machines. A basic hosts file looks like:

127.0.0.1 localhost

Resolver

The resolver configuration file (/etc/resolv.conf) is a list of nameservers to query for name resolution.

It isn't recommended to manage this file directly. Instead, allow dhclient(8) and resolvconf(8) to overwrite the file and configure the behavior of those programs.

At any time, the resolver file can be re-generated by running resolvconf -u.

Utilities

The bind package is bundled with general-purpose utilities, such as dig(1).


Multicast name resolution

Multicast domain name resolution (mDNS) is an expansion of the DNS protocol. An mDNS broadcaster makes use of port 5353 and resolves names in the .local domain.

There is no mature implementation of mDNS for the BSDs. Avahi may work; OpenMDNS was designed for use in OpenBSD and may be more compatible.


CategoryRicottone