Submit Search
IPv6 application_and_v4kokatsu-tf
2 likes
2,198 views
Ruri Hiromi
2012-03-16 Open Source Conference Tokyo
Technology
Read more
1 of 73
Download now
Downloaded 25 times
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
More Related Content
PPTX
20120120 hiroshima i_pv6_application
Ruri Hiromi
PDF
IPv6 最新動向 〜世界共通語で最適化が進むインターネット〜
Akira Nakagawa
PDF
20190705 QUNOG14-kumamoto
Akira Nakagawa
PDF
CEDEC-Net 2015 テクニカルレビュー
Yuya Rin
PDF
IPv4/IPv6 移行・共存技術の動向
Yuya Rin
PPTX
545人のインフラを支えたNOCチーム!
Masayuki Kobayashi
PPTX
20120516 v6opsf-ngn final
Ruri Hiromi
PDF
IPv6移行の現状 〜 宅内端末から見た IPv6 と IPv4〜
Akira Nakagawa
20120120 hiroshima i_pv6_application
Ruri Hiromi
IPv6 最新動向 〜世界共通語で最適化が進むインターネット〜
Akira Nakagawa
20190705 QUNOG14-kumamoto
Akira Nakagawa
CEDEC-Net 2015 テクニカルレビュー
Yuya Rin
IPv4/IPv6 移行・共存技術の動向
Yuya Rin
545人のインフラを支えたNOCチーム!
Masayuki Kobayashi
20120516 v6opsf-ngn final
Ruri Hiromi
IPv6移行の現状 〜 宅内端末から見た IPv6 と IPv4〜
Akira Nakagawa
What's hot
(20)
PDF
192.0.0.4 on android
@ otsuka752
PDF
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応
v6app
PDF
Internet Week 2018 知っておくべきIPv6とセキュリティの話
Akira Nakagawa
PPTX
Lagopus workshop@Internet weekのそば
Yoshihiro Nakajima
PDF
さくらのVPS で IPv4 over IPv6ルータの構築
Tomocha Potter
PDF
IW2015セッション総括 ! IPv6関連3セッション
Akira Nakagawa
PDF
SRv6 study
Hiro Mura
PDF
"SRv6の現状と展望" ENOG53@上越
Kentaro Ebisawa
KEY
MAP 実装してみた
Masakazu Asama
PDF
LoRaWAN AS923 と ARIB STD-T108
Shoichi Sakane
PDF
DS-LiteをFreeBSDで使う
Satoshi Togawa
PDF
ASAMAP Update
Masakazu Asama
PDF
LoRaWAN v1.1仕様読解 Class A
Ryosuke Uematsu
PDF
IPv6時代のWebアプリケーション&プラットフォーム 2014
v6app
PDF
BGP Unnumbered で遊んでみた
akira6592
PDF
SRv6 Network Programmability - Dis-aggregation and Re-aggregation of Network ...
Miya Kohno
PDF
大規模DCのネットワークデザイン
Masayuki Kobayashi
PPTX
IPv6 Application
Ruri Hiromi
PDF
ジョークRFC紹介
miki koganei
PDF
Lorawan for agriculture, haccp hazard analysis and critical control point
Elias Hasnat
192.0.0.4 on android
@ otsuka752
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応
v6app
Internet Week 2018 知っておくべきIPv6とセキュリティの話
Akira Nakagawa
Lagopus workshop@Internet weekのそば
Yoshihiro Nakajima
さくらのVPS で IPv4 over IPv6ルータの構築
Tomocha Potter
IW2015セッション総括 ! IPv6関連3セッション
Akira Nakagawa
SRv6 study
Hiro Mura
"SRv6の現状と展望" ENOG53@上越
Kentaro Ebisawa
MAP 実装してみた
Masakazu Asama
LoRaWAN AS923 と ARIB STD-T108
Shoichi Sakane
DS-LiteをFreeBSDで使う
Satoshi Togawa
ASAMAP Update
Masakazu Asama
LoRaWAN v1.1仕様読解 Class A
Ryosuke Uematsu
IPv6時代のWebアプリケーション&プラットフォーム 2014
v6app
BGP Unnumbered で遊んでみた
akira6592
SRv6 Network Programmability - Dis-aggregation and Re-aggregation of Network ...
Miya Kohno
大規模DCのネットワークデザイン
Masayuki Kobayashi
IPv6 Application
Ruri Hiromi
ジョークRFC紹介
miki koganei
Lorawan for agriculture, haccp hazard analysis and critical control point
Elias Hasnat
Ad
Similar to IPv6 application_and_v4kokatsu-tf
(20)
PDF
Lightweight Language Diverプレゼン資料:アプリケーションのIPv6対応のススメ(LL編)
v6app
PPT
IPv6標準化と実装
Shinsuke SUZUKI
PDF
I Pv6 Service Deployment Guideline
guestfcd0535
PPT
IPv6 Update
Shinsuke SUZUKI
PDF
進化するIX
Yoshiki Ishida
PDF
2011/08/27 第3回 静岡 IT Pro勉強会 インフラ部 LT
Tatsuya Ueda
PDF
PHPで使うIPv6の実際
Tetsuji Koyama
PDF
結局IPv6ってどうなん?(序)
nemumu
PDF
これからのアプリ開発はIPv6対応で行こう!(2014/09/20 OSC Hiroshima版)
v6app
PDF
20141023 IPv6 Summit in FUKUOKA 2014 IPv6対応Webサービスの作り方
v6app
PPT
IPv6技術標準化の最新動向
Shinsuke SUZUKI
PPT
IPv6標準化の最新動向
Shinsuke SUZUKI
PPTX
ION Tokyo Panel - IPv6 in Asia Pacific: Untangling the Web, Kaname Nishikuza
Deploy360 Programme (Internet Society)
PDF
ストレージ管理者が今、押さえておくべきネットワーク基本の「キ」 ~必要なのは性能とシンプルさ。その極意とは?~
Brocade
PDF
ISPネットワーク運用で覗いてるもの
Taiji Tsuchiya
PDF
IPv6って何?(拡張ヘッダ編)
nemumu
PDF
IPv6 アプリケーション開発入門
v6app
PDF
Lagopus Project (Open Source Conference)
Tomoya Hibi
PDF
IPv4 Address Exhaustion
Takashi Ohmoto
PDF
IX事業者とインターネットの未来
Yoshiki Ishida
Lightweight Language Diverプレゼン資料:アプリケーションのIPv6対応のススメ(LL編)
v6app
IPv6標準化と実装
Shinsuke SUZUKI
I Pv6 Service Deployment Guideline
guestfcd0535
IPv6 Update
Shinsuke SUZUKI
進化するIX
Yoshiki Ishida
2011/08/27 第3回 静岡 IT Pro勉強会 インフラ部 LT
Tatsuya Ueda
PHPで使うIPv6の実際
Tetsuji Koyama
結局IPv6ってどうなん?(序)
nemumu
これからのアプリ開発はIPv6対応で行こう!(2014/09/20 OSC Hiroshima版)
v6app
20141023 IPv6 Summit in FUKUOKA 2014 IPv6対応Webサービスの作り方
v6app
IPv6技術標準化の最新動向
Shinsuke SUZUKI
IPv6標準化の最新動向
Shinsuke SUZUKI
ION Tokyo Panel - IPv6 in Asia Pacific: Untangling the Web, Kaname Nishikuza
Deploy360 Programme (Internet Society)
ストレージ管理者が今、押さえておくべきネットワーク基本の「キ」 ~必要なのは性能とシンプルさ。その極意とは?~
Brocade
ISPネットワーク運用で覗いてるもの
Taiji Tsuchiya
IPv6って何?(拡張ヘッダ編)
nemumu
IPv6 アプリケーション開発入門
v6app
Lagopus Project (Open Source Conference)
Tomoya Hibi
IPv4 Address Exhaustion
Takashi Ohmoto
IX事業者とインターネットの未来
Yoshiki Ishida
Ad
IPv6 application_and_v4kokatsu-tf
1.
IPv4依存のアプリケーションの問題点と
IPv6対応のためのポイント & IPv4アドレス枯渇対応タスクフォース紹介 Open Source Conference Tokyo 2012(2012-03-16) 先端技術研究所 廣海緑里 Copyright © 2012 INTEC Inc.
2.
目次 1. 多様化するインターネット 2. IPv4枯渇対応やIPv6導入の留意点 3.
IPv6導入の前提とフォールバックのメカニズム 4. アプリケーション開発のIPv6対応 5. まとめ 6. IPv4アドレス枯渇対応タスクフォースの紹介 Copyright © 2012 INTEC Inc. All Rights Reserved. 1
3.
1.多様化するインターネット Copyright © 2012
INTEC Inc. All Rights Reserved. 2
4.
理想と現実 • 理想
– 通信レイヤのコンポーネントが変わってもアプリケーショ ンに影響しない(レイヤ独立性) • 現実 – 下位互換性がないIPレイヤの新バージョン投入で、アプリ ケーションの動作に影響がでる • 動かない(無視して動いているふりをする) • エラーになる • 挙動が安定しない不安定になる、など 試練と思わず、新しいチャレンジ(新しいインターネットを作る) と思って前向きに取り組みましょう Copyright © 2012 INTEC Inc. All Rights Reserved. 3
5.
IPアドレスとアプリケーションの関係 ネットワークを利用するアプリケーションには、IPアドレスを扱うコードが 潜んでいます
ネットワークとの関係 代表例 1 アプリケーションから直接ネットワー Webブラウザ、Webサービス、 クにアクセスするもの skypeなどのコミュニケーション ツール 2 アプリケーションとは独立にアクセス セキュリティ対策ソフト するが、両立していないと動作しない もの 3 アプリケーションとは完全に独立で 文書作成ソフトの公開テンプレート ネットワークにアクセスし、アプリ ソフトウェアアップデート ケーションの動作にも影響しないもの 4 ネットワークとは完全に無関係なもの 人事管理ソフト、名刺ソフト 途中で分類が変わることもある。インターネットが普及、拡大 すると(1)に近づく傾向 Copyright © 2012 INTEC Inc. All Rights Reserved. 4
6.
IPプロトコルのバージョンアップは必要か? 2011年2月3日にIPv4アドレスの世界在庫が枯渇
2011年4月15日にアジア太平洋の在庫が枯渇 それに伴い日本で新規のIPv4アドレスの割振りも終了 インターネット全体の拡張、進展のためには必要 ただし、個々のネットワークにおいては接続範囲で取捨選択となる Copyright © 2012 INTEC Inc. All Rights Reserved. 5
7.
IPv4アドレス枯渇状況 日本のIPv4アドレスは事業者が持つアドレスのみ アドレスが不足している事業者はアドレス移転を開始
日付 状況 2011年2月 3日 世界在庫(IANA)が枯渇 2011年4月15日 アジア太平洋地域在庫が枯渇 日本のIPv4アドレスは事業者が持つアドレスのみ 2011年8月22日 JPNIC IPv4アドレス移転開始(USEN→So-net) ~ 計12社が移転手続き実施、/24で1064個分相当 2012年1月10日 (1/10現在) IANA 2011年2月3日に枯渇 地域レジスト RIPE ARIN APNIC LACNIC AfriNIC リ(RIR) NCC 国別レジスト リ(NIR) NIR JPNIC 2011年4月15日に枯渇 事業者 Copyright © 2012 INTEC Inc. All Rights Reserved. 6
8.
アドレス枯渇対策と問題(1/4)
根本的な解決は、IPv6導入であり、導入が推進されています i. IPv4アドレスを回収・再利用する • JPNICなどのレジストリは回収の努力は続けているがほぼ限界 • アドレス取引はJPNICでは、2011/8/1から移転申請手続きの受付を開始 • 一時的な解とはなりうるが、今後の需要をすべてまかなえない • アドレスの使用歴は不明であり、ブロックされている可能性がある ii. IPv4アドレスを節約する(プロバイダの中にキャリアグレードNATを導入) • キャリアグレードNAT(CGN)の配備が必要 • 暫定的なつなぎの解としては有効 • NATの多段化による技術的な問題あり セキュリティ、動作しないアプリケーション、スケーラビリティ iii. IPv6を導入する • システム全体を対応する必要がある(アプリのIPv6対応を含む) • 切り替えではなく、IPv4・IPv6混在環境となる • アドレス量は莫大であり、一度移行すれば長期的には最も有望 Copyright © 2012 INTEC Inc. All Rights Reserved. 7
9.
アドレス枯渇対策と問題(2/4) i.
IPv4アドレスを回収・再利用する • JPNICなどのレジストリは回収の努力は続けているがほぼ限界 • アドレス取引はJPNICでは、2011/8/1から移転申請手続きの受付を開始 • 一時的な解とはなりうるが、今後の需要をすべてまかなえない • アドレスの使用歴は不明であり、ブロックされている可能性がある ii. IPv4アドレスを節約する(プロバイダの中にキャリアグレードNATを導入) • 日米などでアドレスの市場取引へ • キャリアグレードNAT(CGN)の配備が必要 • IPアドレスが高値安定か低値安定かは現状では予測不能 • $11.25/IPアドレス • 暫定的なつなぎの解としては有効 Nortel selling Internet addresses to Microsoft for $7.5 million • NATの多段化による技術的な問題あり http://www.totaltele.com/view.aspx?ID=463504&mail=478&C=0 セキュリティ、動作しないアプリケーション、スケーラビリティ • トレードサイト iii. IPv6を導入する • http://tradeipv4.com/ • http://www.ipiten.jp/ • システム全体を対応する必要がある(アプリのIPv6対応を含む) • 問題点も /15 2 • 切り替えではなく、IPv4・IPv6混在環境となる • IPアドレスのクレンジング /16 4 /17 2 • アドレス量は莫大であり、一度移行すれば長期的には最も有望 • 断片化によるさらなる経路数増加 /18 1 /19 6 8/22~1/10に移転された空間量 → /20 8 /21 6 (/24で1064個分に相当) /22 6 Copyright © 2012 INTEC Inc. All Rights Reserved. 8
10.
アドレス枯渇対策と問題(3/4) • 携帯電話系にCGN導入 i.
IPv4アドレスを回収・再利用する • アプリケーションなどへの影響の少ない箇所から • JPNICなどのレジストリは回収の努力は続けているがほぼ限界 • NTTドコモ,KDDI,イーアクセスのスマートフォン • アドレス取引はJPNICでは、2011/8/1から移転申請手続きの受付を開始 • 既存ISPでは導入進まず • 一時的な解とはなりうるが、今後の需要をすべてまかなえない • 管理運用コストが増大、しかしサービスのデグレードになってしまう • アドレスの使用歴は不明であり、ブロックされている可能性がある ii. IPv4アドレスを節約する(プロバイダの中にキャリアグレードNATを導入) • キャリアグレードNAT(CGN)の配備が必要 • 暫定的なつなぎの解としては有効 • NATの多段化による技術的な問題あり セキュリティ、動作しないアプリケーション、スケーラビリティ iii. IPv6を導入する • システム全体を対応する必要がある(アプリのIPv6対応を含む) • 切り替えではなく、IPv4・IPv6混在環境となる 端末に付与されるIPアドレスはグ • アドレス量は莫大であり、一度移行すれば長期的には最も有望 ローバルアドレスとなっておりま すが、2011年8月以降順次、プラ イベートアドレス (注2) へ切り替 えます。 Copyright © 2012 INTEC Inc. All Rights Reserved. 9
11.
アドレス枯渇対策と問題(4/4)
• IPv6 by default – クライアントPCなどはすでにそうなっている – ケータイなどもそうなっていく – クラウドへのデータ転送等必要なところでの利用が進む • ネットワーク=IPの時代に突入 IPv4アドレスを回収・再利用する – 独自プロトコルだったところ(BACnet,全銀手順など)もIP対応済み • JPNICなどのレジストリは回収の努力は続けているがほぼ限界 Control And – 2011年11月にイリノイ州でSCADA(Supervisory • Data Acquisition)もIP対応されていた事がアタックで露呈 アドレス取引はJPNICでは、2011/8/1から移転申請手続きの受付を開始 • • スマート* 一時的な解とはなりうるが、今後の需要をすべてまかなえない • – スマートグリッド アドレスの使用歴は不明であり、ブロックされている可能性がある – スマートハウス IPv4アドレスを節約する(プロバイダの中にキャリアグレードNATを導入) – スマートコミュニティ • キャリアグレードNAT(CGN、LSN)の配備が必要 – スマートモビリティ • 暫定的なつなぎの解としては有効 – 今までIP使っていなかった分野での利用拡大へ • NATの多段化による技術的な問題あり – 新しい分野ではスタートからIPv6という仕様も多くある セキュリティ、動作しないアプリケーション、スケーラビリティ IPv6を導入する • システム全体を対応する必要がある(アプリのIPv6対応を含む) • 切り替えではなく、IPv4・IPv6混在環境となる • アドレス量は莫大であり、一度移行すれば長期的には最も有望 Copyright © 2012 INTEC Inc. All Rights Reserved. 10
12.
アドレス枯渇はどういう意味をもつ? ネットワークにとって • 今までの“インターネット”が動作しなくなるわけではない • IPv4でインターネットの拡張ができなくなる
– 世界人口70億 インターネット人口は20億 – 現在はPCネットワーク 将来はモノ・センサーネットワーク – スマートフォンにはIPアドレス付与が原則 • IPv6とのつきあい方を考える時期に入る – IPv6が導入されたネットワークとどうつなぐか アプリケーションやサーバにとって • 移行技術(CGN(NAT444)やNAT46/64,DNS46/64)を考慮しなけ ればいけない • IPv6の必要性を加味しなければいけない • IPv6対応が必要な場合は、既存資産をIPv4依存から脱却させなけれ ばいけない Copyright © 2012 INTEC Inc. All Rights Reserved. 11
13.
今後のインターネット予想 IPv4・IPv6ネットワーク・CGNの混在ネットワーク
IPv4 IPv4・IPv6 CGN IPv6 4G 6G 6G 4G IPv4 IPv4・IPv6混在 IPv6 ネット ネット ネット CGN 4G 4G 現在 4P 4P 6G 4P 6G 4P 6G 4G IPv4グローバル 4P IPv4プライベート 6G IPv6グローバル Copyright © 2012 INTEC Inc. All Rights Reserved. 12
14.
IPv6への移行の今後
日本のIPv4->IPv6マイグレーション予想 2009 2011 2013-2014 20?? IPv4のピーク到来 既存ユーザにおいて も、IPv6が使えるよ IPv4のみ うになってくる 暫定解のCGN が縮退し、 IPv4・IPv6混在 IPv6が主流に (時期不明) 2011年 枯渇対応サービス CGN の提供開始 IPv6前提のネットサービス増加 (Windows Azure Connect, SAP NetWeaver, AkamaiDynamic IPv6のみ Site Accelerator+GREE) IPv6のみのISPサービスが出現 スマートフォン、 ECサイト、オンラ 海外取り引き、 企業間取引など の取り込みなど インゲーム、コ グローバルな情報 ミュニティなど 発信など インターネット 中国・インドでは、 中国 普及途上 IPv4のみでは、構 IPv6のみの インド 今後の需要増加 築困難 ISPサービスが 日本より早めに出現!? Copyright © 2012 INTEC Inc. All Rights Reserved. 13
15.
IPv6導入について今後の見通し • IPv6が導入されると…
– IPv4との共存期に入る。(長期間続く見込み) – IPv4とIPv6の互換性はなく、共存を意識したプログ ラムが必要となる。 – 既存のプログラムの多くは、IPv4環境を前提としてい るので動かなくなる可能性がある。 IPv4とIPv6が共存するシステム構築、プログラム 開発が求められる 既存の改修が必要かどうかの診断の需要が高まる Copyright © 2012 INTEC Inc. All Rights Reserved. 14
16.
IPv6導入状況(1) メインプレイヤーのシフト(通信インフラ側からサービスサイト側へ) アクセス事業者
政府・監督省庁 教育、セミナー NI 官公庁・自治体 ISP 人材派遣 SI 大学・研究機関 DC事業者 コンサルティング 一般企業 ハードウェア 基盤技術から、ビジネス ・利用 ベンダー ソフトウェア 利用のための技術開発へ ・商業展開 ベンダー 支援 支援 ・インフラ提供 ・環境整備 今 IPv6導入のための基盤 IPv6技術ノウハ 環境構築 IPv6技術 ウ蓄積 IPv6技術利用 普及 拡大 Copyright © 2012 INTEC Inc. All Rights Reserved. 15
17.
1.4.2. IPv6導入状況(2)
メインプレイヤーのシフト(通信インフラ側からサービスサイト側へ) アクセス回線、ISP、CATV、携帯電話 • 2011年4月から7月にかけてコンシューマ向けの本格的なIPv6対応したサービス提供開始 データセンター • 一部の事業者による提供 コンテンツプロバイダ • Google、Yahoo!、Facebookなど大手CPによる対応進展 • 2011年6月8日のWorld IPv6 Dayで対応サイトが増加、2012年6月6日のWorld IPv6 Launchで加速? 企業 • 国外(特に中国やインド)拠点を持つ企業で検討が進む • 機材の調達要件への組み入れ • Webなど対外情報提供では一部先進的な企業のみ対応 一般利用者 • 端末OS、携帯電話、情報家電などの多くで対応が進み、知らないうちに利用進展 電子政府・電子自治体 • 内閣府、財務省(国税庁)、総務省、法務省、厚生労働省のウェブサイトはIPv6対応済。 • 政府共通ネットワーク(霞が関WAN の後継システム)、政府共通プラットフォーム(いわゆる霞が関クラウド)につ いては、2012年度内のIPv6対応を表明(2011年4月、調達仕様書の意見招請において公表) アプリケーションサービス、機材 • Windows Azure Connect(クラウドへのファイル転送にIPv6の暗号路を利用)などIPv6利用したサービス開始 • AMAZON Web Service, Akamai Dynamic Site Accelarator • 3G(携帯電話網)における利用の拡大 • OSなどではIPv6がデフォルトで有効になっているものが主流になりつつある(ローカル通信の発生、トンネル接続など の危険性。新規機材の導入時にはIPv6をどうするか方針に盛り込む必要がある) Copyright © 2012 INTEC Inc. All Rights Reserved. 16
18.
2.IPv4枯渇対応やIPv6導入の留意点 Copyright ©
2012 INTEC Inc. All Rights Reserved. 17
19.
IPv4アドレス枯渇の企業への影響
IPv4インターネット IPv6インターネット 企業支店 海外支店 × × × 海外提携企業 × IPv6ユーザ × IPv4ユーザ IPv6ユーザ IPv4ユーザ ホーム 取引システム ページ IPv6ユーザ 企業網 インフラのIPv6対応 システム、サービスのIPv6対応 IPv6対応アプリケーション開発 IPv4アプリケーション ①ホームページなど外部公開サーバにアクセスできなくなります。 • これから増えてくるIPv6ユーザから、IPv4のホームページなどの外部公開サーバが閲覧できなくなります。 逆にIPv4ユーザはIPv6サーバが閲覧できません。 ②IPv4による企業網の拡張、IPv6使用の新規取引先との接続が困難になり、ビジネスに 支障をきたす恐れがあります。 • 新たなIPv4アドレスの取得ができなくなり、企業網の拡張が困難になります。 • 国内のIPv6ユーザや中国、インドをはじめとする海外提携企業や取引先から、取引システムへのアクセス ができなくなり、ビジネスの機会損失が発生します。 ③ IPv6 またはIPv4/IPv6混在ネットワークでは、今まで動いていたIPv4アプリケー ションの動作に不具合が発生する可能性があります。 Copyright © 2012 INTEC Inc. All Rights Reserved. 18
20.
IPv4アドレス枯渇の企業への影響 多くの企業がIPv4枯渇問題の影響を受けます。たとえば、IPv6ユーザからのIPv4 ①新規サービス・新規顧客への展開が困難 公開Webサーバへのアクセスできない、IPv6接続のみを持つ新規取引先とは接続で ②企業内インフラ・サービスの拡張が困難 きない、企業内インフラが拡張できないなどの不都合が発生します。 ①ビジネス拡大に支障
②インフラが拡張できない 新規取引先 中国、インド等の海 外拠点 × IPv6システム ○ × × 既存ユーザ イン IPv6システム (IPv4) ター IPv6システム × ネット インター ネット IPv4 × Webサーバ 企業内網 VPN 新規ユーザ IPv4システム IPv4 (IPv6) システム 国内や中国、インドを含 IPv4による企業内網 む海外ユーザ IPv6対応(ネットワーク/アプリ)への検討が必要 Copyright © 2012 INTEC Inc. All Rights Reserved. 19
21.
企業でのIPv4アドレス枯渇対策 ①外部公開サービスの改修の必要性 • 国内、中国、インド等海外ユーザから、外部公開Web環境へのアクセスができ
なくなり、ビジネスに支障をきたす恐れがある。 • 新規取引先等との接続ができないため、ビジネスの拡大を妨げる恐れがある。 • 新たなIPv4アドレスの取得ができなくなり、企業網のインフラ拡張ができなく なる恐れがある。 ②アプリケーションの改修の必要性 • アプリケーションの利用に不具合が起きる可能性がある。 • IPv6とIPv4の共有ネットワークやCGN/トランスレータなどの環境が増え、適 切な情報発信ができなくなる可能性がある。 • IPv6とIPv4の共存を意識したサーバ、クライアント、通信機器などの機材が増 加するため、システム更改では意識する必要がある。 ③企業網の更新の必要性 • IPv4プライベートアドレス空間の範囲を超えた企業網の拡張ができなくなる。 • 中国、インド等の海外拠点への接続が出来なくなる。 • グループ間接続において、プライベートアドレスの重複が起こり易くなる。接 続にあたっては、調整作業が発生する可能性がある。 Copyright © 2012 INTEC Inc. All Rights Reserved. 20
22.
典型例1(GUIのIPアドレス入力画面)
アプリのIPv6対応による問題 • IPv6アドレスのデータ形 式への対応が必要になる IPアドレス: 決定 192 . 0 . 2 . 1 類似する事例 • 設定ファイルでIPアドレスを指定 IPv6アドレス指定がそもそも不可能 IPv6アドレス: 決定 2001 : db8 : 0 : 0 : 0 : 0 : 80 : 1 IPv6アドレスは「:」区切りの16進数表記で最大39文字 「0」や「:」をRFC5957に従い正規化して省略する表記が一般的で あり、文字列として扱う場合には注意が必要(例 [2001:db8::80:1]) Copyright © 2012 INTEC Inc. All Rights Reserved. 21
23.
典型例2(IPv4依存コードの利用) アプリケーションからIPv4依存コードの削除が必要
ミドルウェアのIPv6対応が必要 プログラミング上、要注意である関数を例示しています。 IPv4依存のプログラムコードの対応例 開発言語:C/C++の例 IPv4アドレスを前提とした変数宣言や判定、関数呼び出しや、Socket作成時にIPv4アドレスのみを前提で作成 してしまうなど、アドレスファミリーに依存したプログラミングを行っている場合、IPv6ネットワークに移行す るとアプリケーション例外が発生する可能性がある。 以下のIPv4依存関数・構造体を使用していた場合、推奨関数・構造体を利用するように変更し、アドレスファミ リーに依存しないプログラミングを行う。通信を行う場合にはまずDNSによりFQDNの名前解決を行った上で、取 得できたIPアドレスにて接続を行うようプログラミングする。 ● IPv4依存関数・構造体 inet_addr(), inet_aton(), inet_lnaof(), inet_makeaddr(), inet_netof(), inet_network(), inet_ntoa(), inet_ntop(), inet_pton(), addr_ntoa(), network(), getservbyport(), gethostbyname(), gethostbyname2(), gethostbyaddr(), getservbyname(), in_addr ●推奨関数・構造体 sockaddr_storage, getaddrinfo(), getnameinfo() Copyright © 2012 INTEC Inc. All Rights Reserved. 22
24.
CGN導入による課題(IPv4だけでも問題がある例) CGNの導入により機能が制限される
多数セッションを使うWEBコンテンツが見えない(地図など) アクセス解析が出来ない WEBサーバ側の変更が必要になります 現在のインターネット CGNの利用 拠点にひとつ以上のグローバルアドレス 複数拠点で同一グローバルアドレスを共有 インターネットサーバ インターネットサーバ 1つのグローバル インター アドレスで複数の ネット CGN 拠点(他社の拠点や 一般家庭)を代表 NAT NAT NAT NAT NAT NAT グローバルアドレス プライベートアドレス Copyright © 2012 INTEC Inc. All Rights Reserved. 23
25.
3.IPv6導入の前提とフォールバックのメカニズム Copyright ©
2012 INTEC Inc. All Rights Reserved. 24
26.
動作の概要 • IPv4/IPv6デュアルスタックのクライアントの挙動
1. 接続先の名前解決をする 2. 接続先リストを作り、リストに従って接続を試みる 3. 接続できるまで、順にリストを辿る 4. 応答があった接続先とデータコネクションを確立する ネームサーバ ロードバランサ WEBサーバ 192.0.2.53 ファイアウォール等 192.0.2.81 2001:DB8::53 2001:DB8::80 [TCP] IPv6- www.example.com IN A 192.0.2.80 IPv4フォール IN AAAA 2001:DB8::80 バックの概念の ③ 導入 IPv4 IPv6 [DNS] IPv6- ① IPv4フォール マルチプレ バックの概念の フィックスとい 導入 う前提 クライアント ② Copyright © 2012 INTEC Inc. All Rights Reserved. 25
27.
フォールバック問題とは • マルチプロトコル、マルチプレフィックス環境
になった場合の通信確立に関する制御がうまく いかない問題 – DNSのフォールバック – TCPのフォールバック – アドレス選択機構 • 「マルチプレフィックス問題」ともいう – フォールバックしないことが問題 – フォールバックに時間がかかることが問題 Copyright © 2012 INTEC Inc. All Rights Reserved. 26
28.
[DNS] 名前解決における問題点 •
正しい動作 – AAAAの登録がない場合は、RCODE 0+Answer Section空 • AAAAレコードの取り扱いがうまくできない – 無応答やRCODE3(NXDOMAIN)を返し、(存在する)Aレコードの参照ができなくなる – RCODE3がキャッシュされ、その後のAの問い合わせもネガティブキャッシュで応答 – RCODE4(未実装)の場合は、クライアントが別のタイプで問い合わせしない場合問題 – RCODE2(ServFail)は、同じタイプで問い合わせ続け、Aレコードにfallbackしない場合がある • AAAAとAレコード混在時の処理順序や解決の順番 – AAAAの問い合わせに対してAを返す – AAAAレコードをひいてからAレコードを牽く、AレコードをひいてからAAAAレコードを牽く • トランスポート(DNSの通信がIPv4かIPv6か) – IPv6の問い合わせに対してIPv4onlyの区間が存在し、回答が得られない • キャッシュDNSやトランスレータの処理 • 複数アドレスの登録とクライアント側の参照上限値 – IE8と7は5つまでしか試さない クエリ クエリ 権威DNS キャッシュ クライアン サーバ DNSサーバ ト(リゾル アンサ アンサ バ) 資源 キャッシュ レコード キャッシュ レコード キャッシュ レコード ※RFC4074に詳しい レコード Copyright © 2012 INTEC Inc. All Rights Reserved. 27
29.
[TCP] サーバ処理の流れの例 ※複数ソケットでの待受け例
IPv4前提時代 IPv6導入時代 gethostbyname() getaddrinfo等で待 等で単一の待受け用 受け用IPv4,IPv6ア IPv4アドレスを取得 ドレスリストを取得 socket 1つ1つにsocket生成 bind 得られたデスクリプ listen タについてselectで 待受け accept 処理フロー参考RFC RFC4038 (Application Aspects of IPv6 Transition) close RFC3493 (Basic Socket Interface Extensions for IPv6) RFC3542 (Advanced Sockets Application Program Interface(API) for IPv6) Copyright © 2012 INTEC Inc. All Rights Reserved. 28
30.
[TCP] クライアント処理の流れの例
IPv4前提時代 IPv6導入時代 gethostbyname()等 Getaddrinfo()等で で単一の接続先IPv4 接続先IPv4,IPv6ア アドレスを取得 ドレスリストを取得 socket アドレスリストは、RFC3484のアドレ ス選択機構に従ったソートがされる (デフォルトではIPv6優先) IPv4,IPv6アドレス connect リストを順に接続を 試す 「接続NG」は、 ・通信相手からリセットが返る ・ICMPv6エラーが返る の場合(遅延はRTT約一回分) close 「 ICMPv6エラー」は、ハードエラーとソ [ Type1 Destination Unreachable ] フトエラーがある。 Code=0: no route to destination [RFC2463] フォールバックするのはハードエラーの場 Code=1: communication with destination administratively prohibited 合 [RFC2463] Code=2: beyond scope of source address [RFC4443] Code=3: address unreachable [RFC2463] 「 ICMPv6ソフトエラー」の後のフォールバックで Code=4: port unreachable [RFC2463] は、再送回数を超えるかタイムアウト待ちの分が遅 Code=5: source address failed ingress/egress policy [RFC4443] 延となる Code=6: reject route to destination [RFC4443] (4.4BSD由来のTCPコードでは、コネクション確立 用にタイマーを持ち、デフォルトでは75秒) Copyright © 2012 INTEC Inc. All Rights Reserved. 29
31.
[TCP] アプローチの違いによる問題 •
「プログラムをIPv6対応する」という場合のアプローチ フォールバックする仕掛けを作るのが難しいプログラムもある 現在 IPv4アプリ アドレス選択機 トランスポートプロトコル 構が独自になり、 TCP,UDP,Others) フォールバック IPv4 が実装依存に陥 プロトコル り易い アプリはそのままで、 アプリにIPv6の処理系を アプリでプロトコル 途中に変換機能を挿入 挿入する バージョンを意識しな IPv6対応版を作って並行 い 運用する IPv4アプリ IPv4アプリ IPv6アプリ dual stackアプリ トランスポートプロトコル トランスポートプロトコル トランスポートプロトコル TCP,UDP,Others) TCP,UDP,Others) TCP,UDP,Others) プロトコル変換 IPv4 IPv6 IPv4 IPv6 IPv4 IPv6 プロトコル プロトコル プロトコル プロトコル プロトコル プロトコル Copyright © 2012 INTEC Inc. All Rights Reserved. 30
32.
アドレス選択機構(1) •
前提条件 – クライアントも接続先も複数のアドレスを持っている – 送信元と接続先のアドレスが正しい組み合わせであることが必要 – RFC3484でアドレス選択機構のアルゴリズムとデフォルトのポリシーテーブルが規定(実装 依存→最近までMac OSには適用されていなかった) 接続先 アドレスの性質 DNS参照で得た値 192.0.2.1 グローバルIPv4アドレス 2001:db8::80 グローバルIPv6アドレス ノードが持つアドレス 自端末 アドレスの性質 169.254.0.1 自動構成IPv4アドレス/リンクローカルIPv4アドレス 127.0.0.1 ループバックアドレス IPv4プライベートアドレス IPv4グローバルアドレス fe80::60c:ceff:fee4:7ea リンクローカルIPv6アドレス(fe80::/10) ::1 IPv6ループバックアドレス ff0x::1 IPv6全ノードマルチキャストアドレス ff02::1:ff/104 IPv6要請ノードマルチキャストアドレス Fd01: IPv6ユニークローカルグローバルユニキャストアドレス(ULA) IPv6グローバルユニキャストアドレス Copyright © 2012 INTEC Inc. All Rights Reserved. 31
33.
アドレス選択機構(2)
Prefix Precedence Label ::1/128 50 0 ::/0 40 1 2002::/16 30 2 ::/96 20 3 ::ffff:0:0/96 10 100 4 宛先のIPv4のアドレスは、IPv6 mapped アドレスに置きかえられて比較さ れる デフォルトのポリシーテーブルでは、IPv6 mapped アドレスの優先度は低 い(10)ので、優先度を上げる(例では100)にするとIPv4が優先になる Copyright © 2012 INTEC Inc. All Rights Reserved. 32
34.
問題発生箇所と問題点 ①
名前解決における問題 EDNS0未対応、複数レコード登録による参照上限値との不具合 A/AAAAの追加とCNAMEによる間違った参照 IPv6の実装上の問題(v6トランスポート未サポート、壊れた応答) ② クライアントの問題 DNS参照のフォールバックに問題のあるリゾルバやリゾルバ結果を使わないプログラム 優先順序処理やRFC3484デフォルトポリシーテーブルを持たないクライアント マルチプレフィックス未対応、IPv6未対応のプログラム ③ 接続性とTCPフォールバックの問題 到達性のないIPv6ネットワーク(閉域網やULA)の存在と接続遅延 ④ コネクション確立上の問題 TCPソフトエラーの扱いによるフォールバック遅延(RFC5461でInformational RFCとして遅延対 策が提案) ⑤ 古い実装や問題を抱えた運用による問題 Neighbor Discoveryの失敗を待つonlink assamption 仕様 6to4などのトンネルプロトコル利用 Path MTU ディスカバリを阻害するミドルボックス、調整ができない端末 VPNやウィルスチェック機構などによるIPv6通信の阻害や遅延 Happy Eyeballなど新しい提案対応 ネームサーバ ロードバランサ WEBサーバ 192.0.2.53 ファイアウォール等 192.0.2.81 2001:DB8::53 2001:DB8::80 ④ www.example.com IN A 192.0.2.80 ⑤ IN AAAA 2001:DB8::80 ③ IPv4 IPv6 ① クライアント ② Copyright © 2012 INTEC Inc. All Rights Reserved. 33
35.
NGNのマルチプレフィックス問題とは ①
名前解決における問題 EDNS0未対応 A/AAAAの追加とCNAMEによる間違った参照 IPv6の実装上の問題(v6トランスポート未サポート、壊れた応答) ② クライアントの問題 DNS参照のフォールバックに問題のあるリゾルバやリゾルバ結果を使わないプログラム 優先順序処理やRFC3484デフォルトポリシーテーブルを持たないクライアント マルチプレフィックス未対応、IPv6未対応のプログラム ③ 接続性とTCPフォールバックの問題 到達性のないIPv6ネットワーク(閉域網やULA)の存在と接続遅延 ④ コネクション確立上の問題 TCPソフトエラーの扱いによるフォールバック遅延(RFC5461でInformational RFCとして遅延対 策が提案) ⑤ 古い実装や問題を抱えた運用による問題 Neighbor Discoveryの失敗を待つonlink assamption 仕様 6to4などのトンネルプロトコル利用 主にフォール Path MTU ディスカバリを阻害するミドルボックス、調整ができない端末 バックに時間が VPNやウィルスチェック機構などによるIPv6通信の阻害や遅延 かかることを問 Happy Eyeballなど新しい提案対応 題視 ネームサーバ ロードバランサ WEBサーバ 192.0.2.53 ファイアウォール等 192.0.2.81 2001:DB8::53 2001:DB8::80 ④ www.example.com IN A 192.0.2.80 ⑤ IN AAAA 2001:DB8::80 ③ IPv4 IPv6 ① クライアント ② Copyright © 2012 INTEC Inc. All Rights Reserved. 34
36.
IPv6-IPv4フォールバックでの問題
webサーバ example.com A 192.0.2.1 IPv6アドレス example.com AAAA 2001:db8::1 IPv4アドレス example.com 192.0.2.1 2001:db8::1 IPv4インター IPv6イン ネット ターネット ①まず、NTT閉域網の IPv6で接続を試みる NTT NGN網 ②IPv4へフォール CPE バック 4 6 アクセス網の問題 端末のOSやアプリのバー 最善の解はIPv6イン は緩和策あり ジョンにより挙動が異なる ターネットへの接続 Copyright © 2012 INTEC Inc. All Rights Reserved. 35
37.
NTT東日本のサービスと対象 • NTT東日本が展開する従来のフレッツサービスで発生
回線種別 サービス名称 対策 ISDN フレッツISDN TCPリセット ADSL フレッツADSL TCPリセット FTTH フレッツ光 TCPリセット ・IPoE(NTT閉域網の アドレスを使わない) ・PPPoE(ISPアドレ スとNTT閉域網アド レスをNAT66変換) NTT東日本の閉域網のIPv6アドレスが割 ・TCPリセット り振られるため、当該アドレスでは(IPv6 の)インターネット接続ができない Copyright © 2012 INTEC Inc. All Rights Reserved. 36
38.
IPv6/IPv4フォールバック状況一覧(1)
2010年12月に実施 OS ブラウザ FBしない 遅延 補足 Windows XP IE(8.0.6001.189 20秒以上 遅延は、サーバが無応答(No Professional 28) response)の場合とICMPv6エラー Type1(codeは0-6いずれも)の場合 に現象確認 ※以下、OS、ブラウザ問わず同じ Firefox 3.6.3 × 20秒以上 ICMPv6エラー Type1 Code4(port unreachable)の場合に現象確認 Chrome 5.0.375 × 20秒以上 ICMPv6エラー Type1 Code4(port unreachable)の場合に現象確認 Windows Vista IE(8.0.6001.189 20秒以上 Home Premium 28) Firefox 3.6.3 20秒以上 Chrome 5.0.375 20秒以上 Windows 7 IE(8.0.6001.189 20秒以上 Ultimate 28) Firefox 3.6.3 20秒以上 Chrome 5.0.375 20秒以上 遅延の単位はミリ秒ではなく、「秒」 Copyright © 2012 INTEC Inc. All Rights Reserved. 37
39.
IPv6/IPv4フォールバック状況一覧(2)
2010年12月に実施 OS ブラウザ FBしない 遅延 補足 Mac OS X 10.6.4 Firefox 3.6.3 × 70秒以上 ・遅延は、サーバが無応答(No response)の場合とICMPv6エラー Type1 Code6の場合に現象確認 ・FBしない現象は、ICMPv6エラー Type1 Code2,3の場合に確認 Safari 5.0 70秒以上 遅延は、サーバが無応答(No response)の場合とICMPv6エラー Type1 Code5,6の場合に現象確認 Chrome 5.0.375 70秒以上 ・遅延は、サーバが無応答(No response)の場合に現象確認 FreeBSD 7.2 Firefox 3.6.3 × 70秒以上 ・遅延は、サーバが無応答(No response)の場合とICMPv6エラー Type1 Code5,6の場合に現象確認 ・FBしない現象は、ICMPv6エラー Type1 Code2,3の場合に確認 Fedora 13 Firefox 3.6.3 × 20秒以上 ・遅延は、サーバが無応答(No response)の場合に現象確認 Code=0: no route to destination [RFC2463] Code=1: communication with destination administratively prohibited ・FBしない現象は、ICMPv6エラー [RFC2463] Code=2: beyond scope of source address [RFC4443] Type1 Code5,6の場合に確認 Code=3: address unreachable [RFC2463] Code=4: port unreachable [RFC2463] Code=5: source address failed ingress/egress policy [RFC4443] Code=6: reject route to destination [RFC4443] 遅延の単位はミリ秒ではなく、「秒」 Copyright © 2012 INTEC Inc. All Rights Reserved. 38
40.
IPv6/IPv4フォールバック状況一覧(3)
2007年に実施 OS ブラウザ FBしない 遅延 補足 Windows Vista Home IE(7.0.6000.16386) 20秒以上 遅延は、ICMPv6エラーType1(codeは0-6いずれ Basic も)の場合に現象確認 Firefox 2.0.0.1 20秒以上 遅延は、サーバが無応答(No response)の場合と ICMPv6エラー Type1(codeは0-6いずれも)の場合 に現象確認 Windows Vista IE(7.0.6000.16386) 20秒以上 遅延は、サーバが無応答(No response)の場合と Enterprise ICMPv6エラー Type1(codeは0-6いずれも)の場合 に現象確認 Firefox 2.0.0.1 20秒以上 遅延は、サーバが無応答(No response)の場合と ICMPv6エラー Type1(codeは0-6いずれも)の場合 に現象確認 Mac OSX 10.4.8 Safari 2.0.4 70秒以上 遅延は、サーバが無応答(No response)の場合に現 8L2127 象確認 Firefox 2.0.0.1 × 70秒以上 ・遅延は、サーバが無応答(No response)の場合に 現象確認 ・FBしない現象は、ICMPv6エラー Type1 Code3 の場合に確認 FreeBSD R6.2-#pl Firefox 2.0.0.1 × 70秒以上 ・遅延は、サーバが無応答(No response)の場合と ICMPv6エラー Type1 Code5,6に現象確認 ・FBしない現象は、ICMPv6エラー Type1 Code3 の場合に確認 Fedra Core 6 Kernel- Firefox 2.0.0.1 × 180秒以上 ・遅延は、サーバが無応答(No response)の場合に 2.6.20 現象確認 ・FBしない現象は、ICMPv6エラー Type1 Code5,6の場合に確認 遅延の単位はミリ秒ではなく、「秒」 Copyright © 2012 INTEC Inc. All Rights Reserved. 39
41.
スマートフォンの状況
2011年3月に実施 Smartphone OS HTTP HTTPS 補足 iPhone 4 iOS 4.2.1 FBしない FBしない No ICMPv6 destination unreachable nor TCP RST NexusS Android 2.3.2 FBしない No ICMPv6 destination unreachable nor TCP RST Copyright © 2012 INTEC Inc. All Rights Reserved. 40
42.
いろいろな対策 • NTT東西
– フレッツISDN/フレッツADSL/Bフレッツについては、TCPリセット を返し、IPv4にフォールバックさせる – フレッツ光ネクスト(IPoE)では、NTT閉域網のIPv6アドレスを使わ せない – フレッツ光ネクスト(PPPoE)では、アダプタでNAT66変換を行う • ISP – 一部のISPでは、DNSでAAAAフィルタ適用(IPv4でAAAAを問い合 わせた場合にIPv6アドレスを返さない。IPv6トランスポートでの参 照には応答する。BIND9.7.0b2で実装されている。) • Googleなど – IPv6ホワイトリストで、品質の良い(Google基準)IPv6接続には IPv6での通信を許可する仕組みを導入 • Happy Eyeball手法 – IPv6の応答が返ってくる前にIPv4も試す • その他の手法 – Policy TableによるIPv4優先度変更 – Multipath TCP,websocketなどの新しいプロトコル – HTTP preference headerなどHTTPの拡張プロトコル Copyright © 2012 INTEC Inc. All Rights Reserved. 41
43.
HappyEyeball提案動作によるクライアント処 理の流れの例
IPv4前提時代 IPv6導入時代 gethostbyname()等 getaddrinfo等で接 で単一の接続先IPv4 続先IPv4,IPv6アド アドレスを取得 レスリストを取得 socket アドレスリストは、RFC3484 IPv6とIPv4を交互に並べ替え のアドレス選択機構に従った ソートがされる(デフォルトで はIPv6優先) connect アドレスリストを順に接続 を試す(最初のconnect後 一定期間経過後、続けて別 のアドレスファミリで connectし、応答が速いも close のが選択される) “Happy Eyeballs: Success with Dual-Stack Hosts” http://tools.ietf.org/html/draft-ietf-v6ops-happy-eyeballs-07 応答の一定期間の参考値:Firefox and Chrome use 300ms Copyright © 2012 INTEC Inc. All Rights Reserved. 42
44.
継続されると思われる問題 •
NTT-NGN以外のIPv6が閉域網の場合(ULA) – ULAの規定では、RCODE 3(NXDOMAIN)を返す仕様なのでフォールバックできな いかも • ロードバランサなどのミドルウェアのDNSの実装不具合の影響によってフォール バックできないことがある – AAAAがくると無応答になったり、NXDomainやServFailを返し、フォールバック できない • フォールバックしないアプリケーション、開発言語もある – シングルスタックで稼働する「IPv6モード」、そしてIPv4優先 • 「Happy Eyeball」の限界 • Firefox10で本格提供、IEはこれから提供 • Unhappy な事例もある(https://labs.ripe.net/Members/emileaben/hampered- eyeballs)や、IPv4で接続後はIPv4が選択され続けるものや、名前解決結果までIPv4優 先になるもの • WEBアクセス以外のサービスではこの手法導入が難しいケースもある IPv6の導入を進めた方が根本的な解決になる Firefox9の設定画面 Copyright © 2012 INTEC Inc. All Rights Reserved. 43
45.
IPv4-IPv6フォールバックは過渡期に顕著になる問題 • WEBサイトの運営にあたっては、IPv6導入にあたっての注意点
(接続性を確保してからAAAAを登録等)を行き渡らせる必要 – IPv6普及・高度化推進協議会やIPv4アドレス枯渇対応タスク フォースなど関係団体から移行ガイド – World IPv6 * のイベント体験の共有 • IPv6で品質の良い接続性が確保されれば問題は低減 – 事業者側では、暫定対処・恒久対処を検討、実施 – 総務省などの監督省庁も注意を払っている – IETFなどの様々な提案も暫定的なものを含む • アプリケーションにおける対応は利用範囲、目的、期間を考慮 – 短期的な利用で、高速処理を求められる場合は遅延緩和策を盛り 込んだプログラム開発をした方が良い – 長期的な利用が想定されるや閉域網ユーザからのアクセスの可能 性の低い場合は、将来の環境変化を考えて標準的なフォールバッ クするプログラムでも良い Copyright © 2012 INTEC Inc. All Rights Reserved. 44
46.
4.アプリケーション開発のIPv6対応 Copyright © 2012
INTEC Inc. All Rights Reserved. 45
47.
IPv6対応手順概要
基本方針設計 方針 経営判断 基本方針策定 計画・ロードマップ策定 現場の意向 拡張計画 インターネットエリアIPv6対応 動向 IPv4アドレス枯渇 ネットワーク サーバ アプリケーション IPv6技術 調査 調査 調査 業界動向 設計 設計 改修 現状調査 構築 構築 導入 人 ネットワーク 材 サーバ 育 成 クライアント 周辺機器 社内網IPv6対応 アプリケーション ネットワーク 端末・サーバ・周辺機器 アプリケーション ミドルウェア 調査 調査 調査 設計 設計 改修 構築 構築 導入 Copyright © 2012 INTEC Inc. All Rights Reserved. 46
48.
動作前提変更に伴う対応のためのアプローチ
• インターネット環境が多様化していることを前提とする – IPv4枯渇対策ネットワーク(多段NAT) – IPv6ネットワーク • シングルスタック、デュアルスタック – IPv4からIPv6への移行途中のネットワーク 現在 IPv4アプリ トランスポートプロトコル TCP,UDP,Others) IPv4 プロトコル アプリにIPv6の処理系を挿入する アプリはそのままで、途中に変換機能を挿入 IPv6対応版を作って並行運用する アプリでプロトコルバージョンを意識しない IPv4アプリ IPv4アプリ IPv6アプリ dual stackアプリ トランスポートプロトコル トランスポートプロトコル トランスポートプロトコル TCP,UDP,Others) TCP,UDP,Others) TCP,UDP,Others) プロトコル変換 IPv4 IPv6 IPv4 IPv6 IPv4 IPv6 プロトコル プロトコル プロトコル プロトコル プロトコル プロトコル Copyright © 2012 INTEC Inc. All Rights Reserved. 47
49.
わかっていれば大丈夫 • IPv6のアドレスの長さや表記方法
– 入出力は万全か – 格納領域は万全か • 処理順序 – IPv6を優先、だめだったらIPv4へ – (IPv6がない環境だったら、ポリシー設定で逃げるなど他の対策も ある) • DNSにはIPv6専用のレコード(AAAA)がある – IPv4しかない環境でDNSを参照してもAAAAが返答されることがある – IPv6のレコードを返答させるには、EDNS0という拡張も必要。この 運用がされていない環境ではエラーになることもある • 確認方法もIPv6対応版で – traceroute,ping等はIPv6オプションを使って確認 – ICMPv6ではエラーの種類や数も豊富になっている Copyright © 2012 INTEC Inc. All Rights Reserved. 48
50.
クライアント処理の流れの例
IPv4前提時代 IPv6導入時代 gethostbyname()等 getaddrinfo等で接 で単一の接続先IPv4 続先IPv4,IPv6アド アドレスを取得 レスリストを取得 socket アドレスリストは、RFC3484 のアドレス選択機構に従った ソートがされる(デフォルトで はIPv6優先) IPv4,IPv6アドレス connect リストを順に接続を 試す close Copyright © 2012 INTEC Inc. All Rights Reserved. 49
51.
サーバ処理の流れの例
IPv4前提時代 IPv6導入時代 gethostbyname() getaddrinfo等で待 等で単一の待受け用 受け用IPv4,IPv6ア IPv4アドレスを取得 ドレスリストを取得 socket 1つ1つにsocket生成 bind 得られたデスクリプ listen タについてselectで 待受け accept close ※複数ソケットでの待受け例 Copyright © 2012 INTEC Inc. All Rights Reserved. 50
52.
生き残るアプリ開発のために(1) IPv6対応に必要な準備作業
データテーブル/データファイル/外部システムの ア プ リ ケ ー シ ョ ン データ取り扱い、ログ出力、アクセス制御、認証、 1 の仕様確認 名前解決、タイムアウト制御、GUI、帳票などでの IPアドレスの扱い方を確認 ハードウェア、ソフトウェア、外部システムとのイ 2 システム構成確認 ンタフェースなどにおけるIPアドレスの扱い方を確 認 ロジック/アルゴリズム、記述方法、API/オブジェ 3 実装方法の確認 クト、設定、IPv4依存コードの有無などの確認 運用保守ツール、監視ツール、設定、利用内容にお 4 運用方法の確認 けるIPアドレスの扱い方を確認 5 開発環境の確認 開発言語、実装開発環境、テスト環境などの確認 IPv6対応方針、内 IPv6導入シナリオ、スケジュール、問題発見時の対 6 容決定 応方針、マイルストンなどの確認 Copyright © 2012 INTEC Inc. All Rights Reserved. 51
53.
生き残るアプリ開発のために(2) 新規IPv6対応アプリケーション開発の注意 1
デュアルスタック環境に対応した開発言語を用いる 2 IPv4依存の関数やライブラリを使わない 接続先の指定には、サーバ名を用いる(IPアドレス直書き 3 しない) DNS(名前解決の仕組み)を使う場合は、サーバ名をIPv4 4 とIPv6どちらでも取得できる環境を前提とする IPv6に対応しているIDE(eclipseやaptanaなどの統合開 5 発環境)を用いる 6 IPv6に対応したネットワーク上に開発・テスト環境を持つ Copyright © 2012 INTEC Inc. All Rights Reserved. 52
54.
生き残るアプリ開発のために(3) 既存のプログラムを改修する場合の改修ポイント <IPv4依存アプリケーションプログラムの例> 1 IPv4アドレスが直書きしてあるプログラム 2
IPv4アドレス自体をデータとして扱うプログラム 3 IPv4のアドレス範囲により、動作を変えるプログラム 4 IPv4依存関数、ライブラリなどを利用しているプログラム 5 OSやミドルウェアにIPv4の依存性があるプログラム “IPv4依存“から脱却 Copyright © 2012 INTEC Inc. All Rights Reserved. 53
55.
参考書 • RFC
– IPv6に関するRFCは100以上! – RFC4038 (Application Aspects of IPv6 Transition) – RFC3493 (Basic Socket Interface Extensions for IPv6) – RFC3542 (Advanced Sockets Application Program Interface(API) for IPv6) – NATトラバーサル • draft-ietf-behave-lsn-requirements-03 • http://tools.ietf.org/id/draft-penno-behave-rfc4787-5382-5508-bis- 01.txt • IPv4アドレス枯渇対応アプリケーションチェックリスト – IPv4枯渇時期のインターネットの変化のアプリケーションへの影響を分析 – アプリケーションとしてチェックしなければならない個所をリストアップ – 主要なミドルウェア、フレームワーク、DBなどの対応表作成 – 問題事例 • できあがったIPv6プログラムの確認 – IPv6 Ready Logo • テストプログラムが提供されている • Phase-1,Phase-2 Copyright © 2012 INTEC Inc. All Rights Reserved. 54
56.
開発言語のIPv6対応状況 言語
IPv6対応状況 プロトコル依存(関数やマク プロトコル非依存 ロ) C OSのsocketAPIの対応状況に inet_addr, inet_aton, in_inaof, sockaddr_strage, よる in_makeaddr, inet_netof, getaddrinfo, getnameinfo C++ inet_network, inet_ntoa, inet_ntop, C# inet_pton, addr, ntoa, network, getservbyport, gethostbyname, gethostbyname2, gethostbyaddr, getservbyname, sockaddr_in, struct sockaddr, struct in_addr, INADDR_LOOPBACK, INADDR_ANY, IP_TTL, rresvport, rcmd, AF_INET, PF_INET Java SolarisとLinux :J2SE 1.4以降 Inet4Address, Inet6Address InetAddress Windows:J2SE 5.0 以降 (IPv6対応版から新設) Perl 5.10.0以降 IO::Socket::INET IO::Socket::IP 5.14以降:IPv6フルセット Ruby 1.9.2以降 UDPSocket,TCPServer Socket.udp_server_loop、 Socket.tcp_server_loop PHP 5.0.0以降 gethostbyname,gethostbynamel checkdnsrr,PEAR::Net_D NS IPv6対応のバージョンの開発言語にしただけでは、IPv6では動かない場合がある IPv4しか使えない関数やIPv6しか使えない関数がある事に注意 Copyright © 2012 INTEC Inc. All Rights Reserved. 55
57.
ミドルウェアなどのIPv6対応状況
2009年 インテック調べ カテゴリ 製品名 IPv6対応状況※(バージョン) 開発・実行環境 .NET ×:1.0 ○:1.1以降 サーブレットエンジン Tomcat ×:JavaVM1.41 ○:JavaVM1.4.2以降 データベース Oracle ×:9i △:10g ○:11gR2以降 データベース SQL ×:2000 ○:2005以降 ミドルウェア MQ ×:5.3 ○:6.0以降 ミドルウェア Tuxedo ×:10.0 ○:10.0gR3以降 ERPパッケージ SAP ×:4.7 ×:6.0 ○:7.10以降 webサーバ apache ×:1.2.x ○:1.3.x以降 webサーバ IIS ×:5.2 ○:6.0以降 ※ ×は未対応、△は機能制限あり、○はIPv6対応 Copyright © 2012 INTEC Inc. All Rights Reserved. 56
58.
最近の話題(1) • IPv6→IPv4フォールバックに関する問題
– デュアルスタック環境では、IPv6接続を試してNGだった場合にIPv4で 接続することを推奨 – IPv6の接続がない場合、IPv6が閉域網の場合(フレッツ、ULA)などでは 遅延、接続エラーとなる – ロードバランサなどのミドルウェアのDNSの実装不具合の影響によって フォールバックできないことがある – フォールバックしないアプリケーション、開発言語 – 遅延については、WEBコンテンツプロバイダなどから「Happy Eyeball」と呼ばれる手法の提案がされている • IEやFirefoxではこれから提供 • Unhappy な事例もある (https://labs.ripe.net/Members/emileaben/hampered-eyeballs)や、 IPv4で接続後はIPv4が選択され続けるものや、名前解決結果までIPv4優先に なるもの • WEBアクセス以外のサービスではこの手法導入が難しいケースもある Copyright © 2012 INTEC Inc. All Rights Reserved. 57
59.
HappyEyeball提案動作によるクライアント処 理の流れの例
IPv4前提時代 IPv6導入時代 gethostbyname()等 getaddrinfo等で接 で単一の接続先IPv4 続先IPv4,IPv6アド アドレスを取得 レスリストを取得 socket アドレスリストは、RFC3484 IPv6とIPv4を交互に並べ替え のアドレス選択機構に従った ソートがされる(デフォルトで はIPv6優先) connect アドレスリストを順に接続 を試す(最初のconnect後 一定期間経過後、続けて別 のアドレスファミリで connectし、応答が速いも close のが選択される) “Happy Eyeballs: Success with Dual-Stack Hosts” http://tools.ietf.org/html/draft-ietf-v6ops-happy-eyeballs-07 応答の一定期間の参考値:Firefox and Chrome use 300ms Copyright © 2012 INTEC Inc. All Rights Reserved. 58
60.
注意すべき事象1
IPv4,IPv6に対応したサイ ト(接続性もある) ブラウザもIPv6で接続しよ うとしているようだ 途中でIPv4のサイトとの 通信があり表示が遅い? 水色:DNSルックアップ 紫色:待機 Copyright © 2012 INTEC Inc. All Rights Reserved. 59
61.
注意すべき事象2
IPv4,IPv6に対応したサイト (接続性もある) ブラウザもIPv6で接続しよう としているようだ IPv4? DNSルックアップの結果以外 の情報を使っている? Copyright © 2012 INTEC Inc. All Rights Reserved. 60
62.
最近の話題(2) • DNSを利用しないケース
– 組み込み系やDNSを信用していないアプリケーションでは 直接IPアドレスを埋め込んでいるケースがある – 名前解決にかかる時間の短縮のためにDNSとは別の仕組み を取り入れているアプリケーション(OSSのブラウザな ど)がある – コードをみないとわからない場合があるため、トラブル シュートに時間がかかる Copyright © 2012 INTEC Inc. All Rights Reserved. 61
63.
5.まとめ Copyright © 2012
INTEC Inc. All Rights Reserved. 62
64.
ポイント •新規開発では、IPv4とIPv6の混 在環境を前提とする •既存システムの改修や更改では、 IPv4依存が問題ないか確認する Copyright ©
2012 INTEC Inc. All Rights Reserved. 63
65.
(ご参考)IPv4アドレス枯渇対応アプリケーションチェックリスト •
アプリケーション側からみたIPv4アドレス枯渇対応策 – 2011年秋に更新 (α4版) • IPv4枯渇時期のインターネットの変化のアプリケーションへの影響を分析 • アプリケーションとしてチェックしなければならない個所をリストアップ • 主要なミドルウェア、フレームワーク、DBなどの対応表作成 • インテックのWebからダウンロード提供(α4版) – http://www.intec.co.jp/technology/technology/news/pdf/ipv4_app_check_list_2 0110831.pdf Copyright © 2012 INTEC Inc. All Rights Reserved. 64
66.
IPv6普及・高度化推進協議会 • IPv4/IPv6共存WG内に「アプリケーションのIPv6対応検
討SWG」設立 • アプリケーションの対応例の提示、解説など アプリケーションの IPv6対応検討SWG http://www.v6pc.jp/jp/wg/index.phtml Copyright © 2012 INTEC Inc. All Rights Reserved. 65
67.
6.IPv4アドレス枯渇対応タスクフォース紹介 Copyright ©
2012 INTEC Inc. All Rights Reserved. 66
68.
IPv4アドレス枯渇対応タスクフォースとは IPv4アドレスの在庫枯渇の危 機を共有し、 既に社会基盤と して重要な役割りを果たして いるインターネットやその上 で行われているビジネスに多 大な影響を及ぼす可能性があ ることを認識した上で、 その 対策と対応について、
イン ターネットに関わる各プレー ヤーが連携・協力して推進す るために、 総務省を含むテレ コム/インターネット関連団 体によって発足 発足日:2008年9月5日 代表:江崎浩IPv6普及・高度 化推進協議会専務理事/東京 大学 参加団体:テレコム/イン ターネット関連21団体および 総務省(2011年11月25日現在) http://kokatsu.jp/blog/ipv4/about/ Copyright © 2012 INTEC Inc. All Rights Reserved. 67
69.
IPv6検証スペースの提供 IPv6のテストベッドを無償提供 ・誰でも利用可 ・無料(機材運搬や持ち込み機材調達に係る費用はご負担下さい) ・専門家によるサポート有り ・慶應塾大学新川崎タウンキャンパス(最寄駅JR東海道線新川崎駅) ・利用申請→事前確認→検証→アンケート(結果報告)提出
テストベッドで提供するネットワーク ・IPv4インターネットコネクティビティ(full route) ・IPv6インターネットコネクティビティ(full route) ・マルチホーム環境 Copyright © 2012 INTEC Inc. All Rights Reserved. 68
70.
テストベッド利用風景 これまでの利用事例 ・ISPのサービス検証 ・CATVの機材検証 ・セキュリティ製品の検証 ・ユーザ環境の検証 ・IPv4/IPv6共存用機材の検証、、、、など Copyright ©
2012 INTEC Inc. All Rights Reserved. 69
71.
セミナー開催 • オペレータ育成セミナーの開催
– 低価格(一日コース 42,000円) – 東京会場(神田駅)、大阪会場(中之島) – http://kokatsu.jp/blog/ipv4/event/2012/03/ipv6-handsonseminar.html Copyright © 2012 INTEC Inc. All Rights Reserved. 70
72.
詳細は
詳細は↓にアクセス http: //www.kokatsu.jp/ その他にも、いろいろな情報を提供しています。 Copyright © 2012 INTEC Inc. All Rights Reserved. 71
73.
Copyright © 2012
INTEC Inc. All Rights Reserved. 72
Download