要約

  • 2019年11月4日に公表されたDraft 1は、AFRINICの記録上「未割り当て」である空間を、AFRINICが発行するAS0 ROAで表現することを提案した。確認できるのは提案の公表であり、採択、実装、本番発行、経路への影響ではない。
  • 正しい未割り当て情報に基づくAS0は、普通の起点が想定されないことを認証付きで示し、各ネットワークが別々の手作業リストに頼る負担を減らしうる。この善意かつ実務的な目的は、批判より先に評価されるべきである。
  • ROAはBGP経路を自動的に消さない。検証結果は運用者のローカル方針への入力であり、拒否、優先度低下、監視、あるいは何もしないという選択は各運用者に残る。そのため影響は一様ではない。
  • 危険は、私的な台帳の誤分類が、署名付きオブジェクトと依拠者の判断を経て、分散した接続性の問題へ増幅されることにある。正当な状態変更より撤回が遅れれば、正しい起点でもInvalidになりうる。
  • 必要な境界は、対象範囲の厳密化、根拠となる状態の可視化、発行前の衝突検査、変更履歴、正当な利用への移行に先立つ撤回、緊急訂正、独立した観測、そして運用者自身の選択である。
  • AFRINICの役割は、正確な技術台帳を保ち、限定されたセキュリティ信号を発行し、自らの誤りを訂正することに尽きる。暗号署名は、主権、規制権、処罰権、財産判断、司法判断を生み出さない。

一つの台帳語を、経路の警告へ変える

Draft 1が提示した制度的な一歩は小さく見える。「未割り当て」という台帳上の状態を、RPKIで検証できるAS0 ROAへ写す。それだけである。しかし、インターネットの運用では、この写像が持つ意味は小さくない。台帳の一語は、通常ならレジストリの内部または照会画面にとどまる。署名され、公開され、検証者に取得されると、その一語は多数のネットワークが機械的に参照できる経路起点検証の入力になる。

AS0は普通の経路起点として用いるAS番号ではない。AS0を指定したROAは、対象プレフィックスとその許容範囲について、通常のルータブルなASが起点になることを認める肯定的な委任ではなく、「普通の起点を想定していない」という否定的な表明として機能する。観測された起点と長さを認める別の被覆ROAがなければ、その経路広告はInvalidと分類されうる。この仕組みが、未割り当て空間から現れる疑わしい広告を見つける警告として役立つ理由である。

ここで重要なのは、暗号が保証するものと、保証しないものを分けることだ。暗号的な検証は、ある証明書チェーンのもとでオブジェクトが署名され、改変されずに取得されたことを確かめる。それは、元になったレジストリ分類が現実と一致していることまで保証しない。未割り当てという入力が誤りなら、正しく署名されたAS0 ROAは「真正に発行された誤った表明」になりうる。署名の強さは、入力データの正しさを代替しない。むしろ依拠しやすさを高める分だけ、入力の質と訂正設計を重くする。

2019年11月4日という日付は、このために意味を持つ。確認できる制度的行為は、最初の提案の公表である。公表によって、未割り当て記録、署名、配布、検証、運用者判断をつなぐ構想が検討対象になった。しかし公表だけから、コミュニティの合意、正式採択、理事会による追認、実装、本番でのAS0発行、特定経路への影響を導くことはできない。後のDraft 2、Draft 3の存在も、Draft 1の内容や成否を遡って証明しない。本稿が扱うのは、最初の公表が開いた設計問題であり、後年の決定や運用実績ではない。

まず、最も強い善意の説明を置く

批判の出発点は、この提案が向き合った問題を矮小化しないことである。本当に未割り当てであるアドレス空間から、普通のASを起点とする経路が現れたなら、運用者には調査に値する兆候である。各ネットワークが独自に未割り当て一覧を集め、更新時刻も出所も異なるファイルを保守するより、割り当て状態を記録するレジストリが、既存のRPKI検証系を通じて限定的な信号を出す方が整合的になりうる。

