要約

  • RFC 6860は、SPFが必要とするルーター間のトポロジー情報を残したまま、トランジット網のプレフィックスを宛先到達性としてRIB/FIBへ入れない方法を定める。
  • 「隠す」の効力は限定的だ。OSPFv2のLSAにはアドレス情報が残り得る。旧実装はDRへの/32を入れ得る。管理、Forwarding Address、仮想リンクがそのアドレスに依存していれば別の損失が起きる。

消えたものを取り違えない

変更後の確認で、経路表の行数だけを見てはいけない。プレフィックスが減った理由は、意図した抑制かもしれないし、隣接断やLSA欠落かもしれない。まず、リンクがトポロジーとして生きている証拠と、アドレス到達性だけが外れた証拠を並べる必要がある。

番号付きのOSPFv2ポイントツーポイントリンクでは、Router-LSAが二つの役割を持つ。Type 1 linkは隣接ルーターを表し、SPFで使われる。Type 3 stub linkは割り当てられたサブネットを表し、そのプレフィックスを経路表へ導く。RFC 6860はType 3を省き、Type 1を残す。

したがって、ルーターは「この隣接を経由して先へ進める」と知り続ける一方、「このインターフェース網を全域から到達可能な宛先にする」とは広告しない。インターフェース停止でも、アドレス削除でも、メトリックを上げるドレインでもない。遠隔RIBに対するプレフィックスの権限を狭める操作である。

ブロードキャスト網ではLSAを残す

ブロードキャスト網のDesignated Routerは、接続ルーター一覧をNetwork-LSAに載せる。LSA全体を消すと、プレフィックスだけでなくSPFが必要とする疑似ノードの情報まで失われる。

そこでRFC 6860は255.255.255.255という特別なマスクを使う。DRは接続ルーター一覧を広告し続ける。対応済み受信者はトポロジー計算を通常どおり行うが、そのネットワークの経路はRIBに入れない。ブロードキャスト動作を模倣するNBMAも同じ扱いになる。

移行中には差が生じる。未対応ルーターはこの値を普通の/32と解釈し、DRのインターフェースアドレスへのホスト経路を入れることがある。対応済みルーターは何も入れない。標準は、サブネット全体より一つのアドレスだけが露出する方を限定的な互換結果として扱うが、RIBが一致するとは述べない。

同一LSDBを見たことは同一結果の証明ではない。各受信者の実装能力とRIBを記録して初めて、どこで何が隠れたかを言える。

OSPFv3の方が境界は明瞭だ

OSPFv3では、主要なRouter-LSAとNetwork-LSAからアドレス意味論が分離された。これらはトポロジーを表す。Link-LSAはリンクローカルな範囲でアドレスを関連付け、Intra-Area-Prefix-LSAがルーターやネットワークにプレフィックスを結び付ける。

プレフィックス抑制は、トポロジーLSAを維持し、該当するIntra-Area-Prefix-LSAの構成からトランジット用プレフィックスを省く。RFC 5838によるAddress Family対応でも、インスタンスごとに同じ分離を使える。

ただし、痕跡が全面的に消えるわけではない。Link-LSA、Router ID、ローカル設定、インターフェース状態は残る。アドレスは設定済みでも、OSPFドメインから到達不能になり得る。正確な報告は「指定した受信者の指定したOSPFインスタンス由来のRIB/FIBに、そのプレフィックスがなかった」と書く。

隠蔽は秘密保持ではない

RFC 6860のセキュリティ目的は、遠隔から経路制御できるコアのトランジット網を減らすことだ。アドレスを知っていても、途中のルーターに転送情報がなければ、通常の経路では届かない。

これは暗号化でも認証でもない。OSPFv2では、Router-LSAのLink Dataにインターフェースアドレスが残り、Network-LSAのLink State IDにDRアドレスが残り得る。直結ルーターにはconnected routeがある。静的経路、別プロトコル、トンネル、管理網が別の到達性を作ることもある。

よって「隠れた」には観測点が要る。どのルーターの、どの表から、いつ、どの経路源について消えたのか。別の経路源がFIBを埋めていないか。攻撃面を論じる入口からパケット確認をしたか。これらを欠くと、状態削減が過大な安全宣言へ変わる。

トランジット専用という判断を監査する

リンクアドレスは、ping、tracerouteの応答、直接管理、アラーム照合、自動化の対象に使われやすい。サービス用のパケットが通り続けても、障害解析だけが難しくなることがある。

非ゼロのForwarding AddressをAS-external-LSAやNSSA-LSAに載せるには、そのアドレスへの経路が必要だ。抑制対象インターフェースのアドレスをForwarding Addressとして残してはならない。抑制によって外部経路が最適でなくなる可能性もRFCは明記する。

OSPF仮想リンクの端点も、エリア内経路で到達できなければならない。抑制したインターフェースアドレスは端点に使えない。トポロジーの辺が残ることと、アドレスを前提にした制御機能が存続することは別である。

BGPピア、ACL、収集装置、運用スクリプトも棚卸し対象だ。「router同士しかいない」という図だけでは、そのアドレスが他の仕事をしていないと証明できない。

変更には二種類の受領証が要る

FRRoutingとCiscoの現行文書はprefix suppressionの制御を記載している。これは特定ソフトウェアの能力証明であり、本番での有効化や安全な結果の証明ではない。

継続性の受領証には、隣接、Type 1のトポロジー関係、SPF結果、通過すべきパケットを入れる。抑制の受領証には、省略されたType 3またはプレフィックス関連、特別マスク、各対応受信者のRIB/FIB不在、許容した旧実装の/32を入れる。

さらに、ソフトウェア版、設定範囲と例外、代替管理経路、Forwarding Addressと仮想リンクの検査、変更責任者、ロールバック条件を同じ識別子で結ぶ。経路総数の減少だけでは、精密な抑制と制御面障害を区別できない。

Álvaro Retanaをどこまで位置付けるか

2013年のRFC 6860はYi Yang、Álvaro Retana、Abhay Royの共著であり、より広い発明者・レビュー参加者も記録する。IETFの人物ページはRetanaの長い標準化活動を示すが、OSPF、ベンダー実装、運用ネットワークの所有権を与えるものではない。

確かな共著記録だけで十分に重要だ。この標準は、トポロジーとアドレス到達性を同じ事実として扱わず、最小限の共通信号だけを定めた。実装は能力を提供し、運用者は適用範囲を選び、running codeの証拠が結果を承認する。

最後に分けて残すべき文は五つある。リンクは存在する。OSPFはそれを使う。インターフェースにはアドレスがある。遠隔RIBはプレフィックスを持たない。必要な機能は動く。RFC 6860は、この五つが別々の真偽を持てることを示した。運用台帳の仕事は、それらを再び一つの緑表示に戻さないことだ。

情報源