Learn

IPv6 Traceroute

Traceroute is essential for network engineers to troubleshoot problems and establish baseline performance. It has been part of the IPv4 toolbox for years, helping debug and resolve networking issues. 

With the advent of IPv6, traceroute has been upgraded with new capabilities. Like its IPv4 counterpart, IPv6 traceroute determines the path IPv6 packets take and the response times of each hop to reach the intended destination. It can also take advantage of the benefits inherent to IPv6, including improved packet fragmentation management, extension headers, intrinsic security, and IPv6 multicast features. IPv6 traceroute delivers a more comprehensive overview of your network state in conjunction with other advanced network monitoring and synthetic monitoring systems.

This article explores how IPv6 traceroute fits into the broader network and application monitoring context. We showcase some key use cases and share best practices for effectively leveraging IPv6 traceroute to optimize network application delivery.

Summary of IPv6 traceroute best practices 

Best Practice Description
Focus on critical network paths. Target traceroute operations to the most critical routes for web performance, such as those between web servers, content delivery network (CDN) nodes, and end-user locations.
Leverage IPv6 Anycast for path verification. IPv6 traceroute tests and verifies the paths taken to reach anycast nodes.
Validate Path MTU Discovery (PMTUD) behavior for IPv6. Use IPv6 traceroute to trace paths and pinpoint routers that fail to send ICMPv6 “packet too big” messages.
Use IPv6 multicast for path testing and diagnostics. Conduct IPv6 traceroute tests to observe multicast group membership along the path for streaming or group communication web applications and identify routers that fail to forward multicast traffic as expected.
Monitor latency and hop count trends. Use IPv6 traceroute as part of an automated network monitoring routine to track latency and hop count changes. They can indicate network issues that affect site performance.
Analyze results in real-time contexts. Combine IPv6 traceroute data with additional real-time performance metrics from tools like synthetic monitoring for deeper insights.

Some of these are general best practices vital for IPv4 or IPv6 traceroute implementations, while others are more specific to IPv6 traceroute. The rest of the article explores them in detail.

IPv4 vs. IPv6 - An overview

Before we begin, let's briefly review the differences between IPv4 and IPv6. IPv6 is the next iteration of the Internet Protocol as designed by the Internet Engineering Task Force (IETF).  It has some fundamental differences from IPv4, as explained in the table below.

Feature IPv4 IPv6
Address length 32 bits 128 bits
Address format Dotted decimal (e.g., 192.168.1.1) Hexadecimal with colons (e.g., 2001:db8::1)
Address space ~4.3 billion addresses ~340 undecillion addresses
Header size 20 bytes 40 bytes
Header complexity Complex, includes options Simplified options handled in header extensions
Fragmentation Performed by routers and hosts Performed only by hosts
Security Optional (IPSec available) Mandatory (IPSec is built-in)
Quality of Service Limited support (via Type of Service) Advanced (via Flow Label field)
Address types Unicast, Broadcast, Multicast Unicast, Anycast, Multicast (no Broadcast)
Routing Smaller routing tables Larger but hierarchical routing tables
Broadcast Supported Replaced with Multicast
Backward compatibility No direct compatibility with IPv6 IPv4 tunneling mechanisms available

Arguably, the most important reason for the introduction of IPv6 is the exhaustion of the IPv4 address space.  However, there are additional reasons for its implementation.  As far as IPv6 traceroute goes, the most critical aspects of IPv6 are:

  • IPv6 has a larger address space for more efficient hierarchical address allocation, simplifying routing table management.
  • It has also eliminated broadcasts and replaced them with multicast communication.
  • IPv6 standardizes and makes greater use of anycast for optimized delivery to the nearest device.
  • IPv6 header extensions offer additional functionality as needed, enabling features such as inherent security and flow control.

Now, let’s dive into IPv6 traceroute best practices.

#1 Focus on critical network paths

To successfully and effectively leverage IPv6 traceroute, it is vital to identify what to test and where to test it. For this reason, it is necessary to understand the nature of critical network paths. This involves understanding large-scale network design and where and how IPv6 traceroute should be applied in such infrastructures.

Identifying Critical Network Paths

