Skip to content

Instantly share code, notes, and snippets.

@vorlon001
Created May 3, 2026 10:29
Show Gist options
  • Select an option

  • Save vorlon001/4a7fd2e13c046a98aaca4dfd1593b386 to your computer and use it in GitHub Desktop.

Select an option

Save vorlon001/4a7fd2e13c046a98aaca4dfd1593b386 to your computer and use it in GitHub Desktop.
SRv6, docs

Таблица с описанием функций (behaviors) SRv6 в формате Markdown:

Behavior Identifier Behavior Description
End SRv6 version of prefix-SID
End.X L3 cross-connect, SRv6 version of Adj-SID
End.T IPv6 table lookup
End.DX6 Decapsulate and perform IPv6 cross-connect, per-CE IPv6 L3VPN use case
End.DX4 Decapsulate and perform IPv4 cross-connect, per-CE IPv4 L3VPN use case
End.DT6 Decapsulate and perform IPv6 route lookup, per-VRF IPv6 L3VPN use case
End.DT4 Decapsulate and perform IPv4 route lookup, per-VRF IPv4 L3VPN use case
End.DT46 Decapsulate and perform IPv4 or IPv6 route lookup, per-VRF IP L3VPN use case
End.DX2 Decapsulate and perform L2 cross-connect, P2P L2VPN use case
End.DX2V Decapsulate and perform L2 VLAN lookup, P2P L2VPN using VLANs use case
End.DT2U Decapsulate and perform unicast MAC lookup, L2VPN ELAN use case
End.DT2M Decapsulate and perform L2 flooding, L2VPN ELAN use case
End.B6.Encaps Identifies SRv6 SID bound to a SRv6 Policy, binding SID
End.B6.Encaps.Red End.B6 with reduced SRH
End.BM Endpoint bound to an SR-MPLS Policy

Вот дополненная таблица, в которую включены примеры команд для настройки в Linux (через iproute2). Важно: Для работы большинства этих команд требуется ядро Linux версии 4.14+ (для некоторых L2 функций — более свежие версии).

Behavior Identifier Behavior Description Пример команды в Linux (ip -6 route add ...)
End SRv6 version of prefix-SID ... encap seg6local action End dev lo
End.X L3 cross-connect (Adj-SID) ... encap seg6local action End.X nh6 2001:db8::2 dev eth1
End.T IPv6 table lookup ... encap seg6local action End.T table 100 dev lo
End.DX6 Decaps. + IPv6 cross-connect ... encap seg6local action End.DX6 nh6 2001:db8::2 dev eth1
End.DX4 Decaps. + IPv4 cross-connect ... encap seg6local action End.DX4 nh4 10.0.0.1 dev eth1
End.DT6 Decaps. + IPv6 VRF lookup ... encap seg6local action End.DT6 table 100 dev lo
End.DT4 Decaps. + IPv4 VRF lookup ... encap seg6local action End.DT4 table 100 dev lo
End.DT46 Decaps. + IP (v4/v6) VRF lookup Поддерживается через настройку таблиц в последних ядрах
End.DX2 Decaps. + L2 cross-connect ... encap seg6local action End.DX2 dev eth1.10
End.B6.Encaps Binding SID (BSID) ... encap seg6 mode encap segs fc00::A,fc00::B ...

Примечания к реализации в Linux:

  1. End.DT4/DT6: Чтобы эти функции работали корректно, на узле должна быть создана соответствующая таблица маршрутизации (например, ip route add ... table 100) или настроен VRF-интерфейс.
  2. End.DX2: Используется для реализации EVPN/L2VPN. Требует, чтобы целевой интерфейс был в режиме моста или прямой пересылки.
  3. End.X / End.DX: Параметр nh6 или nh4 — это адрес "следующего прыжка", на который пакет будет выброшен сразу после обработки.

Нужно ли разобрать конкретный пример с L2VPN (End.DX2) или вы продолжите настройку L3 маршрутов? Прислать команду для удаления этих правил, если возникнет ошибка в SID?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment