2.0.0 • Published 1 year ago
resolv-conf v2.0.0
Parse resolv.conf
This repo uses the Linux documentation for
resolv.conf(5) to
parse the configuration for DNS resolution on your system. Windows uses a
different approach, so the best you can do is likely the Node built-in
dns.getServers().
Note that the defaults and environment variables listed in the docs were also implemented.
Install
npm install resolv-confUsage
import {parseFile, parse} from 'resolv-conf';
const config = await parseFile(); // filename is optional
// returns:
// {
// nameserver: [ '127.0.0.1', '::1' ],
// options: { ndots: 1 },
// searchlist: [...],
// sortlist: [ { addr: ..., mask: ...}, ...]
// errors: [ {text: "...", location:...} ]
// }
// if you already have text from the file:
const config2 = parse(text);Options
Options will have dashes turned into underscores. For example, no-aaaa will be
available as config.options.no_aaaa.
Errors
Unrecoverable parse errors will throw an exception with location,
expected, found, and message properties.
Recoverable errors (e.g. invalid IP addresses) will show up in the result
object in the errors property, and valid defaults will be chosen for that
option if need be.