# Install adns with Homebrew, apt, dnf, MacPorts, Nix, pacman, zypper

C/C++ resolver library and DNS resolver utilities. Version 1.6.2 via Homebrew; verified 2026-05-26.

## Install

```sh
sudo av install brew:adns
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install adns
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install adns
```

  Evidence: MacPorts ports tree: net/adns/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- Debian apt (92%):

```sh
sudo apt install adns-tools
```

  Evidence: Debian stable package indexes: adns-tools from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- dnf (92%):

```sh
sudo dnf install adns
```

  Evidence: Fedora Rawhide package metadata: adns from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst

- Nix (92%):

```sh
nix profile install nixpkgs#adns
```

  Evidence: nixpkgs package indexes: pkgs/by-name/ad/adns/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

- pacman (92%):

```sh
sudo pacman -S adns
```

  Evidence: Arch Linux sync databases: adns from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

- zypper (92%):

```sh
sudo zypper install adns
```

  Evidence: openSUSE Tumbleweed package metadata: adns from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst

## Package facts

- **Package key:** brew:adns
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/adns>
- **Version:** 1.6.2
- **Source summary:** C/C++ resolver library and DNS resolver utilities
- **Homepage:** <https://www.chiark.greenend.org.uk/~ian/adns/>
- **Repository:** <https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git/adns.git>
- **Upstream docs:** <https://www.chiark.greenend.org.uk/~ian/adns>
- **License:** GPL-3.0-or-later AND LGPL-2.0-or-later
- **Source archive:** <https://www.chiark.greenend.org.uk/~ian/adns/ftp/adns-1.6.2.tar.gz>
- **Last updated:** 2026-05-26T23:37:49-04:00
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- adnsheloex (cli)
- adnshost (cli)
- adnslogres (cli)
- adnsresfilter (cli)
- adnsheloex (alias)
- adnshost (alias)
- adnslogres (alias)
- adnsresfilter (alias)

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 1.6.2
- Package-manager updated: 2026-05-26
- Local data: ok
- Upstream repository: https://www.chiark.greenend.org.uk/~ian/adns/
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

GNU adns is Ian Jackson's asynchronous-capable DNS resolver library for C and C++ programs, accompanied by command-line resolver utilities. It offers a nonblocking resolver API and utility programs such as adnshost, adnslogres, and adnsresfilter.

### Project history

The official homepage describes adns as an advanced, easy-to-use DNS client library and utilities collection. It contrasts adns with gethostbyname and libresolv by emphasizing asynchronous operation, multiple simultaneous queries, decoded response structures, sanity checking, explicit resolver state, and conventional resolv.conf support.

The official previous-versions directory shows public release tarballs starting with adns 0.1 in April 1999, progressing through 1.0 in 2000, 1.5.x in the 2010s, and 1.6.x releases in the 2020s. The homepage also points to a master git repository browser and notes that adns is available from GNU Project FTP servers and mirrors.

### Adoption history

adns became a GNU-distributed resolver component with both library and scriptable CLI use cases. The supplied package metadata shows broad packaging under Homebrew, Debian/Ubuntu adns-tools, Fedora/DNF, MacPorts, Nix, Arch/pacman, and openSUSE zypper.

The homepage lists ecosystem bindings and integrations, including Python bindings, liboop event-loop support, and an MS Visual Studio C++ port. That adoption pattern is very Unix-library-like: one C API, a few small command-line tools, and integrations by event loops and language bindings.

### How it is used

C and C++ programs use adns when they need DNS lookups without blocking on one resolver call at a time. The library can process many queries simultaneously, return decoded records, distinguish failure causes, and use or override conventional resolver configuration.

Shell and scripting users get adnshost for DNS lookups, adnslogres as a faster Apache logresolv-style tool, and adnsresfilter for replacing IP addresses in streamed command output without delaying the stream unnecessarily.

### Why package nerds care

adns is package-nerd interesting because it is a classic Unix networking library packaged alongside small utilities, with GNU distribution, long-running release tarballs, and distro-specific binary splits. It also documents the resolver boundary clearly: it is a stub resolver and expects a real recursive nameserver on the same system or a secure nearby network.

### Timeline

- 1999-04: adns 0.1 tarball appears in the official previous-versions directory.
- 2000-09: adns 1.0 tarball appears in the official previous-versions directory.
- 2014-11: adns 1.5.0 tarball appears after the long 1.4 era.
- 2020-06: adns 1.6.0 tarball appears.
- 2026-05: adns 1.6.2 tarball appears in the official previous-versions directory.

### Related projects

- GNU FTP distribution and mirrors are linked by the homepage.
- liboop is listed as having a built-in adns binding.
- Python bindings and a Visual Studio C++ port are listed as related projects.

### Sources

- <https://www.chiark.greenend.org.uk/~ian/adns/>
- <https://www.chiark.greenend.org.uk/~ian/adns/docs/adns.h.txt>
- <https://www.chiark.greenend.org.uk/~ian/adns/docs/adnshost.txt>
- <https://www.chiark.greenend.org.uk/~ian/adns/ftp/>
- source_facts.package-manager


## Security Notes

library-like package without higher-risk signals.

- **Geiger risk:** green / low
- library-like package without higher-risk signals


## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: /etc/resolv.conf
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** adns
- **Version Scheme:** 0
- **Revision:** 0
- **Head Version:** HEAD
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** head, stable

## Other Package-Manager Records

