Unbound is a validating, recursive, and caching DNS resolver.
Go to file
Willem Toorop 75f3fbdd65 Downstream DNS Cookies a la RFC7873 and RFC9018
Create server cookies for clients that send client cookies.
Needs to be turned on in the config file with:

	answer-cookie: yes

A cookie-secret can be configured for anycast setups.
Also adds an access control list that will allow queries with
either a valid cookie or over a stateful transport.
2022-09-28 10:28:19 +02:00
.github Remove debug output from windows compile workflow. 2022-06-29 12:01:39 +02:00
cachedb - Fix the novel ghost domain issues CVE-2022-30698 and CVE-2022-30699. 2022-08-01 13:24:40 +02:00
compat Align with version 1.58 on cvsweb.openbsd.org 2022-09-20 14:47:19 +02:00
contrib - Fix #704: [FR] Statistics counter for number of outgoing UDP queries 2022-06-29 10:51:54 +02:00
daemon Downstream DNS Cookies a la RFC7873 and RFC9018 2022-09-28 10:28:19 +02:00
dns64 - Fix the novel ghost domain issues CVE-2022-30698 and CVE-2022-30699. 2022-08-01 13:24:40 +02:00
dnscrypt Fix typos 2021-11-13 16:56:15 +02:00
dnstap Initial commit for interface based ACL. 2022-09-11 20:21:32 +02:00
doc Downstream DNS Cookies a la RFC7873 and RFC9018 2022-09-28 10:28:19 +02:00
dynlibmod - Fix for #93: dynlibmodule import library is named libunbound.dll.a. 2021-01-14 16:50:17 +01:00
edns-subnet - Fix edns subnet so that scope 0 answers only match sourcemask 0 2022-08-02 14:13:55 +02:00
ipsecmod - Fix the novel ghost domain issues CVE-2022-30698 and CVE-2022-30699. 2022-08-01 13:24:40 +02:00
ipset - Various fixes for #632: variable initialisation, convert the qinfo 2022-03-02 14:29:56 +01:00
iterator Merge branch 'branch-1.16.3' 2022-09-21 12:11:26 +02:00
libunbound Downstream DNS Cookies a la RFC7873 and RFC9018 2022-09-28 10:28:19 +02:00
pythonmod - Fix the novel ghost domain issues CVE-2022-30698 and CVE-2022-30699. 2022-08-01 13:24:40 +02:00
respip - Fix #630: Unify the RPZ log messages. 2022-02-28 12:07:25 +01:00
services Downstream DNS Cookies a la RFC7873 and RFC9018 2022-09-28 10:28:19 +02:00
sldns Downstream DNS Cookies a la RFC7873 and RFC9018 2022-09-28 10:28:19 +02:00
smallapp Initial commit for interface based ACL. 2022-09-11 20:21:32 +02:00
testcode Downstream DNS Cookies a la RFC7873 and RFC9018 2022-09-28 10:28:19 +02:00
testdata - Convert tdir tests to use the new skip_test functionality. 2022-09-20 14:45:20 +02:00
util Downstream DNS Cookies a la RFC7873 and RFC9018 2022-09-28 10:28:19 +02:00
validator Downstream DNS Cookies a la RFC7873 and RFC9018 2022-09-28 10:28:19 +02:00
winrc Cleaner image. 2018-12-03 11:24:51 +00:00
.gitattributes - .gitattributes line for githubs code language display. 2016-11-03 08:29:29 +00:00
.gitignore - Add test tool readzone to .gitignore. 2021-08-12 13:17:29 +02:00
.travis.yml - Travis, fix warning in ubsan compile. 2021-03-24 15:34:26 +01:00
ac_pkg_swig.m4 - Fix #1230: swig version 2.0.0 is required for pythonmod, with 2017-03-07 10:40:45 +00:00
aclocal.m4 - Fix for #570: regen aclocal.m4, fix configure.ac for spelling. 2021-11-29 11:41:45 +01:00
acx_nlnetlabs.m4 - Fix to update config tests to fix checking if nonblocking sockets 2022-09-01 09:16:05 +02:00
acx_python.m4 - Fix configure for python to use sysutils, because distutils is 2022-03-07 14:02:31 +01:00
ax_pthread.m4 - updated ax_pthread.m4 to version 21 with clang support, this 2015-12-11 12:19:12 +00:00
config.guess - Upgrade config.guess(2020-01-01) and config.sub(2020-01-01). 2020-03-03 18:29:11 +01:00
config.h.in - Fix to log a verbose message at operational notice level if a 2022-09-01 15:14:20 +02:00
config.sub - Upgrade config.guess(2020-01-01) and config.sub(2020-01-01). 2020-03-03 18:29:11 +01:00
configure - This patch was released in 1.16.3, the code repository continues 2022-09-21 12:16:13 +02:00
configure.ac - This patch was released in 1.16.3, the code repository continues 2022-09-21 12:16:13 +02:00
install-sh - Newer aclocal and libtoolize used for generating configure scripts, 2019-01-24 08:57:47 +00:00
LICENSE - Fix #551: License change "Regents" to "Copyright holder", matching 2014-02-07 12:43:43 +00:00
ltmain.sh - Newer aclocal and libtoolize used for generating configure scripts, 2019-01-24 08:57:47 +00:00
makedist.sh - makedist.sh picks up 32bit libssp-0.dll when 32bit compile. 2022-06-03 15:18:27 +02:00
Makefile.in Downstream DNS Cookies a la RFC7873 and RFC9018 2022-09-28 10:28:19 +02:00
README gmake no longer needed. 2012-02-10 10:34:15 +00:00
README-Travis.md Fix typos 2021-11-13 16:56:15 +02:00
README.md Update documentation links 2022-01-07 10:21:50 +01:00
SECURITY.md add SECURITY.md, based on krill 2022-07-05 16:39:04 +02:00
systemd.m4 - Fix autoconf of systemd check for lack of pkg-config. 2017-02-13 10:15:01 +00:00

Unbound

Travis Build Status Packaging status Fuzzing Status Documentation Status

Unbound is a validating, recursive, caching DNS resolver. It is designed to be fast and lean and incorporates modern features based on open standards. If you have any feedback, we would love to hear from you. Dont hesitate to create an issue on Github or post a message on the Unbound mailing list. You can learn more about Unbound by reading our documentation.

Compiling

Make sure you have the C toolchain, OpenSSL and its include files, and libexpat installed. Unbound can be compiled and installed using:

./configure && make && make install

You can use libevent if you want. libevent is useful when using many (10000) outgoing ports. By default max 256 ports are opened at the same time and the builtin alternative is equally capable and a little faster.

Use the --with-libevent=dir configure option to compile Unbound with libevent support.

Unbound configuration

All of Unbound's configuration options are described in the man pages, which will be installed and are available on the Unbound documentation page.

An example configuration file is located in doc/example.conf.