There are various network services involved in large-scale network design through which these critical network paths can be identified. By examining and understanding them, we are in a better position to be able to more appropriately test them. This is especially true for networks such as those of an ISP or a large enterprise. For example:

  • Border Gateway Protocol (BGP) provides routing between Autonomous Systems globally. It is a critical component of large networks, as misconfigurations, attacks, or sub-optimal routing can have far-reaching repercussions.
  • Domain Name System (DNS), widely used by network applications, requires low latency and resilience to maintain an excellent user experience and network service availability.
  • Network infrastructures, including Content Delivery Networks (CDNs), improve response times and reliability by distributing assets across multiple geographically dispersed locations and physically bringing the content closer to the end user. CDN infrastructure is tightly coupled with BGP and DNS, requiring sophisticated routing mechanisms and geographical load balancing.
An example of a Content Delivery Network

Providing Visibility

IPv6 traceroute provides visibility into the path transmitted traffic takes, thus providing insights into latency, packet loss, and routing inefficiencies in these services. You can use the information gleaned to diagnose and troubleshoot performance and proactively deal with potential issues that could stem from misaligned routes, suboptimal CDN arrangements, or latency arising from DNS services.

The global DNS service

Using IPM to Test Critical Paths

Internet Performance Monitoring (IPM) involves monitoring and assessing the performance of intermediary network devices such as routers, switches, and their physical links. IPM aims to measure network-wide latency, jitter, and throughput holistically rather than on a per-customer or per-endpoint basis.

IPM is the primary beneficiary when using IPv6 traceroute in BGP, DNS, CDNs, and other critical network infrastructure. The critical paths you should monitor include transit routes between BGP autonomous systems, DNS resolvers, and authoritative servers and the delivery paths between CDN edge servers and their other points of presence (PoPs).

IPv6 traceroute allows network operators to visualize these critical network paths in real-time and in newer infrastructures that leverage IPv6.

#2 IPv6 anycast for path verification

IPv6 anycast allows multiple nodes, like network application servers, to be assigned the same global unicast IPv6 address. The underlying routing protocol, such as BGP, directs traffic to the nearest node with that IPv6 address. Anycast is widely used in services such as CDNs and DNS, so users access the most geographically or topologically efficient network servers.

IPv6 traceroute is a valuable tool for gaining insight into how traffic is routed through an anycast network. The specific path taken to reach an anycast destination may vary depending on factors like routing policies, network topology, traffic conditions, and geography. By running IPv6 traceroute multiple times and from multiple locations, you can observe different paths being taken, providing further insights into how the requests are being routed.

For example, consider the following two traceroute results to the same IPv6 anycast address:

$ traceroute -6 final-destination.example.net
traceroute to final-destination.example.net (2001:db8::100), 30 hops max, 80 byte packets
1  2001:db8::1  1.23 ms  
2  2001:db8:1::2  5.67 ms  
3  lax1.example.net (2001:db8:2::3)  12.34 ms  
4  2001:db8:2::5  20.45 ms  
5  final-destination.example.net (2001:db8::100)  25.67 ms  
$ traceroute -6 final-destination.example.net
traceroute to final-destination.example.net (2001:db8::100), 30 hops max, 80 byte packets
1  2001:db8::1  1.12 ms  
2  2001:db8:3::2  6.45 ms  
3  jfk1.example.net (2001:db8:4::3)  18.76 ms  
4  2001:db8:4::6  30.12 ms  
5  final-destination.example.net (2001:db8::100)  35.89 ms  

Notice that although the destination is the same, the IPv6 traceroute results are different. The DNS names of the intermediate hops suggest that the first traceroute reached the destination via Los Angeles, while the second took a route via New York.  This demonstrates how anycast routing can direct traffic dynamically via different paths.

In addition, because IPv6 traceroute measures latencies over specific paths, network engineers can analyze IPv6 traceroute results to confirm the appropriate load distribution and detect potential inefficiencies in the anycast setup.

#3 Validate PMTUD behavior

Path Maximum Transmission Unit Discovery (PMTUD) is a feature that detects the smallest MTU size in a particular path to eliminate packet fragmentation and improve network performance. Although PMTUD is available for IPv4, its use is not mandatory, as any intermediary network device can perform IP packet fragmentation for IPv4. 

IPv6 does not allow packet fragmentation by intermediary network devices. Instead, it requires that endpoints of a particular communication manage packet sizes based on the path's available MTU. Thus, PMTUD becomes mandatory for IPv6 communication.

ICMPv6 achieves the primary functionality of PMTUD. Network devices that cannot transmit an IPv6 packet because its MTU size is too large return an ICMPv6 “Packet Too Big” message.