- Debian apt - adns-tools - 1.6.1-1: normalized package name match | Debian stable package indexes: adns-tools from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Asynchronous-capable DNS client utilities | http://www.chiark.greenend.org.uk/~ian/adns/
- Debian apt - libadns1-dbg - 1.6.1-1: normalized package name match | Debian stable package indexes: libadns1-dbg from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Asynchronous-capable DNS client library (debugging symbols) | http://www.chiark.greenend.org.uk/~ian/adns/
- Debian apt - libadns1-dev - 1.6.1-1: normalized package name match | Debian stable package indexes: libadns1-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Asynchronous-capable DNS client library (development) | http://www.chiark.greenend.org.uk/~ian/adns/
- Debian apt - libadns1t64 - 1.6.1-1: normalized package name match | Debian stable package indexes: libadns1t64 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Asynchronous-capable DNS client library | http://www.chiark.greenend.org.uk/~ian/adns/
- Nix - adns: normalized package name match | nixpkgs package indexes: pkgs/by-name/ad/adns/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - adns-tools - 1.6.0-2.1ubuntu3: normalized package name match | Ubuntu 24.04 LTS package indexes: adns-tools from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Asynchronous-capable DNS client utilities | http://www.chiark.greenend.org.uk/~ian/adns/
- Ubuntu apt - libadns1-dbg - 1.6.0-2.1ubuntu3: normalized package name match | Ubuntu 24.04 LTS package indexes: libadns1-dbg from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Asynchronous-capable DNS client library (debugging symbols) | http://www.chiark.greenend.org.uk/~ian/adns/
- Ubuntu apt - libadns1-dev - 1.6.0-2.1ubuntu3: normalized package name match | Ubuntu 24.04 LTS package indexes: libadns1-dev from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Asynchronous-capable DNS client library (development) | http://www.chiark.greenend.org.uk/~ian/adns/
- Ubuntu apt - libadns1t64 - 1.6.0-2.1ubuntu3: normalized package name match | Ubuntu 24.04 LTS package indexes: libadns1t64 from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Asynchronous-capable DNS client library | http://www.chiark.greenend.org.uk/~ian/adns/
- dnf - adns - 1.6.1-6.fc44: normalized package name match | Fedora Rawhide package metadata: adns from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Advanced, easy to use, asynchronous-capable DNS client library | http://www.chiark.greenend.org.uk/~ian/adns/
- dnf - adns-devel - 1.6.1-6.fc44: normalized package name match | Fedora Rawhide package metadata: adns-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Asynchronous-capable DNS client library - development files | http://www.chiark.greenend.org.uk/~ian/adns/
- dnf - adns-progs - 1.6.1-6.fc44: normalized package name match | Fedora Rawhide package metadata: adns-progs from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Asynchronous-capable DNS client library - utility programs | http://www.chiark.greenend.org.uk/~ian/adns/
- pacman - adns - 1.6.1-1: normalized package name match | Arch Linux sync databases: adns from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | An asyncronous replacement resolver library | https://www.chiark.greenend.org.uk/~ian/adns/
- zypper - adns - 1.6.2-1.1: normalized package name match | openSUSE Tumbleweed package metadata: adns from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Advanced Easy-to-Use Asynchronous-Capable DNS Utilities | https://www.chiark.greenend.org.uk/~ian/adns/ftp/
- zypper - libadns-devel - 1.6.2-1.1: normalized package name match | openSUSE Tumbleweed package metadata: libadns-devel from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Libraries and header files to develop programs with libadns support | https://www.chiark.greenend.org.uk/~ian/adns/ftp/
- zypper - libadns1 - 1.6.2-1.1: normalized package name match | openSUSE Tumbleweed package metadata: libadns1 from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Advanced DNS resolver client library | https://www.chiark.greenend.org.uk/~ian/adns/ftp/


## Related links

- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [Homebrew utility packages](https://www.automicvault.com/pkg/brew-utility-packages/) - Matched Homebrew package provider.
- [apachetop](https://www.automicvault.com/pkg/brew/apachetop/) - Popular package that depends on this formula.
- [c-ares](https://www.automicvault.com/pkg/brew/c-ares/) - Shares av.db curated category or tags: cli, dns, library, networking, resolver.
- [djbdns](https://www.automicvault.com/pkg/brew/djbdns/) - Shares av.db curated category or tags: cli, dns, networking, resolver.
- [doh](https://www.automicvault.com/pkg/brew/doh/) - Shares av.db curated category or tags: cli, dns, networking, resolver.
- [getdns](https://www.automicvault.com/pkg/brew/getdns/) - Shares av.db curated category or tags: cli, dns, networking, resolver.
- [hesiod](https://www.automicvault.com/pkg/brew/hesiod/) - Shares av.db curated category or tags: cli, dns, library, networking.
- [hickory-dns](https://www.automicvault.com/pkg/brew/hickory-dns/) - Shares av.db curated category or tags: cli, dns, networking, resolver.
- [knot-resolver](https://www.automicvault.com/pkg/brew/knot-resolver/) - Shares av.db curated category or tags: cli, dns, networking, resolver.
- [libidn2](https://www.automicvault.com/pkg/brew/libidn2/) - Shares av.db curated category or tags: cli, dns, library, networking.

## Combined YAML source

View the package source record on GitHub. [combined/adns.yml](https://github.com/automic-vault/db/blob/main/combined/adns.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated configuration and credential file locations
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
