Glossary

SRv6

Segment Routing over IPv6

What is SRv6

SRv6 (Segment Routing over IPv6) is a next-generation network protocol that combines Segment Routing (SR) — a source-routing architecture — with IPv6 networks. It is widely regarded as a core technology for 5G, cloud-network integration, and future intelligent IP networks.

In source routing, the device at the edge of the network decides the path a packet should take and writes that path into the packet itself, rather than every router along the way deciding independently. Segment Routing applies this idea by breaking a path into segments, each identified by a SID (Segment Identifier). In SRv6, a SID is an IPv6 address, which means the whole mechanism runs directly on the IPv6 data plane, without needing a separate label-based technology such as MPLS. Once an SRv6 tunnel is configured on an interface, service traffic passing through it is encapsulated with an SRH (Segment Routing Header), built from the device's SID table entries, before being forwarded.

How SRv6 Works

SIDs and locators. Each SRv6 node owns a locator: an IPv6 prefix from which its SIDs are allocated. The locator makes the node reachable — it is advertised through the IGP, so every other device learns how to reach any SID that belongs to it — while the remaining bits of each SID identify what the node should do. That "what to do" is called the SID's behavior, and the documented ones include:

  • End: a basic endpoint function that identifies the node itself, so a packet can be steered to pass through it.

  • End.X: an endpoint function that forwards the packet to a specific adjacent next hop (or out a specific interface), used to steer traffic over a chosen link.

  • End.DT4, End.DT6, and End.DT46: decapsulate the packet and look up the inner destination in a specific VRF's IPv4 routing table, IPv6 routing table, or either one, respectively. These are the behaviors that deliver VPN services at the egress PE.

Encapsulation. When traffic enters an SRv6 domain, the ingress node wraps it in an outer IPv6 header and, where needed, an SRH. The outer header carries a source address that the device must own locally and be able to route.

BE and TE. SRv6 supports two common ways of using these building blocks:

  • SRv6 BE (best effort) relies on the IGP to carry traffic along the shortest path to the egress node. The PE and P devices run IS-IS with SRv6 enabled, so each node's locator is advertised and SRv6 packets are forwarded toward the destination PE. VPN routes are exchanged between the PEs using MP-BGP, and each VPN route carries the SID of the egress PE's VRF. When a packet arrives at the egress PE, the End.DT behavior delivers it to the right VPN. The customer edge (CE) devices connect to the PEs with ordinary EBGP.

  • SRv6 TE (traffic engineering) builds on BE by specifying the path explicitly. Static SRv6 routes list the sequence of SIDs a service's traffic must visit, and the ingress node encapsulates traffic with that segment list, so the packet follows the chosen path instead of the IGP's shortest one. Because the segment list is encapsulated by the device, TE tunnels rely on a loopback interface bound to SRv6 for the encapsulation step.

Compatibility. Because SRv6 packets are ordinary IPv6 packets, nodes in the middle of the network that do not support SRv6 can still forward them as regular IPv6 traffic. This allows SRv6 to be introduced gradually.

Why SRv6 is Beneficial

  • One data plane: SRv6 runs on IPv6 alone, so there is no need to run a separate label-based data plane and its supporting protocols alongside IPv6.

  • Services over a simple core: With an IGP like IS-IS advertising locators and MP-BGP carrying VPN routes with their SIDs, L3VPN services can be delivered across an IPv6 core with a relatively small set of protocols.

  • Programmable paths: A segment list lets the network operator define exactly where a service's traffic goes, enabling traffic engineering without per-flow state in transit devices — the path lives in the packet, not in every router.

  • Gradual deployment: Devices that do not support SRv6 can still forward SRv6 packets as plain IPv6, so operators can enable it incrementally.

  • Built for modern networks: Its alignment with IPv6 and its ability to combine connectivity, VPN services, and path control in a single architecture explains why it is considered a core technology for 5G and cloud-network integration.

At Asteraix

What We Can Do at Asteraix

AsterNOS implements SRv6 with the building blocks above, configurable through the CLI and through NETCONF. The documented examples cover both a BE and a TE deployment.

  • Locators with a few commands: segment-routing → srv6 → locators → locator <name> → prefix <ipv6-prefix> defines a locator from which the node's SIDs are allocated.

  • IS-IS and BGP integration: IS-IS advertises SRv6 with segment-routing srv6 and locator <name> under the IS-IS instance, with SRv6-enabled interfaces joined to IS-IS using ipv6 router isis. For VPN services, the BGP instance is bound to the locator, sid vpn export auto allocates a SID for each VRF, and MP-BGP is established between PEs over IPv6 with capability extended-nexthop and the ipv4 vpn and ipv6 vpn address families.

  • Automatically generated SIDs: In the BE example, each PE generates End, End.X, and End.DT-type SIDs from its locator, and show segment-routing srv6 local sid lists them with their action, VRF, and adjacency. Remote VPN routes appear in the routing table with the egress PE's SID attached.

  • SRv6 TE with explicit segment lists: Binding a loopback to SRv6 (loopback binding srv6 and loopback internal) and adding a static route with segments <sid1>/<sid2>/... — for both IPv4 (ip route) and IPv6 (ipv6 route) within a VRF — makes the device encapsulate matching traffic with the specified segment list.

  • NETCONF and YANG management: The SRv6 data model covers locators (name and prefix), encapsulation (source address), and static SIDs (SID value, behavior of End, End.X, End.DT4, End.DT6, or End.DT46, locator name, VRF, and next-hop paths), with get, merge, replace, create, and delete operations. Three RPCs return the local SID table, locator details (including the bit lengths of the block, node, function, and argument parts and whether the locator is up), and the configured encapsulation source address.

  • Verification commands: show segment-routing srv6 local sid, show isis neighbor, show ip route vrf all, and show ipv6 route vrf all confirm neighbors, SIDs, and routes, while ping between CE devices confirms end-to-end connectivity.