この利点は三つに分けられる。第一に、出所である。署名により、運用者は少なくとも誰の証明書チェーンから表明が出たかを検証できる。第二に、形式である。肯定的なROAと同じ検証系の中で扱えるため、別種の未認証リストを新たに配るより運用上の統合がしやすい。第三に、更新の集中である。未割り当て状態を管理するサービスと否定的な信号の生成が正確に連動すれば、個々のネットワークがそれぞれ古い一覧を抱える危険を減らしうる。

したがって、AS0という着想を「検閲」や「没収」の別名として退けるのは正確でない。AS0 ROAは法的な禁止命令ではなく、資源を奪う行為でもなく、それ自体でルータから経路を削除する命令でもない。真に未割り当ての空間について、普通の起点を予期しないという技術的な表明を行うことには、経路セキュリティ上の合理性がある。AFRINICは、対象となる割り当て状態を記録する技術サービスとして、その狭い信号を発行する候補になりうる。

しかし、この最善の説明を受け入れることと、発行者に広い裁量を認めることは別である。信号の有用性は、台帳状態が正確で、範囲が厳密で、変更時に確実に撤回できる限りで成立する。言い換えれば、善意の目的は制約を弱める理由ではない。依拠する価値のある警告にするため、制約を強める理由である。

「Invalid」は判決ではない

経路起点検証の結果と、経路選択の結果を混同すると、AS0の影響を過大にも過小にも描いてしまう。RPKIの検証状態は、経路についての構造化された情報であり、運用者が自らの方針に取り込む入力である。ROAが経路を直接削除するわけではない。あるネットワークはInvalidを拒否するかもしれず、別のネットワークは優先度を下げるかもしれない。さらに別のネットワークは警告と調査のためだけに使い、経路選択を変えないかもしれない。

この運用者選択は、責任逃れの但し書きではなく、仕組みの本体である。各ネットワークは顧客との契約、可用性、セキュリティ、トランジット関係、設備投資について自ら結果を引き受ける。そのため、発行者が「Invalid」を作りうる情報を提供しても、それをどの程度強く使うかを決める主体はネットワーク自身でなければならない。発行者が検証状態を法的な正当性、所有権、善悪の判定へ読み替える余地はない。

同時に、「最後は運用者が決める」と言うだけでは、発行者の責任は消えない。多くの運用者が署名付き情報を信頼し、その一部が強い方針を採用すれば、誤ったオブジェクトは現実の到達性に影響しうる。効果が分散し、各所の設定に依存するからこそ、単一の停止ボタンで元に戻せるとは限らない。発行者は、自らの表明がどのような判断連鎖へ入るかを予見し、誤りを局所化し、訂正を観測可能にする責任を負う。

発行より先に考えるべき撤回

肯定的なセキュリティ表明でも更新は重要だが、否定的な表明では撤回の順序がとりわけ重要になる。AS0 ROAが「普通の起点は想定されない」と表すなら、対象空間が正当に利用される状態へ変わる前に、その否定的な表明が依拠者の視界から適切に消える必要がある。台帳上の割り当て操作だけが先に完了し、AS0オブジェクトの撤回やリポジトリへの反映が遅れれば、新しい正当な状態と古い否定信号が同時に存在する窓が生まれる。

この時間的な不整合は、単なる事務上の遅延ではない。正当な起点が経路を広告し、運用者側の検証系にはなおAS0が見えているなら、経路はInvalidになりうる。強いローカル方針を採るネットワークでは拒否や優先度低下につながり、監視中心のネットワークでは警告が増える。影響は均一ではなくても、原因は同じである。台帳の状態遷移と署名付き公開物の状態遷移が同期していない。

だからDraft 1の本当の設計対象は、「どの未割り当て空間に発行するか」だけではない。「発行してよい状態をどう証明し、その状態が変わる前に、どう撤回完了を確認するか」である。新しい利用が正当になる瞬間を基準に考えれば、撤回は後処理ではない。割り当てや再利用を安全に完了するための前提条件である。発行の自動化が速くても、撤回の確実性が低ければ、システム全体は安全にならない。