Automic VaultAutomic Vault

brew

Install iodine with Homebrew, apk, apt, dnf, MacPorts, Nix, pacman, zypper

Tunnel IPv4 traffic through a DNS server. Version 0.8.0 via Homebrew; verified from local package data.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install iodine

local Homebrew formula metadata

MacPortsverified · 94%
sudo port install iodine

MacPorts ports tree · net/iodine/Portfile · source: api.github.com

Linux

Alpine Linux apkverified · 92%
sudo apk add iodine

Alpine Linux edge package indexes · iodine · source: dl-cdn.alpinelinux.org

Debian aptverified · 92%
sudo apt install iodine

Debian stable package indexes · iodine · source: deb.debian.org

Fedora dnfverified · 92%
sudo dnf install iodine

Fedora Rawhide package metadata · iodine · source: dl.fedoraproject.org

Nixverified · 92%
nix profile install nixpkgs#iodine

nixpkgs package indexes · pkgs/by-name/io/iodine/package.nix · source: api.github.com

Arch Linux pacmanverified · 92%
sudo pacman -S iodine

Arch Linux sync databases · iodine · source: geo.mirror.pkgbuild.com

openSUSE zypperverified · 92%
sudo zypper install iodine

openSUSE Tumbleweed package metadata · iodine · source: download.opensuse.org

overview

Package summary

Tunnel IPv4 traffic through a DNS server

Commands and aliases

  • iodine
  • iodined

history

Project history and usage

iodine is a DNS tunneling client/server pair for carrying IPv4 traffic through DNS queries and responses. Its upstream documentation frames it as useful in networks where broader Internet access is firewalled but DNS queries are still allowed.

Project history

The project published version 0.3.0 as its first public release on 2006-06-24 with Linux, FreeBSD, and OpenBSD support. Subsequent releases added Mac OS X support, authentication, multiuser operation, manpages, several DNS response encodings, Windows support, raw UDP mode, SELinux and systemd-related support, and IPv6 transport support for parts of the connection path while keeping tunneled payloads IPv4.

iodine's development history is especially visible in its changelog because many features correspond to real-world DNS-relay behavior: fragment-size probing, alternative record types, Base32/Base64/Base128 encodings, hostname-length controls, and workarounds for relays that rewrite or time out unusual DNS traffic.

Adoption history

The package became a standard small networking utility across Unix-like package managers. The Homebrew formula packages versioned GitHub tag archives and bottles it for macOS and Linux targets, while the input package metadata also lists iodine in Debian, Ubuntu, Fedora, Alpine, Arch, Nix, MacPorts, and openSUSE-style ecosystems.

How it is used

iodine is normally used as an iodined server bound to a delegated DNS subdomain and an iodine client that opens a TUN-style interface. The README emphasizes that the server and client should speak the same protocol version, that users need control over a real domain for routed use, and that tunneled traffic is not encrypted by iodine itself.

Why package nerds care

For package nerds, iodine is the classic example of a small C networking tool whose packaging value is not just the binary but the platform glue around TUN/TAP devices, resolver behavior, DNS record quirks, and optional OS integration. Its formula is a compact package-manager artifact for a famously odd transport layer.

Timeline

  • 2006: First public release, version 0.3.0.
  • 2007: Version 0.4.0 added multiuser support, authentication, and a manpage.
  • 2009: Version 0.5.x added Windows support and downstream fragmentation/autoprobing improvements.
  • 2010: Version 0.6.0-rc1 added raw UDP mode and more query-type support.
  • 2014: Version 0.7.0 added partial IPv6 path support, systemd socket activation, and an authentication-bypass fix.
  • 2023: Version 0.8.0 added native Mac OS X utun support, server-side IPv6 listening support, wildcard-domain handling, and other portability updates.

Related projects

  • iodine belongs to the DNS-tunnel family of tools and is commonly compared by function rather than code lineage with utilities that tunnel IP or proxy traffic through constrained network egress paths. Its own docs recommend layering SSH or a VPN over the tunnel when confidentiality matters.

security posture

Risk level: blue

broad file, network, media, or database tool signal.

Risk classifier

blue risk · medium confidence · tool

Why

  • broad file, network, media, or database tool signal

Signals

  • text:server

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 6 platform targets.
  • Build metadata lists 1 build dependencies.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

executables

Installed executables

CommandKindExposureNote
iodinecliglobal executable
iodinedcliglobal executable

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-07-08
manager version0.8.0
manager updated
local dataok
upstreamcurrent
latest detectedv0.8.0

