Source Addresses

Source Addresses

Each agent in nxthdr is assigned two IPv6 /48 prefixes:

  • One for unicast measurements
  • One for anycast measurements

The unicast prefix is advertised by a single agent, while the anycast prefix is advertised by multiple agents simultaneously. This allows both targeted and distributed measurement scenarios.

Each user of the platform is assigned a unique 32-bit user ID. This ID is appended to each agent’s /48 prefixes to derive a unique /80 prefix for that user. This ensures:

  • Users cannot interfere with each other’s measurement space
  • Source addresses are user-scoped and globally unique across the platform

With this design, a user can vary the source address of their probes within their allocated /80, while still being able to attribute results to their own measurements.

Tracking Agents in Anycast Measurements

In anycast mode, a probe may be sent from one agent, but the corresponding reply may be received by a different agent. To determine which agent sent the probe, you can inspect the source IP address of the probe.

For example:

If agent vltatl01 sends a probe using the source IP 2a0e:97c0:8a0:17d9:8e72::10, and you receive a reply where this IP appears as the probe_src_addr, you know that the probe originated from vltatl01.

If you want to explicitly encode the agent identity in your probe source address for anycast measurements, you have a couple of options:

  • Embed agent ID bits into your /80 address allocation
  • Use another field, such as the source port, to carry this metadata

The choice is yours, nxthdr gives you full control over probe construction and addressing.