4rd
4rd(IPv4 Residual Deployment)は、インターネットサービスプロバイダ(ISP)が顧客にIPv4接続環境を提供したままIPv6接続環境を整備するためのIPv6移行技術の1つ。プロトコルや実施例はRFC 7600 で規定されている。
特徴
[編集]4rdの特徴は以下3点挙げられる。
- メッシュトポロジー: 2つの端点の間でIPv4パケットがIPv6パケットと同じ経路を通る
- IPv4アドレスの共有: IPv4アドレスの枯渇に対応するため、1つのIPv4アドレスを複数の顧客で共有し、個々の顧客には利用するTCP/UDPポートの範囲を割り当てる(RFC 6346 に規定されるA+Pモデル)ことができる
- ステートレスな運用: IPv4とIPv6のパケット変換がステートレスである(変換装置が顧客ごとの通信状態を保持しておく必要がない)
同様の特徴を持つIETF策定の技術(MAP-EやMAP-T)と比較した場合、4rdは以下を同時に実現できる。
- IPv4フラグメントの完全な透過性: これによりPath MTU Discovery (RFC 4821)の機能が維持される。これが保たれないと、ファイアウォールがICMPパケットをフィルタしている場合(一般にフィルタしている)、Path MTU Discoveryを備えたシステムは大きなパケットサイズをサポートする経路の恩恵を得られなくなる。
- IPv6パケット検査をIPv4にそのまま適用可能: IPv6ネットワークを通過する際、IPv4パケットはそのまま通常のIPv6パケットに変換される[1]。したがってIPv6ネットワークで実施されているパケット操作(アクセス制御リスト、ディープ・パケット・インスペクションなど)はそのまま(暗黙的かつ自動的に)IPv4パケットにも適用される。
MAP-Eは前者のみ、MAP-Tは後者のみを実現できる。
ISPがIPv6ネットワークを介してIPv4サービスを提供するにあたり、全顧客にカスタマ構内設備(CPE)を提供するならば、ISPはMAP-E、MAP-T、4rdのいずれを選択することもできる。ただしMAP-EとMAP-Tが標準化過程にあるのに対し、4rdは少なくとも現状では「実験」段階にある点に留意が必要である。
原理
[編集]フラグメント透過性とパケット検査を両立させる鍵は、IPv6ネットワークへの出入りにあたり「可逆的パケット変換」を利用することである[1]。これが実現可能なのは、IPv6パケットのヘッダが大きく、必要とあればFragmentヘッダを使うこともできるため、IPv4ヘッダの有用な情報を全て埋め込むことができるためである。なお4rdはIPv4のIP層オプションには対応していないが、現状ではセキュリティ上の問題からIP層オプションがルータで除去されることが多く[2]、システムがIP層オプションを利用しないことが多いため、深刻な問題にはなりにくい。
4rdの仕様がMAP-EとMAP-Tより進んでいるもう1つの点は、断片化したIPv4データグラムの取り扱いである。MAP-EとMAP-Tの仕様では、ネットワーク入り口でデータグラムを再構成してから転送するという挙動のみが記述されている[3][4] 。ユーザが感知する性能を向上させ、ネットワーク入り口での処理量を減らし、攻撃機会を減らすために、4rdの仕様では断片化したデータグラムを再構成せずそのまま転送する挙動を含めている[5]。
歴史
[編集]4rdの初めの仕様では、現行のRFC 7600の仕様とは異なり、IPv4をIPv6パケットへカプセル化していた。これはIPv6ネットワークにIPv4通信を完全なまま通過させるための当時唯一知られていた方法である。これが、ステートレスなアドレスマッピングと、メッシュトポロジーと、A+Pモデルとを組み合わた初の提案であった。[6][7]
この3つ組によるアプローチでは、dIVIという仕様が続いて提案された[8]。これはカプセル化の代わりに、IPv4からIPv6とその逆をステートレスIP/ICMP変換(SIIT; RFC 2765)で行うものである。カプセル化と違って、IPv6のパケット検査を変換されたIPv4パケットに対して適用できる利点があったが、SIITの仕様上、IPv4フラグメントとの互換性がなかった。
この2つの提案のどちらか一方だけを標準として承認することはできないと思われた。そこで2つの方針が示された。
- 1つは、カプセル化をMAP-E、2重SIITをMAP-Tと改名し、この2つをMAPという規格にまとめるというもの[9]。個々のネットワークでどちらを利用するかの選択は必要であるとはいえ、1つの仕様に2つの変種があるのならば、1つの標準と見なせるだろうというアイデアである。しかしこの解釈について合意は成されなかった。
- もう1つは、アドレス変換アルゴリズムの改良によってフラグメント透過性とパケット検査は両立可能であるという発見に基づく。カプセル化による方法は4rdという略称を使わなくなったため、この方法が4rdと命名された[10]。原理は実際に検証されたものの、MAP-EとMAP-Tどちらの支持者からも興味を持たれなかった。
長い議論の末、Softwireワーキンググループは2012年8月にMAP-Eのみを標準化過程とし、4rdとMAP-Tは実験として検討を続けることを決定した[11]。しかし2014年12月に、Softwireワーキンググループは決定を覆し、MAP-Eと並行してMAP-Tも標準化過程とすることとした。したがって4rdのみが実験カテゴリに残ることになった。
実用例
[編集]フランスのISPであるFreeは2015年12月より人口密度が低い地域でのFTTH実験のために4rdを実用している。[12]
参考文献
[編集]- ^ a b “Reversible Packet Translations at Domain Entries and Exits”. 2018年1月31日閲覧。
- ^ “Design Trade-Offs - in RFC 6192”. 2018年1月31日閲覧。
- ^ “Receiving IPv4 Fragments on the MAP domain borders (MAP-E case )”. 2018年1月31日閲覧。
- ^ “Receiving IPv4 Fragments on the MAP domain borders (MAP-T case)”. 2018年1月31日閲覧。
- ^ “Ports of Fragments Addressed to Shared-Address CEs (4rd case)”. 2018年1月31日閲覧。
- ^ “Public IPv4 addresses and IPv4E prefixes across IPv6-only Domains 4rd”. 2018年1月31日閲覧。
- ^ “IPv4 Residual Deployment across IPv6-Service networks (4rd) ISP-NAT's made optional”. 2018年1月31日閲覧。
- ^ “draft-xli-behave-divi-02”. 2018年1月31日閲覧。
- ^ “draft-ietf-softwire-map-00”. 2018年1月31日閲覧。
- ^ “draft-ietf-softwire-map-00”. 2018年1月31日閲覧。
- ^ “IETF-84 - Softwire WG - Meeting minutes”. 2018年1月31日閲覧。
- ^ “Free peut attribuer la même adresse IP à plusieurs abonnés” (French). Numerama (15 February 2016). 29 February 2016閲覧。