https://github.com/yarrick/iodine

  • infoNo package-manager update timestamp was available.low confidence

install metadata

Package metadata

Package keybrew:iodine
Version0.8.0
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/iodine
Homepagehttps://code.kryo.se/iodine
Repositoryhttps://github.com/yarrick/iodine
Upstream docshttps://code.kryo.se/iodine
LicenseISC
Source archivehttps://github.com/yarrick/iodine/archive/refs/tags/v0.8.0.tar.gz
Build dependenciescmake
Bottleavailable (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Nameiodine
Version Scheme0
Revision0
Head VersionHEAD
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • head
  • stable

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

Debian apt95%

iodine 0.7.0-11

tool for tunneling IPv4 data through a DNS server

https://code.kryo.se/iodine

sudo apt install iodine
  • Section: net
  • Architecture: amd64
  • 9 dependencies
  • 8 optional deps
  • normalized package name match
  • Matched by: Iodine
Debian stable package indexes · deb.debian.org · Debian stable package indexes: iodine from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz
Nix95%

iodine

nix profile install nixpkgs#iodine
  • normalized package name match
  • Matched by: Iodine
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/io/iodine/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
Ubuntu apt95%

iodine 0.7.0-10

tool for tunneling IPv4 data through a DNS server

https://code.kryo.se/iodine

sudo apt install iodine
  • Section: universe/net
  • Architecture: amd64
  • 10 dependencies
  • 8 optional deps
  • normalized package name match
  • Matched by: Iodine
Ubuntu 24.04 LTS package indexes · archive.ubuntu.com · Ubuntu 24.04 LTS package indexes: iodine from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz
apk95%

iodine 0.8.0-r2

IP over DNS tunnel

https://code.kryo.se/iodine/

sudo apk add iodine
  • License: ISC
  • Architecture: x86_64
  • Source Package: iodine
  • 1 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Iodine
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: iodine from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

iodine-doc 0.8.0-r2

IP over DNS tunnel (documentation)

https://code.kryo.se/iodine/

sudo apk add iodine-doc
  • License: ISC
  • Architecture: x86_64
  • Source Package: iodine
  • normalized package name match
  • Matched by: Iodine
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: iodine-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
dnf95%

iodine 0.8.0-9.fc44

Solution to tunnel IPv4 data through a DNS server

http://code.kryo.se/iodine/

sudo dnf install iodine
  • License: ISC
  • Category: Unspecified
  • Architecture: x86_64
  • Source Package: iodine
  • 2 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Iodine
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: iodine from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst
dnf95%

iodine-client 0.8.0-9.fc44

Client part of solution to tunnel IPv4 data through a DNS server

http://code.kryo.se/iodine/

sudo dnf install iodine-client
  • License: ISC
  • Category: Unspecified
  • Architecture: x86_64
  • Source Package: iodine
  • 6 dependencies
  • 3 provides
  • normalized package name match
  • Matched by: Iodine
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: iodine-client from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst
dnf95%

iodine-server 0.8.0-9.fc44

Server part of solution to tunnel IPv4 data through a DNS server

http://code.kryo.se/iodine/

sudo dnf install iodine-server
  • License: ISC
  • Category: Unspecified
  • Architecture: x86_64
  • Source Package: iodine
  • 8 dependencies
  • 3 provides
  • normalized package name match
  • Matched by: Iodine
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: iodine-server from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst
pacman95%

iodine 0.8.0-2

Tunnel IPv4 data through a DNS server

https://code.kryo.se/iodine

sudo pacman -S iodine
  • License: custom:ISC
  • Architecture: x86_64
  • 3 dependencies
  • normalized package name match
  • Matched by: Iodine
Arch Linux sync databases · geo.mirror.pkgbuild.com · Arch Linux sync databases: iodine from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz
zypper95%

iodine 0.8.0-1.2

IPv4-through-DNS tunnel server and client

http://code.kryo.se/iodine/

sudo zypper install iodine
  • License: ISC
  • Category: Unspecified
  • Architecture: x86_64
  • Source Package: iodine
  • 10 dependencies
  • 3 provides
  • normalized package name match
  • Matched by: Iodine
openSUSE Tumbleweed package metadata · download.opensuse.org · openSUSE Tumbleweed package metadata: iodine from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst
MacPorts95%

iodine

sudo port install iodine
  • normalized package name match
  • Matched by: Iodine
MacPorts ports tree · api.github.com · MacPorts ports tree: net/iodine/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

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