System Servicesteredoipv6tunnelingnatudp

miredo

Miredo is a Teredo client that provides IPv6 connectivity to hosts behind NAT devices by encapsulating IPv6 packets into UDP/IPv4 datagrams. It can also operate as a Teredo relay to forward IPv6 packets between the IPv6 Internet and remote Teredo clients.

Description

Miredo implements the Teredo IPv6 tunneling protocol as defined in RFC 4380, enabling dual-stack IPv6/IPv4 hosts behind NATs to access the IPv6 Internet. It creates a Teredo tunneling interface for encapsulation of IPv6 over UDP, solving connectivity issues caused by NAT traversal.

Use cases include providing IPv6 access in environments with IPv4-only NATs, such as home routers or enterprise firewalls. Miredo can run as a client for end-user connectivity or as a relay to bridge Teredo clients to the native IPv6 network.

The package includes additional tools like miredo-server for hosting Teredo servers, which assist clients in NAT configuration, binding maintenance, and hole punching for peer-to-peer IPv6 communication.

How It Works

Miredo encapsulates IPv6 packets into UDP/IPv4 datagrams to traverse NAT devices, following RFC 4380. As a client, it sets up a virtual tunneling interface and connects to a Teredo server to determine NAT mapping and external address. It maintains UDP bindings and performs hole punching for direct communication with other Teredo clients or relays IPv6 traffic to the IPv6 Internet.

Installation

bash
sudo apt install miredo

Flags

-c, --configspecify a configuration file
-f, --foregroundrun in the foreground
-h, --helpdisplay this help and exit
-p, --pidfileoverride the location of the PID file
-u, --useroverride the user to set UID to
-V, --versiondisplay program version and exit

Examples

Display help and usage information for miredo
miredo -h
Display help for the configuration file syntax checking tool
miredo-checkconf -h
Display help for the stateless Teredo IPv6 responder
teredo-mire -h
Display help and usage for the Teredo server
miredo-server -h
Create a Teredo tunneling interface for IPv6 over UDP (default usage)
miredo
Run miredo in the foreground
miredo --foreground
Run miredo with a specified configuration file
miredo --config /path/to/config
Start the Teredo IPv6 tunneling server (default usage)
miredo-server
Updated 2026-04-16kali.org ↗