traceroute6.iputils
Trace IPv6 route to a network host
SYNOPSIS
traceroute6 [options] destination
PARAMETERS
-4
Use IPv4 for sending packets. Useful if you only want to check the IPv4 route to a dual-stack destination (rare).
-I
Use ICMPv6 echo requests instead of UDP datagrams as probe packets.
-m
Set the maximum number of hops (TTL) to reach the destination. Defaults to 30.
-n
Do not try to map IP addresses to hostnames.
-q
Set the number of queries sent per hop. Defaults to 3.
-w
Set the time to wait for a response to a probe packet (in seconds). Defaults to 3.
-i
Specify the network interface to use for sending packets.
-g
Tell the IPv6 packets to pass through a specific gateway.
DESCRIPTION
traceroute6 is a command-line utility used to trace the route packets take to reach a destination host over an IPv6 network. It works by sending packets with increasing TTL (Time To Live) values, starting from 1. Each router along the path decrements the TTL. When the TTL reaches zero, the router sends an ICMPv6 Time Exceeded message back to the sender. Traceroute6 uses these ICMPv6 messages to identify the routers in the path and measure the round-trip time (RTT) to each hop. It displays the hostname (if available), IP address, and RTT for each router along the path. This allows network administrators to diagnose network connectivity issues, identify bottlenecks, and understand the routing paths used for IPv6 traffic. Unlike traceroute for IPv4, traceroute6 relies solely on ICMPv6 Time Exceeded messages, as UDP or TCP probes may be blocked by firewalls. It is part of the iputils package on Linux systems.
CAVEATS
Traceroute6 requires root privileges or the CAP_NET_RAW capability to send raw IPv6 packets. Firewalls or routers might block ICMPv6 Time Exceeded messages or UDP packets, preventing traceroute6 from displaying the complete path.
INTERPRETATION OF OUTPUT
Each line in the output represents a hop along the path. The first column shows the hop number. Subsequent columns show the hostname (if available), IP address, and RTTs (round-trip times) for each probe sent to that hop. An asterisk (*) indicates that a response was not received for that probe. Multiple asterisks often indicate a network problem or a firewall blocking traffic. A RTT of '!' followed by a code is an indication that there was an error.
HISTORY
traceroute6 evolved alongside the development and deployment of IPv6. As IPv6 became more prevalent, the need for a tool to diagnose IPv6 network paths arose. Early versions were likely basic implementations focused on sending UDP probes and interpreting ICMPv6 Time Exceeded messages. The current implementation within the iputils package has been refined over time, incorporating options for different probe types (ICMPv6 Echo Requests) and improved hostname resolution. The utility has become a standard tool for network troubleshooting and analysis in IPv6 environments.
SEE ALSO
traceroute(8), ping6(8), ip(8)