A dns forwarder.
- Resolve with multiple upstreams
- Caching the record from upstreams
- Support local hosts files
- White list support
Make sure you have a correctly configured Go installtion first, then:
$ make bootstrap
$ go build
Download packages from GitHub releases page.
forcetcp
: If set it to true
, server will use TCP
connection with upstreams even the request from client is UDP
request.
cache
:
enable
: Enable or disable in-memory cachettl
: Default TTL for cache
loggers
:
console
:enable
: Enable or disable console loggerlevel
: Log level for console logger
file
:enable
: Enable or disable file loggerlevel
: Log level for file loggerpath
: Log file path
timeout
:
server
:read
: Timeout for read from clientswrite
: Timeout for write to clients
forwarder
:read
: Timeout for read from upstreamswrite
: Timeout for write to upstreams
host
:
enable
: Resolve with hosts filesresolves
: Hosts files list
upstreams
: List of upstream dns servers
$ sudo dnsforwarder
$ service dnsforwarder start # upstart
$ systemctl start dnsforwarder #systemd
$ dig domain.tld @your.server.ip
- Cache persistence
Packaging- Hot-reload