Iodine is a DNS tunneling tool that allows IPv4 traffic to pass through DNS queries and responses. It is designed for situations where regular internet access is blocked but DNS resolution is still permitted. The project includes both a client and a server, requiring control of a domain and a publicly reachable server for proper setup. Iodine creates a virtual network interface so systems can communicate through an IP tunnel carried over DNS. It supports multiple DNS record types and automatically attempts to select efficient encoding methods depending on the resolver environment. Because the tunneled traffic is not encrypted by default, it is best treated as a transport layer that should be paired with secure protocols when privacy matters.
Features
- IPv4 tunneling through DNS traffic
- Client and server architecture
- Virtual network interface creation
- Support for several DNS request types
- Automatic encoding and tunnel parameter detection
- Works in restricted networks where DNS remains available