datadog-traceroute

command module
v0.1.33 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 3, 2025 License: Apache-2.0 Imports: 1 Imported by: 0

README

Datadog Traceroute

Datadog Traceroute produce traceroute results reflecting real traffic paths.

Support Matrix for IPv4

Linux
Protocol-Variant Supported Traceroute CLI
ICMP Yes traceroute -I
UDP Yes traceroute
TCP SYN Yes tcptraceroute
TCP SACK Yes
Windows

Windows Server:

Protocol-Variant Supported Traceroute CLI
ICMP Yes tracert
UDP Yes
TCP SYN Yes
TCP SACK Yes (req. win driver)

Windows Client:

Protocol-Variant Supported Traceroute CLI
ICMP Yes (req. win driver) tracert
UDP Yes (req. win driver)
TCP SYN Yes (req. win driver)
TCP SACK Yes (req. win driver)
TCP SYN SOCKET Yes

Note: Default firewall on windows can block the ICMP responses when not using Windows Driver. Note2: TCP syn_socket is only useful for Windows Client without Windows Driver.

macOS
Protocol-Variant Supported Traceroute CLI
ICMP Yes traceroute -I
UDP Yes traceroute
TCP SYN Yes tcptraceroute
TCP SACK Yes

IPv6 Support

IPv6 is only partially supported.

Note: Windows driver is needed for all protocol-variant for IPv6s on server versions.

Publishing Changes

After merging changes to main create a release by:

  1. Navigate to the Releases page

  2. Click "Draft a new release"

  3. You can "Select a tag" using the dropdown or "Create a new tag"

    When creating a new tag, make sure to include the v prefix. For example, if the last release was v0.1.29, your release should be v0.1.30.

  4. The release title should be the same as the version tag

  5. Use "Generate release notes" to fill in the release description

  6. Click "Publish release"

    This will create a git tag that can now be referenced in other repos. This will trigger go-releaser that will add installable artifacts to the release.

Documentation

Overview

Package traceroute adds traceroute functionality to the agent

Directories

Path Synopsis
Package cache implements a cache
Package cache implements a cache
Package common contains common functionality for both TCP and UDP traceroute implementations
Package common contains common functionality for both TCP and UDP traceroute implementations
Package icmp provides the logic for parsing ICMP packets
Package icmp provides the logic for parsing ICMP packets
Package packets is a generated GoMock package.
Package packets is a generated GoMock package.
Package publicip is a generated GoMock package.
Package publicip is a generated GoMock package.
Package sack has selective ACK-based tracerouting logic
Package sack has selective ACK-based tracerouting logic
Package tcp adds a TCP traceroute implementation to the agent
Package tcp adds a TCP traceroute implementation to the agent
Package testutils contains utilities for testing traceroute code
Package testutils contains utilities for testing traceroute code
Package udp adds a UDP traceroute implementation to the agent
Package udp adds a UDP traceroute implementation to the agent
Package winconn contains structs for sending and receiving packets to remote hosts from Windows machines
Package winconn contains structs for sending and receiving packets to remote hosts from Windows machines

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL