Unbound
nlnetlabs.nl/projects/unboundDesktop [Linux, Mac, OpenWrt & Windows]Validating, recursive, caching DNS resolve with support for DNS-over-TLS. Designed to be fast, lean, and secure Unbound incorporates modern features based on open standards. It's fully open source, and recently audited. (For an in-depth tutorial, see this article by DNSWatch.)
- Homepage:nlnetlabs.nl/projects/unbound
- GitHub:github.com/NLnetLabs/unbound
- Privacy:unboundapp.com/privacy-policy.html
- Web info:web-check.xyz/check/nlnetlabs.nl
Unbound Source Code
Author
Description
Unbound is a validating, recursive, and caching DNS resolver.
Homepage
https://nlnetlabs.nl/unboundRepository
- LicenseBSD-3-Clause
- Created13 Jun 17
- Primary languageC
- Size102,291 KB
- Stars5,010
- Forks466
- Watchers5,010
Top Contributors
@wcawijngaards (7024)
@gthess (706)
@ralphdolmans (325)
@wtoorop (64)
@Philip-NLnetLabs (37)
@fobser (20)
@noloader (17)
@TCY16 (17)
@Maryse47 (13)
@pemensik (12)
@PMunch (8)
@countsudoku (8)
@AlexanderBand (8)
@episource (7)
@petrvaganoff (6)
@Talkabout (6)
@vvfedorenko (6)
@k9982874 (6)
@boris-sah (5)
@Shchelk (5)
@kimheino (5)
@cgallred (5)
@xiaoxiaoafeifei (4)
@rcmcdonald91 (4)
@eaglegai (4)
@dyunwei (4)
@edmonds (4)
@FGasper (3)
@fhriley (3)
@rijswijk (3)
@edevil (2)
@trofi (2)
@sakateka (2)
@sthen (2)
@yrk-lab (2)
@yschaeff (2)
@headshog (2)
@mibere (2)
@orbea (2)
@arunabha007 (2)
@maertsen (2)
@n3bul4 (2)
@aww-aww (2)
@Ar-maan05 (2)
@rex4539 (2)
@Frzk (2)
@he32 (2)
@jinmeiib (2)
@jonathangray (2)
@luismerino (2)
@nshopik (2)
@hardfalcon (2)
@r-barnes (1)
@Scrumplex (1)
@stevenc99 (1)
@shoeper (1)
@botovq (1)
@tduboys (1)
@tilan7663 (1)
@TochusC (1)
@socketpair (1)
@rmetrich (1)
@Pierre4012 (1)
@psumbera (1)
@pavel-odintsov (1)
@paulmenzel (1)
@valldrac (1)
@ndptech (1)
@NickCao (1)
@natalie-reece (1)
@rma-shuyu (1)
@wenxuan70 (1)
@sneurlax (1)
@smeddlep (1)
@scottrw93 (1)
@sam-lunt (1)
@ryndia (1)
@nnarayanamurthy (1)
@niftylettuce (1)
@markyang92 (1)
@liheng562653799 (1)
@ihsinme (1)
@pettai (1)
@akhanin-dnsf (1)
@vcunat (1)
@ciz (1)
@vstinner (1)
@tobbez (1)
@jdek (1)
@chipitsine (1)
@GoetzGoerisch (1)
@gearnode (1)
@Fothsid (1)
@Erethon (1)
@dvzrv (1)
@eqvinox (1)
@dhgutteridge (1)
@hdais (1)
@dag-erling (1)
@cgzones (1)
Recent Commits
W.C.A. Wijngaards(22 Oct 26)
- Fix readthedocs status badge in the readme.
W.C.A. Wijngaards(21 Oct 26)
- Fix header comments for outnet_comm_point_for_http for etag.
W.C.A. Wijngaards(21 Oct 26)
- Fix unit test to silence validator module warnings.
W.C.A. Wijngaards(21 Oct 26)
- Fix dynlibmod test for inplace callback termination.
W.C.A. Wijngaards(21 Oct 26)
- Unit test for CVE-2026-35501.
W.C.A. Wijngaards(21 Oct 26)
- Unit test for CVE-2026-50106.
W.C.A. Wijngaards(21 Oct 26)
- The code repository continues with 1.26.3 under development, that includes the changes from before the 1.26.2 commits.
W.C.A. Wijngaards(21 Oct 26)
Merge branch 'branch-1.26.2'
W.C.A. Wijngaards(21 Oct 26)
- Fix CVE-2026-35501, Bypass of a configured island trust anchor underneath an insecure parent from an attacker-controlled NSEC record. Thanks to Qifan Zhang from Palo Alto Networks for the report.
W.C.A. Wijngaards(21 Oct 26)
- Fix CVE-2026-109125, Possible cache poisoning vulnerability via a cache side-channel exposed by 'unwanted-reply-threshold'. Thanks to TaoFei Guo (Peking University), and Yang Luo and JianJun Chen (Tsinghua University) for the report.
W.C.A. Wijngaards(21 Oct 26)
- Fix CVE-2026-96405, Aggregate DNS name chained pointer decompression work leads to degradation of service. Thanks to Yuheng Zhang (Tsinghua University and Jingxian Technology Co., Ltd.), Jianjun Chen (Tsinghua University), Zihan Wang (Z.AI Co., Ltd.) and Kaiwen Shen (CloudItera) for the report.
W.C.A. Wijngaards(21 Oct 26)
- Fix CVE-2026-50106, Possible insecure NXDOMAIN for non-existing records under a configured island trust anchor underneath an insecure parent. Thanks to Qifan Zhang from Palo Alto Networks for the report.
W.C.A. Wijngaards(21 Oct 26)
- Fix CVE-2026-97206, DoQ path-migration can lead to use-after-free on multi-threaded deployments. Thanks to Kunta Chu and Jianjun Chen from Tsinghua University for the report.
W.C.A. Wijngaards(21 Oct 26)
Set version to 1.26.2
W.C.A. Wijngaards(20 Oct 26)
- Fix testbound to free reference pending packet.
W.C.A. Wijngaards(20 Oct 26)
- Fix to remove debug print from unit test.
W.C.A. Wijngaards(20 Oct 26)
Merge branch 'master' of github.com:NLnetLabs/unbound
W.C.A. Wijngaards(20 Oct 26)
- Fix testbound so that it does not reference an already deleted pending packet, but its packet contents, when removing from the pending list.
Yorgos Thessalonikefs(20 Oct 26)
- Terminate inplace callback progression if one of them errors out; suggestion by Rio Fujita.
Willem Toorop(20 Oct 26)
Changelog entry for #1539: - Merge #1539: Send along ETag with auth zone xfrs over http(s), so unbound will not fetch the whole zone every refresh time, but only when it has changed.
Willem Toorop(20 Oct 26)
Merge pull request #1539 from NLnetLabs/hackathon/get-root-zone-with-etag Send along ETag with auth zone xfrs over http(s) - #1422
Willem Toorop(20 Oct 26)
Apply batched suggestions from code review Review feedback from @wcawijngaards and @gthess Co-authored-by: Wouter Wijngaards <[email protected]> Co-authored-by: Yorgos Thessalonikefs <[email protected]>
Willem Toorop(20 Oct 26)
Apply batched suggestions from code review Co-authored-by: Wouter Wijngaards <[email protected]>
Willem Toorop(20 Oct 26)
Make test compile work
Willem Toorop(20 Oct 26)
Merge branch 'master' into hackathon/get-root-zone-with-etag
Yorgos Thessalonikefs(20 Oct 26)
Changelog entry for #1536: - Merge #1536: Better documentation and warning message for no configured trust anchors.
Yorgos Thessalonikefs(20 Oct 26)
Merge branch 'validator-warn-no-trust'
Yorgos Thessalonikefs(20 Oct 26)
- Better wording.
Yorgos Thessalonikefs(20 Oct 26)
- Add CONTRIBUTING.md, similar to other NLnet Labs projects.
W.C.A. Wijngaards(20 Oct 26)
- Merge #1534: unbound-checkconf reads config, but zonefiles are read with an option, '-a'. This speeds up the checkconf before server start in the presence of large zone files. And it is similar to how nsd-checkconf behaves.
Unbound Security
Unbound Website
Website
NLnet Labs - Unbound - About
Unbound is a validating, recursive, caching DNS resolver. It is designed to be fast and lean and incorporates modern features based on open standards. To help increase online privacy, Unbound supports DNS-over-TLS and DNS-over-HTTPS which allows clients to encrypt their communication. In addition, it supports various modern standards that limit …
Redirects
Redirects to https://nlnetlabs.nl/projects/unbound/about/
Security Checks
All 65 security checks passed
Server Details
- IP Address128.140.76.106
- Hostnamestatic.106.76.140.128.clients.your-server.de
- LocationNuremberg,Bayern,Germany,EU
- ISPHetzner Online GmbH
- ASNAS24940
Associated Countries
AT
US
NL
DE
Safety Score
Website marked as safe
100%
Trackers
No known trackers found
Blacklist Check
nlnetlabs.nl was found on 0 blacklists
- AntiSocial Blacklist
- Artists Against 419
- Badbitcoin
- Bambenek Consulting
- CERT Polska
- CoinBlockerLists
- CRDF
- CryptoScamDB
- EtherAddressLookup
- EtherScamDB
- Fake Website Buster
- MetaMask EthPhishing
- NABP Not Recommended Sites
- OpenPhish
- PetScams
- PhishFeed
- PhishFort
- Phishing.Database
- PhishStats
- PhishTank
- Phishunt
- RPiList Not Serious
- Scam.Directory
- SecureReload Phishing List
- Spam404
- StopGunScams
- Suspicious Hosting IP
- ThreatFox
- ThreatLog
- TweetFeed
- URLhaus
- ViriBack C2 Tracker
Website Preview
Unbound Docker
Container Info
pihole-unbound
A Linux network-level advertisement and Internet tracker blocking application which acts as a DNS sinkhole. This version has Ubound software installed on it so you don't need to rely on external DNS providers. When the installation is complete, navigate to your.ip.goes.here:1010/admin. Follow the article <a href='https://medium.com/@niktrix/getting-rid-of-systemd-resolved-consuming-port-53-605f0234f32f'>here</a>
View on DockerHub
cbcrowe/pihole-unbound:latestRun Command
docker run -d \
-p 53:53/tcp \
-p 53:53/udp \
-p 1010:80/tcp \
-p 4443:443/tcp \
-e ServerIP=${ServerIP} \
-e TZ=${TZ} \
-e DNSSEC=${DNSSEC} \
-e DNS1=${DNS1} \
-e DNS2=${DNS2} \
-v /portainer/Files/AppData/Config/PiHole-Unbound:/etc/pihole \
-v /portainer/Files/AppData/Config/PiHole-Unbound/DNS:/etc/dnsmasq.d \
--restart=unless-stopped \
cbcrowe/pihole-unbound:latestCompose File
version: 3.8
services:
pi-hole-unbound:
image: "cbcrowe/pihole-unbound:latest"
ports:
- "53:53/tcp"
- "53:53/udp"
- "1010:80/tcp"
- "4443:443/tcp"
environment:
ServerIP: 192.168.0.X
TZ: Europe\London
DNSSEC:
DNS1: 127.0.0.1#5335
DNS2: 127.0.0.1#5335
volumes:
- "/portainer/Files/AppData/Config/PiHole-Unbound:/etc/pihole"
- "/portainer/Files/AppData/Config/PiHole-Unbound/DNS:/etc/dnsmasq.d"
restart: unless-stoppedEnvironment Variables
- Var NameDefault
- ServerIP192.168.0.X
- TZEurope\London
- DNSSECnull
- DNS1127.0.0.1#5335
- DNS2127.0.0.1#5335
Port List
- 53:53/tcp
- 53:53/udp
- 1010:80/tcp
- 4443:443/tcp
Volume Mounting
- Container PathHost Bind
- /etc/pihole/portainer/Files/AppData/Config/PiHole-Unbound
- /etc/dnsmasq.d/portainer/Files/AppData/Config/PiHole-Unbound/DNS
Unbound Reviews
More DNS Clients
A flexible DNS proxy, with support for modern encrypted DNS protocols including DNSCrypt V2, DNS-over-HTTPS and Anonymized DNSCrypt. Also allows for advanced monitoring, filtering, caching and client IP protection through Tor, SOCKS proxies or Anonymized DNS relays.
Non-root, small-sized DNS changer utilizing DNS-over-HTTPS and DNS-over-TLS. (Note, since this uses Android's VPN API, it is not possible to run a VPN while using Nebulo.)
Free and open source DNS changer with support for DNS-over-HTTPS, DNS-over-Tor, and DNSCrypt v3 with Anonymized Relays. (Note, since this uses Android's VPN API, it is not possible to run a VPN while using RethinkDNS + Firewall.)
Stubby
(Desktop [Linux, Mac, OpenWrt & Windows])
dnsprivacy.org/wiki/display/DP/DNS+Privacy+Daemon+-+StubbyActs as a local DNS Privacy stub resolver (using DNS-over-TLS). Stubby encrypts DNS queries sent from a client machine (desktop or laptop) to a DNS Privacy resolver increasing end user privacy. Stubby can be used in combination with Unbound - Unbound provides a local cache and Stubby manages the upstream TLS connections (since Unbound cannot yet re-use TCP/TLS connections), see example configuration.
About the Data: Unbound
Edit Unbound Data
You can edit Unbound's entry in this section of awesome-privacy.yml by submitting a PR to our GitHub repo.
Note that some of the information shown above has been aggregated from external
sources, a list of these can be found data documentation.
Origin Data
Modify Data
API
You can access Unbound's data programmatically via our API. Simply make a GET request to:
https://api.awesome-privacy.xyz/v1/services/unboundThe REST API is free, no-auth and CORS-enabled. To learn more, view the API Docs or read the API Usage Guide.
Share Unbound
Help your friends compare DNS Clients, and pick privacy-respecting software and services.
Share Unbound and Awesome Privacy with your network!