BGPのORIGIN属性操作とインターネットへの影響
Key Points
- ORIGIN属性の改変頻発
- 経路選択に重大な影響
- 観測で約70%が不一致
Summary
この記事はBGPの必須属性であるORIGINが運用上しばしば上書きされている実測結果とその影響を報告します。著者は複数のビューポイントから観測を行い、発信元ASが設定した値と経路上で観測されるORIGIN値が多くの経路で不一致であること(約70%の経路で差異)を確認しました。ORIGINは経路選択の早い段階で評価されるため、改変は実際のトラフィック経路に影響します。
Key Points
- ORIGIN属性とは: 経路の注入元の方法を示す属性で、値は
IGP(0),EGP(1),INCOMPLETE(2)。RFC4271は原始スピーカー以外が変更すべきでないと定義。 - 観測データ: RIPE RIS/RouteViewsの集計では全体の約89.8%がIGP、3.5%がEGP、6.7%がINCOMPLETE。ただし実地実験では観測経路の約70%で発信元の値と異なるORIGINが確認された。
- 運用影響: ORIGINはローカルプリファレンスやAS_PATH長が同じ場合に早期に比較され、値が低い方が選択されるため、改変により経路選択やフォワーディングが意図せず変わる可能性がある。
- 実務的リスク: トラフィックの望まない偏り、障害時のフェイルオーバー挙動の変化、経路トラブルシューティングの難化。
Practical recommendations
- 監視: 自組織の発信時のORIGIN値と外部観測(RIPE/RouteViews等)を定期的に比較してアラートを設ける。
- ポリシー: ネイバー設定やルータポリシーでORIGINを書き換えないよう明示し、必要なら経路選択に影響しないよう正規化(
INCOMPLETE→IGP等)のルールを検討する。 - 運用回避策: ORIGINに依存する意思決定は避け、重要な経路制御は
local-preferenceやフィルタリングで明示的に行う。 - 長期対策: ORIGIN自体に検証手段は乏しいため、異常検出と運用ポリシーでの防御が現実的。観測データを使った自動通知とログ保持を推奨。
Short action items for engineers
- 既存BGPピアの設定でORIGIN書換設定を確認する。
- RIPE/RouteViewsとの定期比較ジョブを作成して差分を可視化する。
- 異常なORIGIN変更を検出したら調査フローを定義し、影響範囲を評価する。