xref: /freebsd/contrib/unbound/README.md (revision 103ba509e72e3949d22485666949e9705d4af8cd)
1e86b9096SDag-Erling Smørgrav# Unbound
2e86b9096SDag-Erling Smørgrav
38f76bb7dSCy Schubert[![Github Build Status](https://github.com/NLnetLabs/unbound/actions/workflows/ci.yml/badge.svg?branch=master)](https://github.com/NLnetLabs/unbound/actions)
4e86b9096SDag-Erling Smørgrav[![Packaging status](https://repology.org/badge/tiny-repos/unbound.svg)](https://repology.org/project/unbound/versions)
50eefd307SCy Schubert[![Fuzzing Status](https://oss-fuzz-build-logs.storage.googleapis.com/badges/unbound.svg)](https://bugs.chromium.org/p/oss-fuzz/issues/list?sort=-opened&can=1&q=proj:unbound)
65469a995SCy Schubert[![Documentation Status](https://readthedocs.org/projects/unbound/badge/?version=latest)](https://unbound.readthedocs.io/en/latest/?badge=latest)
71838dec3SCy Schubert[![Mastodon Follow](https://img.shields.io/mastodon/follow/109262826617293067?domain=https%3A%2F%2Ffosstodon.org&style=social)](https://fosstodon.org/@nlnetlabs)
8e86b9096SDag-Erling Smørgrav
9e86b9096SDag-Erling SmørgravUnbound is a validating, recursive, caching DNS resolver. It is designed to be
10e86b9096SDag-Erling Smørgravfast and lean and incorporates modern features based on open standards. If you
11e86b9096SDag-Erling Smørgravhave any feedback, we would love to hear from you. Don’t hesitate to
12e86b9096SDag-Erling Smørgrav[create an issue on Github](https://github.com/NLnetLabs/unbound/issues/new)
13091e9e46SCy Schubertor post a message on the [Unbound mailing list](https://lists.nlnetlabs.nl/mailman/listinfo/unbound-users).
14c0caa2e2SCy SchubertYou can learn more about Unbound by reading our
159cf5bc93SCy Schubert[documentation](https://unbound.docs.nlnetlabs.nl/).
16e86b9096SDag-Erling Smørgrav
17e86b9096SDag-Erling Smørgrav## Compiling
18e86b9096SDag-Erling Smørgrav
19e86b9096SDag-Erling SmørgravMake sure you have the C toolchain, OpenSSL and its include files, and libexpat
20*103ba509SCy Schubertinstalled.
21*103ba509SCy SchubertIf building from the repository source you also need flex and bison installed.
22*103ba509SCy SchubertUnbound can be compiled and installed using:
23e86b9096SDag-Erling Smørgrav
24e86b9096SDag-Erling Smørgrav```
25e86b9096SDag-Erling Smørgrav./configure && make && make install
26e86b9096SDag-Erling Smørgrav```
27e86b9096SDag-Erling Smørgrav
28e86b9096SDag-Erling SmørgravYou can use libevent if you want. libevent is useful when using many (10000)
29e86b9096SDag-Erling Smørgravoutgoing ports. By default max 256 ports are opened at the same time and the
30e86b9096SDag-Erling Smørgravbuiltin alternative is equally capable and a little faster.
31e86b9096SDag-Erling Smørgrav
32*103ba509SCy SchubertUse the `--with-libevent` configure option to compile Unbound with libevent
33e86b9096SDag-Erling Smørgravsupport.
34e86b9096SDag-Erling Smørgrav
35e86b9096SDag-Erling Smørgrav## Unbound configuration
36e86b9096SDag-Erling Smørgrav
37e86b9096SDag-Erling SmørgravAll of Unbound's configuration options are described in the man pages, which
38e86b9096SDag-Erling Smørgravwill be installed and are available on the Unbound
399cf5bc93SCy Schubert[documentation page](https://unbound.docs.nlnetlabs.nl/).
40e86b9096SDag-Erling Smørgrav
41e86b9096SDag-Erling SmørgravAn example configuration file is located in
42e86b9096SDag-Erling Smørgrav[doc/example.conf](https://github.com/NLnetLabs/unbound/blob/master/doc/example.conf.in).
43