SIDの構造¶
Read in English · Leer en español
SRv6の**Segment Identifier(SID)**は128ビットの値で、通常のIPv6アドレスと同じ形式で表記します。SIDは、ノードの位置と、そのノードで実行するビヘイビアの両方をエンコードしています。
SRv6 SIDの構成¶
|<------------ 128 bits ------------->|
| Locator | Function | Arguments|
|<-- L bits --->|<-F bits->|<-A bits->|
| フィールド | 説明 | 一般的なサイズ |
|---|---|---|
| Locator | ノードを識別するルーティング可能なプレフィックス | 40〜64ビット |
| Function | ローカルのビヘイビア(End、End.DT4など)を識別 | 16〜24ビット |
| Arguments | Functionに渡すオプションのパラメータ | 0〜48ビット |
例¶
SID: 5f00:0:1::100
Breakdown:
Locator: 5f00:0:1::/48 (identifies the node)
Function: ::100 (End.DT4 - decap and lookup in IPv4 table)
Args: (none)
この例では、Locator 5f00:0:1::/48がノードを識別し、Function ::100がEnd.DT4(デカプセル化してIPv4テーブルを検索)を表します。Argumentsはありません。
LocatorはIGPの経路として広告される
Locatorのブロックは、IGP(IS-ISまたはOSPFv3)で通常のIPv6経路として広告されます。これにより、ネットワーク内のSRv6対応ノードすべてへの到達性が確保されます。
IANAが割り当てたSRv6 SIDブロック(5f00::/16)¶
RFC 9602(2024年10月)は、SRv6のSID専用のIPv6プレフィックスを割り当てています。IANAはこのブロックをIPv6 Unicast Address Registryから割り当て、IPv6 Special-Purpose Address Registryに登録しました。
| 項目 | 値 |
|---|---|
| Address Block | 5f00::/16 |
| Name | Segment Routing (SRv6) SIDs |
| RFC | RFC 9602 |
| Allocation Date | 2024-04 |
| Source | True |
| Destination | True |
| Forwardable | True |
| Globally Reachable | False |
| Reserved-by-Protocol | False |
5f00::/16はSRドメイン内では転送可能ですが、グローバルには到達不可能と明示されています。つまり、これらのアドレスを宛先とするパケットがパブリックなインターネットを通過してはいけません。
このブロック内での典型的な割り当て階層は次のとおりです。
5f00::/16 <- IANA SRv6 SID block
5f00:<domain>::/32 <- Operator / SR domain
5f00:<domain>:<node>::/48 <- Node locator
5f00:<domain>:<node>:<func>::/64 <- SID (locator + function)
事業者のGUAプレフィックスと5f00::/16の使い分け¶
RFC 9602は5f00::/16の使用を義務付けてはいません。事業者は、自社のグローバルユニキャストアドレス(GUA)のプレフィックスを引き続きSRv6のLocatorとして使えます。どちらの方式も有効です。
| 方式 | プレフィックスの出どころ | 長所 | 短所 |
|---|---|---|---|
| IANAのSRv6ブロック | 5f00::/16 | パケットキャプチャやACLで一目でわかる。フィルタリングが簡単。GUAを消費しない | グローバルにはルーティングされない。SRドメイン内でIGP/BGPによる明示的な広告が必要 |
| 事業者のGUA | 事業者の/32や/48 | 事業者ネットワーク内ですでにルーティング可能。通常のIPv6到達性と兼用できる | GUAを消費する。通常のIPv6トラフィックとSRv6トラフィックを見分けにくい |
初期のSRv6導入事例の多く(China Mobile、ソフトバンクなど)は、事業者が割り当てたGUAプレフィックスを使っています。RFC 9602はそれを補完する選択肢で、特にグリーンフィールドの導入や、共通の識別しやすいプレフィックスによってフィルタリングが簡単になるドメイン間SRv6で役立ちます。
ドメイン境界での5f00::/16のフィルタリング¶
5f00::/16を使う場合も自社のGUAを使う場合も、SRv6のSIDがSRドメインの外へ漏れないようにする必要があります。
事業者のGUAプレフィックスを使う場合も、同じ考え方を自社のLocatorのプレフィックス範囲に適用してください(RFC 8754 Section 5.1も参照)。
関連ページ¶
- SRv6とは — 概要に戻る
- SRHとパケットウォーク — SIDがパケットの中でどう処理されるか
- uSID — 圧縮されたSIDのエンコーディング(RFC 9800)
- Network Programming — SIDとビヘイビアの対応 (英語)
- Security — SRv6のセキュリティ上の考慮事項 (英語)
- RFC 9602 — IANAのSRv6 SIDブロック
5f00::/16(英語)
参考文献¶
- RFC 8986 - SRv6 Network Programming - SIDの構造(Locator、Function、Argumentsの各フィールド)を定義
- RFC 9602 - SRv6 SIDs in the IPv6 Addressing Architecture - SRv6 SID用の
5f00::/16のIANA割り当て - RFC 8754 - IPv6 Segment Routing Header (SRH) - SRHの仕様とセキュリティ上の考慮事項
- IANA IPv6 Special-Purpose Address Registry -
5f00::/16の公式レジストリエントリ - Segment Routing - segment-routing.net - SRv6のチュートリアル、デモ、導入情報を掲載するコミュニティサイト (英語)