「IPv4と完全下位互換の「IPv8」ドラフト公開。IPv6は事実上失敗」という記事が話題になっていた。「IPv6は事実上失敗」は「IPv6の課題を克服」に書き直されたわけだが、IPv6に対する漠然とした失敗感を世間は感じているようだ。
実際にはIPv6はハードウェアとソフトウェアの面でほとんど準備完了しているし、既に多くのサービスで利用されていて、一般消費者の皆様も実際に使っている。IPv8が出てきたとしても、拡張されたネットワークアドレスを使うにはハードウェア(もしくはファームウェア)と(その他の)ソフトウェアの対応が必要で、IPv6が積み上げてきた30年間の普及の差を、急いで詰めないといけない。
1. ハードウェアとソフトウェアは準備完了
現在ではネットワーク機器、OS、(プログラミング言語を含む)ミドルウェアはIPv6対応。199○年にJavaで書いたチャットアプリがソースコードの修正なしにIPv6対応になる*1。主要ブラウザーもIPv6対応だ。IPv6の方を優先して使う。標準インストールのOSで標準インストールのウェブサーバーを動かしたら、IPv6でも接続できる。
インターネットサービスプロバイダー(ISP)のIPv6対応も一般的になった。データセンターの多くもIPv6でサービスをしている。コンテンツ配信ネットワーク(CDN)がIPv6対応なので、ウェブサーバーの設定はIPv4のみなのにIPv6で配信しているサービスもある*2。
2. IPv6対応/移行作業はもう容易
もちろん、対応作業はある。コピペ作業だが、長々としたホスト名をDNSに登録する必要はある。ルーターのNATの設定は、より簡単にパススルー(ブリッジ)の設定になる。サーバーソフトウェアの設定ファイルの0.0.0.0を[::]に、192.168.0.1:80をhttps://[2001:db8::1]:80に書き換える必要がある場合もある。しかし、それぐらいだ。
構内LANのIPv6化は規模が大きいとルーティングプロトコルの変更などが要るが、そういうところは総務省の勧めもあってIPv6化を済ましているところが多い。IPv6の方が転送効率がよく、プライベートIPアドレス重複問題が起きないため、ネットワークエンジニアからの圧も強かった。
AWSなどのクラウドサービス(IaaS)でコンテンツ配信しているサイトのIPv6対応にするのも難しくはない。クラウドサービスはIPv6に対応している。サーバーなどのミドルウェアはIPv6に対応済みであるし、主要な不正侵入検知/防止やログ解析ツールもIPv6アドレスに対応済みだ。対応ガイドもIPv4のみからデュアルスタックに移行した体験談もあるので、作業の見通しも悪くない。
3. 終末期を迎えつつあるIPv4
一方、IPv4は地味につながらなくなりつつある。IPアドレス枯渇問題に対処する技術はあるのだが、それがIPv4の扱いを難しくしている。
例えばMAP-Eと言うIPv6ネットワークでIPv4パケットを搬送しているインターネットサービスプロバイダー(ISP)も多いのだが、MAP-EはIPv4を使うすべてのアプリケーションをサポートしない。例えばMAP-Eでは、IPv4用のVPN、IPv4用のP2P対戦ゲームが機能しない。UPnPを用いる古いIPv4アプリケーションも機能しない。Yahoo!メッセンジャーもMSNメッセンジャーもSkypeも逝ってしまったので、気に留めている人はいないと思うが。IPv4用VPNプロトコルのPPTPもL2TPもディスコンになった*3。
4. あの技術的障害は15年以上昔の話
Yahoo!JapanやGitHubなど大手サイトでIPv4のみの対応のところもある*4。競合他社はサポートしておりGitHubの方の理由は定かではないが、Yahoo!Japanの方は、15年ぐらい前にはあったIPv6閉域網問題*5やNTT NGN IPv6マルチプレフィックス問題*6などが理由だと説明されている*7。
どちらもIPv6閉域網を通してインターネット接続を行うユーザーの一部に生じた問題で、必ずIPv6での通信が失敗してIPv4への通信に切り替えることになるため、接続に時間がかかるという現象が発生した。ユーザーとISPの間をつなぐ回線業者(i.e. NTT)のネットワーク構成が根本原因で、ウェブサーバー側で問題を回避するにはIPv6の提供をやめるしかない。
しかしこれらもISPへの接続プロトコルがIPoEになるなどして解消された。また、イマドキのOSはHappy Eyeballs(RFC6555)を実装しており、IPv4とIPv6それぞれで通信をはじめ、応答がよい方を選択するようになっており、OSレベルでも上述のIPv6フォールバック問題は顕在化しづらくなっている。
5. まとめ
IPv6はジリジリと普及してきた。実際、閉域IP網まで考えると4000万世帯ぐらいは間接的に利用している。IPv4とIPv6の両対応サイトへのアクセスのほぼ半数が、IPv6利用だ。
現在、トラヒックの過半は主にIPv4を利用しているが、彼らが利用しているハードウェアやソフトウェアもほぼIPv6対応なので、IPv4が無くなってもIPv6に移行するのは困難ではない。再来月から世界のPCやスマホ向けのサーバーでIPv4による配信が禁止になってIPv6が義務になってもほとんど問題は生じない。IPv6閉域網問題の回避のために未だにIPv6をオフにしているユーザーはちょっと悩むかも知れないが、ハードウェア的にもソフトウェア的にもReady to goだ。実装と普及に30年かかっているが、それによってIPv6非対応機器がほとんど無くなっている。そんなに悪い話ではない。
*1数字とドット以外をIPアドレスとして認めない設計になっていない限りは、対応作業が要らない。アプリケーションのソースコードでは、IPv4でもIPv6でもSocket socket = new Socket("www.example.com", 80)で接続できる。www.example.comはIPv4アドレスに置き換えても、IPv6アドレスに置き換えてもよい。
*22019年のAbemaTVがIPv6での配信を開始したときの記事に「オリジンへのアクセスはIPv4のままなので、一部のログ処理の対応などを除き、オリジン側では大きな変更は発生しませんでした」とある(INTERNET Watch)。
*3PPTP/L2TPプロトコルは非推奨に ~将来バージョンのWindows Serverで削除へ - 窓の杜
*4GitHub PagesはIPv6に対応しているのだが、主要サービスのGitHubのメインページやgitサーバーはIPv4のみである。
*5NTT IPv6閉域網フォールバック問題:Geekなぺーじ
*6[Q12]「IPv6マルチプレフィックス問題」とは何ですか | 日経クロステック(xTECH)
*7ヤフーのIPv6への取り組み Continue: 現状のIPv6における利用の問題 - Yahoo! JAPAN Tech Blog


0 コメント:
コメントを投稿