要約

  • RFC 3489 は三つのBinding試験から六つの状況を分類したが、各回答はソケット、サーバー、宛先、アドレス領域、時刻に依存した。
  • RFC 5389 はマップドアドレスの観測を残し、NATタイプを到達性証明とは見なさなくなった。必要なのは実際のピアとの検査とリレーの退路だった。

2003年のRFC 3489は整った決定木を示した。試験Iは通常応答を求め、ローカルソケットとMAPPED-ADDRESSを比較する。試験IIは別のIPアドレスとポートからの応答を要求し、試験IIIはポートだけを変える。CHANGED-ADDRESSへの二度目の試験Iでマッピングを比べ、開放インターネット、対称UDPファイアウォール、四種類のNATに名前を付けた。

観測自体は虚偽ではない。問題はラベルの射程だった。一回の実験は一つのローカルソケット、一台のサーバーと代替アドレス、一台以上の変換器を通る一方向、一つのアドレス領域、一時点に属する。RFC自身も再試験では別のローカルアドレスかポートを使うよう求めた。前回作った状態が次の結果を無効にするからである。測定が測定対象を変えていた。

タイプは宛先も消した。STUNサーバーに対して安定したマッピングが、実際のピアでは変わり得る。フィルターは一つの送信元を許し、別の送信元を拒める。直列の複数NATは最も厳しく見える挙動に圧縮され、どの装置、規則、タイマーが判断したかは残らない。「NATタイプ」は関係を箱の属性へ変えた。

アドレス領域も結論を制限する。共通の上位領域にいないサーバーは、相手が使えないアドレスを報告し得る。同じNATの内側にいる二つのピアは外部マッピングで互いに到達できない場合がある。MAPPED-ADDRESSが証明するのは、この要求をこのサーバーがその送信元タプルとして見たことだけである。

バインディング寿命も推定だった。一方を維持し、他方を長く待たせて期限を測る。しかし過負荷は時間を動的に変え、別のバインディングは別の寿命を持ち、再起動は実験を壊す。得られた秒数はNATが発行した契約ではない。

暗号も証拠の範囲を広げなかった。共有秘密とメッセージ完全性は特定の応答を認証できても、サーバー相対の観測を別の宛先で真にできない。RFC 5389は、特定のトポロジーでは暗号だけで解けない誤ったマップドアドレス問題も記録した。証言の真正性と適用範囲は別の収入印紙だった。

RFC 5389の回顧は率直である。古典的STUNは完全な展開可能解として十分に動かなかった。学習したアドレスは使える時と使えない時があり、旧方式は判別も救済もできなかった。多くのNATは分類に収まらなかった。改訂は変更応答属性を基礎仕様から外し、STUNを完全解ではなく定義済み用途の道具へ戻した。

RFC 5780はマッピング挙動とフィルタリング挙動を分けた。RFC 8445のICEは候補を集め、実際の参加者間で候補ペアを検査してから経路を指名する。RFC 8656のTURNは直結できない場合にリレーを与える。運用上の問いは「何型か」から「今この二者でどのペアが通り、失敗時に何が残るか」へ変わった。

Heng Luの最小初期仕様という視点なら、共通部分は小さな観測道具でよく、サーバー、認証、時間、検査、退路は用途が選べる。現実層を分ければ、ソケット生成、STUN応答、観測アドレス、ピア検査、経路指名、パケット交換、アプリ成功を一つの成果に畳まない。

分類は証拠を要約できる。しかし証拠を生んだ条件より強くなってはならない。RFC 3489は箱に名前を付け、RFC 5389は経路へ判断を返した。

出典