Documentation ¶
Overview ¶
Package resolvconf provides utility code to query and update DNS configuration in /etc/resolv.conf
Index ¶
Constants ¶
const ( IP = iota // IPv4 and IPv6 IPv4 IPv6 )
constants for the IP address type
Variables ¶
This section is empty.
Functions ¶
func GetNameservers ¶
GetNameservers returns nameservers (if any) listed in /etc/resolv.conf
func GetNameserversAsCIDR ¶
GetNameserversAsCIDR returns nameservers (if any) listed in /etc/resolv.conf as CIDR blocks (e.g., "1.2.3.4/32") This function's output is intended for net.ParseCIDR
func GetOptions ¶
GetOptions returns options (if any) listed in /etc/resolv.conf If more than one options line is encountered, only the contents of the last one is returned.
func GetSearchDomains ¶
GetSearchDomains returns search domains (if any) listed in /etc/resolv.conf If more than one search line is encountered, only the contents of the last one is returned.
Types ¶
type File ¶
File contains the resolv.conf content and its hash
func Build ¶
Build generates and writes a configuration file to path containing a nameserver entry for every element in nameservers, a "search" entry for every element in dnsSearch, and an "options" entry for every element in dnsOptions. It returns a File containing the generated content and its (sha256) hash.
Note that the resolv.conf file is written, but the hash file is not.
func FilterResolvDNS ¶
FilterResolvDNS cleans up the config in resolvConf. It has two main jobs:
- It looks for localhost (127.*|::1) entries in the provided resolv.conf, removing local nameserver entries, and, if the resulting cleaned config has no defined nameservers left, adds default DNS entries
- Given the caller provides the enable/disable state of IPv6, the filter code will remove all IPv6 nameservers if it is not enabled for containers
func GetSpecific ¶
GetSpecific returns the contents of the user specified resolv.conf file and its hash