IPv6 traceroute is a valuable tool for identifying problems with PMTUD, such as routers failing to send the ICMPv6 messages. By observing where packets drop along the path, network specialists pinpoint MTU mismatches or misconfigured devices that prevent PMTUD from operating correctly. You can avoid possible performance degradation and ensure proper packet delivery.

#4 Use IPv6 multicast for path testing and diagnostics

With the elimination of broadcast traffic for IPv6, the protocol relies heavily on multicast for various network-related control-plane functionalities. As such, IPv6 traceroute provides valuable insights into multicast behavior. For example, it can: 

  • Perform path discovery, indicating the route packets take from a source to a particular multicast-enabled router or interface. 
  • Verify that multicast traffic reaches the intended routers in the network.
  • Reveal whether specific hops in a path are part of the multicast routing infrastructure. 
  • Reveal inconsistent paths or incomplete delivery if a router is not forwarding multicast traffic as expected.

IPv6 traceroute can help troubleshoot multicast routing issues, identify if and where packets are dropped, and confirm that multicast traffic traverses expected paths. However, it's important to note that IPv6 traceroute is not inherently designed to monitor multicast behavior in detail, and its functionality is limited in this aspect.

#5 Monitor latency and hop count trends

IPv6 traceroute can be an important component of a holistic network monitoring strategy. It provides insights into the behavior and health of a network. For example, traceroute reveals the primary characteristics of network traffic: 

  • Per-hop latency
  • Hop count 
  • Path taken. 
Hop count of various network paths

Although fundamental in nature, these characteristics can be used to detect anomalies such as unexpected outing changes or loops, network congestion points, and suboptimal routing early on, all of which are important for large-scale network monitoring.

#6 Analyze results in real-time contexts

While IPv6 traceroute is invaluable in its own right, its power is amplified when integrated with other monitoring tools. Combining it with traffic flow analysis tools provides a deeper understanding of network traffic patterns and load distribution.

In an effort to harness the power of traceroute, and IPv6 traceroute in particular, Catchpoint has created the Pietrasanta Traceroute Tool, an open-source tool available natively on Linux, but it can also be configured to run on Windows. This tool enhances the benefits of this powerful utility with features tailored to modern networking challenges. In addition, Catchpoint’s design team devised the InSession mode for traceroute to further enhance the utility by providing additional capabilities, operational diversity, and visualizations.

In addition, Application Performance Monitoring (APM) focuses on tracking the performance of specific applications running on the network and the endpoints that leverage those applications. APM monitors aspects such as user experience and data flow efficiency.

Pairing traceroute data with application monitoring tools that focus on both IPM and APM approaches helps ensure both network-centric monitoring and application-level experiences for end users. The integration creates a more comprehensive view of the network’s health and makes IPv6 traceroute an important and indispensable part of network monitoring strategies.

Operating in an IPv4/IPv6 hybrid environment

Today and for many years to come, networks are expected to function in a dual-stack environment where both IPv4 and IPv6 are supported.  In such environments, including IPv6 traceroute alongside its IPv4 counterpart is necessary to compare path performance, identify inconsistencies, and validate IPv6 readiness.

An example of a dual-stack network

Dual-stack scenarios require great care concerning interoperability, and using IPv6 traceroute provides essential insights for managing the complexities of hybrid environments.

Both IPv4 and IPv6 traceroute capabilities are also valuable in managing network congestion. Traceroute identifies congestion points by analyzing delay and hop-by-hop response times. It provides visibility into areas where packet loss or latency spikes occur, triggering proactive measures for route optimization, quality of service mechanisms, or traffic balancing to address the resultant congestion.

Many of the challenges involved in running IPv6 in a “mostly IPv6” network are well-known and well-documented. Indeed, engineers at the IETF are well aware of these challenges and are currently working on solutions to further ease such operations. These solutions will, of course, positively impact IPv6 traceroute as well.

Last thoughts

IPv6 traceroute is an integral part of any large-scale network monitoring strategy.  Whether used independently or integrated into a comprehensive monitoring solution like InSession or Pietrasanta Traceroute, it becomes an indispensable tool in your networking management arsenal.

To experience the power of comprehensive network monitoring firsthand, request a demo of Catchpoint. Discover how its advanced features can help you optimize your IPv6 performance and ensure a seamless user experience.

What's Next?