SlideShare a Scribd company logo
1 of 37
IPv4依存のアプリケーションの問題点と
            IPv6対応のためのポイント

                            2012/1/20 14:15-15:15
                          広島市まちづくり市民交流プラザ



                                               先端技術研究所 廣海緑里

Copyright © 2012 INTEC Inc.
目次


1. 多様化するインターネット
2. IPv4枯渇対応やIPv6導入の留意点
3. アプリケーション開発のIPv6対応
4. まとめ




 Copyright © 2012 INTEC Inc. All Rights Reserved.   1
1.多様化するインターネット




Copyright © 2012 INTEC Inc. All Rights Reserved.   2
理想と現実
• 理想
        – 通信レイヤのコンポーネントが変わってもアプリケーショ
          ンに影響しない(レイヤ独立性)


• 現実
        – 下位互換性がないIPレイヤの新バージョン投入で、アプリ
          ケーションの動作に影響がでる
                   • 動かない(無視して動いているふりをする)
                   • エラーになる
                   • 挙動が安定しない不安定になる、など



     試練と思わず、新しいチャレンジ(新しいインターネットを作る)
     と思って前向きに取り組みましょう



 Copyright © 2012 INTEC Inc. All Rights Reserved.   3
IPアドレスとアプリケーションの関係
ネットワークを利用するアプリケーションには、IPアドレスを扱うコードが
潜んでいます

    ネットワークとの関係                                             代表例
1   アプリケーションから直接ネットワー                                      Webブラウザ、Webサービス、skype
    クにアクセスするもの                                             などのコミュニケーションツール
2   アプリケーションとは独立にアクセス                                      セキュリティ対策ソフト
    するが、両立していないと動作しない
    もの
3   アプリケーションとは完全に独立で                                       文書作成ソフトの公開テンプレート
    ネットワークにアクセスし、アプリ                                       ソフトウェアアップデート
    ケーションの動作にも影響しないもの

4   ネットワークとは完全に無関係なもの                                      人事管理ソフト、名刺ソフト



                             途中で分類が変わることもある。インターネットが普及、拡大
                             すると(1)に近づく傾向
    Copyright © 2012 INTEC Inc. All Rights Reserved.   4
IPプロトコルのバージョンアップは必要か?



 2011年2月3日にIPv4アドレスの世界在庫が枯渇

  2011年4月15日にアジア太平洋の在庫が枯渇
それに伴い日本で新規のIPv4アドレスの割振りも終了



     インターネット全体の拡張、進展のためには必要
     ただし、個々のネットワークにおいては接続範囲で取捨選択となる



 Copyright © 2012 INTEC Inc. All Rights Reserved.   5
IPv4アドレス枯渇状況
 日本のIPv4アドレスは事業者が持つアドレスのみ
 アドレスが不足している事業者はアドレス移転を開始

              日付                                                          状況
 2011年2月 3日                                世界在庫(IANA)が枯渇
  2011年4月15日                               アジア太平洋地域在庫が枯渇
                                           日本のIPv4アドレスは事業者が持つアドレスのみ
 2011年8月22日~                               IPv4アドレス移転(USEN→So-net)
  2012年1月10日                               計12社が移転手続き実施(1/10現在)


                                                           IANA        2011年2月3日に枯渇                /15   2
                                                                                                   /16   4
                                                                                                   /17   2
 地域レジスト                                             RIPE                            AfriNI
                                  ARIN                     APNIC        LACNIC                     /18   1
  リ(RIR)                                             NCC                               C
                                                                                                   /19   6
 国別レジスト                                                                                            /20   8
  リ(NIR)
                                             NIR           JPNIC       2011年4月15日に枯渇
                                                                                                   /21   6
                                                                                 移転された空間量          /22   6
                                                           事業者                   (/24で1064個分に相当)

 Copyright © 2012 INTEC Inc. All Rights Reserved.                  6
アドレス枯渇対策と問題
i. IPv4アドレスを回収・再利用する
•   JPNICなどのレジストリは回収の努力は続けているがほぼ限界
•   アドレス取引はJPNICでは、2011/8/1から移転申請手続きの受付を開始
•   一時的な解とはなりうるが、今後の需要をすべてまかなえない
•   アドレスの使用歴は不明であり、ブロックされている可能性がある
ii. IPv4アドレスを節約する(プロバイダの中にキャリアグレードNATを導入)
• キャリアグレードNAT(CGN)の配備が必要
• 暫定的なつなぎの解としては有効
• NATの多段化による技術的な問題あり
  セキュリティ、動作しないアプリケーション、スケーラビリティ
iii.IPv6を導入する
• システム全体を対応する必要がある(アプリのIPv6対応を含む)
• 切り替えではなく、IPv4・IPv6混在環境となる
• アドレス量は莫大であり、一度移行すれば長期的には最も有望

     根本的な解決は、IPv6導入であり、導入が推進されています

     Copyright © 2012 INTEC Inc. All Rights Reserved.   7
アドレス枯渇はどういう意味をもつ?
ネットワークにとって
• 今までの“インターネット”が動作しなくなるわけではない

• IPv4でインターネットの拡張ができなくなる
   – 世界人口70億 インターネット人口は20億
   – 現在はPCネットワーク 将来はモノ・センサーネットワーク
   – スマートフォンにはIPアドレス付与が原則

• IPv6とのつきあい方を考える時期に入る
   – IPv6が導入されたネットワークとどうつなぐか
アプリケーションやサーバにとって

• CGN(NAT444)やNAT46/64,DNS46/64を考慮しなければいけない
• IPv6の必要性を加味しなければいけない
• IPv6対応が必要な場合は、既存資産をIPv4依存から脱却させなけれ
  ばいけない
 Copyright © 2012 INTEC Inc. All Rights Reserved.   8
今後のインターネット予想
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.                9
IPv6への移行の今後
                                                          日本のIPv4->IPv6マイグレーション予想

2009       2011                                       2013-2014                             20??

                                                             IPv4のピーク到来
                                                             既存ユーザにおいて
                                                             も、IPv6が使えるよ
                                         IPv4のみ              うになってくる
                                                                              暫定解のCGNが
                                                                              縮退し、IPv6        IPv4・IPv6混在
                                                                              が主流に(時
                                                                              期不明)
2011年
枯渇対応サービス                                                                         CGN
の提供開始                      IPv6前提のネットサービス増加
                           (Windows Azure Connect, SAP
                           NetWeaver, AkamaiDynamic Site                                           IPv6のみ
                           Accelerator+GREE)                            IPv6のみのISPサービスが出現



           スマートフォン、                      ECサイト、オンラ                 海外取り引き、   企業間取引など
            の取り込みなど                       インゲーム、コ                 グローバルな情報
                                          ミュニティなど                   発信など



                           インターネット
                                                                                          中国・インドでは、
 中国                          普及途上                             IPv4のみでは、構                    IPv6のみの
                                                                                           ISPサービスが
インド                    今後の需要増加                                    築困難                    日本より早めに出現!?


       Copyright © 2012 INTEC Inc. All Rights Reserved.                10
IPv6導入について今後の見通し

• IPv6が導入されると…
  – IPv4との共存期に入る。(長期間続く見込み)
  – IPv4とIPv6の互換性はなく、共存を意識したプログラ
    ムが必要となる。
  – 既存のプログラムの多くは、IPv4環境を前提としてい
    るので動かなくなる可能性がある。

IPv4とIPv6が共存するシステム構築、プログラム開
発が求められる

既存の改修が必要かどうかの診断の需要が高まる

 Copyright © 2012 INTEC Inc. All Rights Reserved.   11
IPv6導入状況(1)
メインプレイヤーのシフト(通信インフラ側からサービスサイト側へ)

アクセス事業者                     政府・監督省庁                   教育、セミナー        NI        官公庁・自治体

  ISP                                                  人材派遣          SI        大学・研究機関

 DC事業者                                                コンサルティング                   一般企業
ハードウェア                                  基盤技術から、ビジネス                            ・利用
 ベンダー
ソフトウェア                                  利用のための技術開発へ                            ・商業展開
 ベンダー

                                                              支援          支援
     ・インフラ提供
     ・環境整備                                                          今

 IPv6導入のための基盤
                                                     IPv6技術ノウハ
 環境構築                                                              IPv6技術
                                                     ウ蓄積                       IPv6技術利用
                                                                   普及
                                                                               拡大
  Copyright © 2012 INTEC Inc. All Rights Reserved.       12
IPv6導入状況(2)
アクセス回線、ISP、CATV、携帯電話
•   2011年4月から7月にかけてコンシューマ向けの本格的なIPv6対応したサービス提供開始
データセンター
•   一部の事業者による提供
コンテンツプロバイダ
•   Google、Yahoo!、Facebookなど大手CPによる対応進展
•   6月8日のWorld IPv6 Day以降、対応サイトが増加
企業
•   国外(特に中国やインド)拠点を持つ企業で検討が進む
•   機材の調達要件への組み入れ
•   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.   13
2.IPv4枯渇対応やIPv6導入の留意点




 Copyright © 2012 INTEC Inc. All Rights Reserved.   14
IPv4アドレス枯渇の影響
                 IPv4インターネット                                        IPv6インターネット
                                 企業支店                                海外支店


          ×           IPv4ユーザ
                                            ×                  ×
                                                         IPv6ユーザ
                                                                   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.               15
ネット環境の変化によるアプリの問題
                   ①IPv4枯渇によるNATの
三つの要因 多段化                                               ②IPv4・IPv6混在環境   ③アプリのIPv6対応


①による問題
• アプリが動かなくなる                                            サーバ側
• コンテンツの表示が不完全になる
• コンテンツの表示が遅くなる
• 送信元IPによる利用者特定が出来
  なくなる                                                 ③による問題
                                                       • ミドルウェアなどのIPv6対
②による問題                                                   応版への更新が必要になる
• 端末から繋がらなくなる                                          • IPv4依存コードの修正が必
                                                         要になる
 インターネット                                               • IPv6アドレスのデータ形式 イントラネット
①による問題                                                   への対応が必要になる
• UPnP(NAT越え)によるP2Pが繋がら                                • OSにより挙動が異なる場合、
  なくなる                                                   アプリの移植性が低下する

②による問題                                                           ②による問題(インターネット利用の場合)
• サーバに繋がらなくなる                                                    • サーバに繋がらなくなる
• 環境によりレスポンスがまちまち                                                • 環境によりレスポンスがまちまち
                                                       クライアント側
    Copyright © 2012 INTEC Inc. All Rights Reserved.      16
典型例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.                 17
典型例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(), in
 et_ntop(), inet_pton(), addr_ntoa(), network(), getservbyport(), gethostbyname(), gethostbyname2(), ge
 thostbyaddr(), getservbyname(), in_addr

 ●推奨関数・構造体
 sockaddr_storage, getaddrinfo(), getnameinfo()



  Copyright © 2012 INTEC Inc. All Rights Reserved.   18
CGN導入による課題(IPv4だけでも問題がある例)

 CGNの導入により機能が制限される
  多数セッションを使うWEBコンテンツが見えない(地図など)
  アクセス解析が出来ない
                                                                WEBサーバ側の変更が必要になります


 現在のインターネット                                                     CGNの利用
 拠点にひとつ以上のグローバルアドレス                                              複数拠点で同一グローバルアドレスを共有



                                          インターネットサーバ                             インターネットサーバ


                                                                                    1つのグローバル
                    インター                                                            アドレスで複数の
                     ネット                                                 CGN        拠点(他社の拠点
                                                                                    や一般家庭)を代
                                                                                    表

               NAT               NAT                NAT           NAT      NAT     NAT

                                              グローバルアドレス
                                              プライベートアドレス

 Copyright © 2012 INTEC Inc. All Rights Reserved.          19
3.アプリケーション開発のIPv6対応




Copyright © 2012 INTEC Inc. All Rights Reserved.   20
IPv6対応手順概要
                                                     基本方針設計
方針
経営判断                                                基本方針策定            計画・ロードマップ策定
現場の意向
拡張計画
                                                     インターネットエリアIPv6対応
動向
IPv4アドレス枯渇                                          ネットワーク      サーバ           アプリケーション
IPv6技術                                                調査           調査           調査
業界動向
                                                       設計           設計           改修
現状調査                                                   構築           構築           導入       人
ネットワーク                                                                                   材
                                                                                          育
サーバ                                                                                      成
クライアント
周辺機器                                                社内網IPv6対応
アプリケーション                                            ネットワーク      端末・サーバ・周辺機器   アプリケーション
ミドルウェア
                                                       調査           調査           調査
                                                       設計           設計           改修
                                                       構築           構築           導入
  Copyright © 2012 INTEC Inc. All Rights Reserved.       21
動作前提が変わることをうけて・・・

 • インターネット環境が多様化していることを前提とする
         – IPv4枯渇対策ネットワーク(多段NAT)
         – IPv6ネットワーク
                    • シングルスタック、デュアルスタック
         – IPv4からIPv6への移行途中のネットワーク
                                                              現在
                                                        IPv4アプリ
                                                      トランスポートプロトコル
                                                        TCP,UDP,Others)

                                                               IPv4
                                                              プロトコル




      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.              22
わかっていれば大丈夫
• IPv6のアドレスの長さや表記方法
  – 入出力は万全か
  – 格納領域は万全か
• 処理順序
  – IPv6を優先、だめだったらIPv4へ
  – (IPv6がない環境だったら、ポリシー設定で逃げるなど対策もあ
    る)
• DNSにはIPv6専用のレコード(AAAA)がある
  – IPv4しかない環境でDNSを参照してもAAAAが返答されることがある
  – IPv6のレコードを返答させるには、EDNS0という対応が必要。この
    運用がされていない環境ではエラーになることもある
• 確認方法もIPv6対応版で
  – traceroute,ping等はIPv6オプションを使って確認
  – ICMPv6ではエラーの種類や数も豊富になっている

  Copyright © 2012 INTEC Inc. All Rights Reserved.   23
生き残るアプリ開発のために(1)
IPv6対応に必要な準備作業
                  データテーブル/データファイル/外部システムの
  ア プ リ ケ ー シ ョ ン データ取り扱い、ログ出力、アクセス制御、認証、
1
  の仕様確認           名前解決、タイムアウト制御、GUI、帳票などでの
                  IPアドレスの扱い方を確認
                                                 ハードウェア、ソフトウェア、外部システムとのイ
2 システム構成確認                                       ンタフェースなどにおけるIPアドレスの扱い方を確
                                                 認
                                                 ロジック/アルゴリズム、記述方法、API/オブジェ
3 実装方法の確認
                                                 クト、設定、IPv4依存コードの有無などの確認
                   運用保守ツール、監視ツール、設定、利用内容にお
4 運用方法の確認
                   けるIPアドレスの扱い方を確認
5 開発環境の確認          開発言語、実装開発環境、テスト環境などの確認
  IPv6 対 応 方 針 、 内 IPv6導入シナリオ、スケジュール、問題発見時の対
6
  容決定              応方針、マイルストンなどの確認
   Copyright © 2012 INTEC Inc. All Rights Reserved.    24
生き残るアプリ開発のために(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.   25
生き残るアプリ開発のために(3)

既存のプログラムを改修する場合の改修ポイント

 <IPv4依存アプリケーションプログラムの例>
1 IPv4アドレスが直書きしてあるプログラム
2 IPv4アドレス自体をデータとして扱うプログラム
3 IPv4のアドレス範囲により、動作を変えるプログラム
4 IPv4依存関数、ライブラリなどを利用しているプログラム
5 OSやミドルウェアにIPv4の依存性があるプログラム

                                                     “IPv4依存“から脱却

  Copyright © 2012 INTEC Inc. All Rights Reserved.      26
参考書
• 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.   27
開発言語のIPv6対応状況
 ③による問題
 • IPv4依存コードの修正が必要になる

言語      IPv6対応状況                                          プロトコル依存(関数やマク                       プロトコル非依存
                                                          ロ)
C     OSのsocketAPIの対応状況によ                                 inet_addr, inet_aton, in_inaof,        sockaddr_strage,
      る                                                   in_makeaddr, inet_netof, inet_network, getaddrinfo, getnameinfo
C++                                                       inet_ntoa, inet_ntop, inet_pton, addr,
C#                                                        ntoa, network, getservbyport,
 IPv6対応のバージョンの開発言語                                        gethostbyname, gethostbyname2,
 にしただけでは、IPv6では動かな                                        gethostbyaddr, getservbyname,
 い場合がある                                                   sockaddr_in, structsockaddr,
                                                          structin_addr, INADDR_LOOPBACK,
 IPv4しか使えない関数やIPv6しか                                      INADDR_ANY, IP_TTL, rresvport, rcmd,
 使えない関数がある事に注意                                            AF_INET, PF_INET

Java    SolarisとLinux :J2SE 1.4以                          Inet4Address, Inet6Address          InetAddress
        降                                                 (IPv6対応版から新設)
        Windows:J2SE 5.0 以降
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_DNS

       Copyright © 2012 INTEC Inc. All Rights Reserved.             28
ミドルウェアなどのIPv6対応状況
 アプリのIPv6対応による問題
 • ミドルウェアなどのIPv6対応版への更新が必要になる

カテゴリ                                                  製品名      IPv6対応状況※(バージョン)
開発・実行環境                                               .NET     ×:1.0 ○:1.1以降
サーブレットエンジン                                            Tomcat   ×:JavaVM1.41○:JavaVM1.4.2以降
データベース                                                Oracle   ×:9i △:10g ○:11gR2以降
データベース                                                SQL      ?
ミドルウェア                                                MQ       ?
ミドルウェア                                                Tuxedo   ?
ERPパッケージ                                              SAP      ×:4.7 ×:6.0 ○:7.10以降
webサーバ                                                apache   ×:1.2.x △:1.3.x ○:2.0以降
webサーバ                                                IIS      ?
                                                               ※    ×は未対応、△は機能制限あり、○はIPv6対応

   Copyright © 2012 INTEC Inc. All Rights Reserved.                29
最近の話題(1)
• IPv6→IPv4フォールバックに関する問題
        – デュアルスタック環境では、IPv6接続を試してNGだった場
          合にIPv4で接続することを推奨
        – IPv6の接続がない場合、IPv6が閉域網の場合(フレッツ、
          ULA)などでは遅延、接続エラーとなる
        – ロードバランサなどのミドルウェアのDNSの実装不具合の影
          響によってフォールバックできないことがある
        – フォールバックしないアプリケーション、開発言語
        – 遅延については、WEBコンテンツプロバイダなどから
          「Happy Eyeball」と呼ばれる手法の提案がされている
                   • IEやFirefoxではこれから提供




 Copyright © 2012 INTEC Inc. All Rights Reserved.   30
最近の話題(2)
• DNSを利用しないケース
        – 組み込み系やDNSを信用していないアプリケーションでは直
          接IPアドレスを埋め込んでいるケースがある
        – 名前解決にかかる時間の短縮のためにDNSとは別の仕組みを
          取り入れているアプリケーション(OSSのブラウザなど)が
          ある
        – コードをみないとわからない場合があるため、トラブル
          シュートに時間がかかる




 Copyright © 2012 INTEC Inc. All Rights Reserved.   31
4.まとめ




Copyright © 2012 INTEC Inc. All Rights Reserved.   32
ポイント



•新規開発では、IPv4とIPv6の混在
環境を前提とする

•既存システムの改修や更改では、
IPv4依存が問題ないか確認する


 Copyright © 2012 INTEC Inc. All Rights Reserved.   33
(ご参考)IPv4アドレス枯渇対応アプリケーションチェックリスト

 •        アプリケーション側からみたIPv4アドレス枯渇対応策
            –      2011年秋に更新 (α4版)
 •        IPv4枯渇時期のインターネットの変化のアプリケーションへの影響を分析
 •        アプリケーションとしてチェックしなければならない個所をリストアップ
 •        主要なミドルウェア、フレームワーク、DBなどの対応表作成




 •        インテックのWebからダウンロード提供(α4版)
            –      http://www.intec.co.jp/technology/technology/news/pdf/ipv4_app_check_list_2011
                   0831.pdf

     Copyright © 2012 INTEC Inc. All Rights Reserved.   34
IPv6普及・高度化推進協議会
• IPv4/IPv6共存WG内に「アプリケーションのIPv6対応検討
  SWG」設立




                                                                             アプリケーションの
                                                                             IPv6対応検討SWG




                                                         http://www.v6pc.jp/jp/wg/index.phtml




 Copyright © 2012 INTEC Inc. All Rights Reserved.   35
Copyright © 2012 INTEC Inc. All Rights Reserved.   36

More Related Content

What's hot

192.0.0.4 on android
192.0.0.4 on android192.0.0.4 on android
192.0.0.4 on android@ otsuka752
 
MAP 実装してみた
MAP 実装してみたMAP 実装してみた
MAP 実装してみたMasakazu Asama
 
IPv6時代のWebアプリケーション&プラットフォーム 2014
IPv6時代のWebアプリケーション&プラットフォーム 2014IPv6時代のWebアプリケーション&プラットフォーム 2014
IPv6時代のWebアプリケーション&プラットフォーム 2014v6app
 
Lorawan for agriculture, haccp hazard analysis and critical control point
Lorawan for agriculture, haccp hazard analysis and critical control pointLorawan for agriculture, haccp hazard analysis and critical control point
Lorawan for agriculture, haccp hazard analysis and critical control pointElias Hasnat
 
BGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみたBGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみたakira6592
 
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応v6app
 
545人のインフラを支えたNOCチーム!
545人のインフラを支えたNOCチーム!545人のインフラを支えたNOCチーム!
545人のインフラを支えたNOCチーム!Masayuki Kobayashi
 
Lagopus workshop@Internet weekのそば
Lagopus workshop@Internet weekのそばLagopus workshop@Internet weekのそば
Lagopus workshop@Internet weekのそばYoshihiro Nakajima
 
LoRaWAN AS923 と ARIB STD-T108
LoRaWAN AS923 と ARIB STD-T108LoRaWAN AS923 と ARIB STD-T108
LoRaWAN AS923 と ARIB STD-T108Shoichi Sakane
 

What's hot (9)

192.0.0.4 on android
192.0.0.4 on android192.0.0.4 on android
192.0.0.4 on android
 
MAP 実装してみた
MAP 実装してみたMAP 実装してみた
MAP 実装してみた
 
IPv6時代のWebアプリケーション&プラットフォーム 2014
IPv6時代のWebアプリケーション&プラットフォーム 2014IPv6時代のWebアプリケーション&プラットフォーム 2014
IPv6時代のWebアプリケーション&プラットフォーム 2014
 
Lorawan for agriculture, haccp hazard analysis and critical control point
Lorawan for agriculture, haccp hazard analysis and critical control pointLorawan for agriculture, haccp hazard analysis and critical control point
Lorawan for agriculture, haccp hazard analysis and critical control point
 
BGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみたBGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみた
 
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応
 
545人のインフラを支えたNOCチーム!
545人のインフラを支えたNOCチーム!545人のインフラを支えたNOCチーム!
545人のインフラを支えたNOCチーム!
 
Lagopus workshop@Internet weekのそば
Lagopus workshop@Internet weekのそばLagopus workshop@Internet weekのそば
Lagopus workshop@Internet weekのそば
 
LoRaWAN AS923 と ARIB STD-T108
LoRaWAN AS923 と ARIB STD-T108LoRaWAN AS923 と ARIB STD-T108
LoRaWAN AS923 と ARIB STD-T108
 

Similar to 20120120 hiroshima i_pv6_application

2011/08/27 第3回 静岡 IT Pro勉強会 インフラ部 LT
2011/08/27 第3回 静岡 IT Pro勉強会 インフラ部 LT2011/08/27 第3回 静岡 IT Pro勉強会 インフラ部 LT
2011/08/27 第3回 静岡 IT Pro勉強会 インフラ部 LTTatsuya Ueda
 
IPv6 最新動向 〜世界共通語で最適化が進むインターネット〜
IPv6 最新動向 〜世界共通語で最適化が進むインターネット〜IPv6 最新動向 〜世界共通語で最適化が進むインターネット〜
IPv6 最新動向 〜世界共通語で最適化が進むインターネット〜Akira Nakagawa
 
結局IPv6ってどうなん?(序)
結局IPv6ってどうなん?(序)結局IPv6ってどうなん?(序)
結局IPv6ってどうなん?(序)nemumu
 
20181130 iw2018-ipv6-summary-asakusabashi
20181130 iw2018-ipv6-summary-asakusabashi20181130 iw2018-ipv6-summary-asakusabashi
20181130 iw2018-ipv6-summary-asakusabashiAkira Nakagawa
 
IX事業者とインターネットの未来
IX事業者とインターネットの未来IX事業者とインターネットの未来
IX事業者とインターネットの未来Yoshiki Ishida
 
ISPネットワーク運用で覗いてるもの
ISPネットワーク運用で覗いてるものISPネットワーク運用で覗いてるもの
ISPネットワーク運用で覗いてるものTaiji Tsuchiya
 
Internet Week 2018 知っておくべきIPv6とセキュリティの話
Internet Week 2018 知っておくべきIPv6とセキュリティの話Internet Week 2018 知っておくべきIPv6とセキュリティの話
Internet Week 2018 知っておくべきIPv6とセキュリティの話Akira Nakagawa
 
I Pv6 Service Deployment Guideline
I Pv6 Service Deployment GuidelineI Pv6 Service Deployment Guideline
I Pv6 Service Deployment Guidelineguestfcd0535
 
[D20] 高速Software Switch/Router 開発から得られた高性能ソフトウェアルータ・スイッチ活用の知見 (July Tech Fest...
[D20] 高速Software Switch/Router 開発から得られた高性能ソフトウェアルータ・スイッチ活用の知見 (July Tech Fest...[D20] 高速Software Switch/Router 開発から得られた高性能ソフトウェアルータ・スイッチ活用の知見 (July Tech Fest...
[D20] 高速Software Switch/Router 開発から得られた高性能ソフトウェアルータ・スイッチ活用の知見 (July Tech Fest...Tomoya Hibi
 
PHPで使うIPv6の実際
PHPで使うIPv6の実際PHPで使うIPv6の実際
PHPで使うIPv6の実際Tetsuji Koyama
 
IPv6冗長で差をつけよう 2011年夏の思い出作り VRRP編
IPv6冗長で差をつけよう  2011年夏の思い出作り VRRP編IPv6冗長で差をつけよう  2011年夏の思い出作り VRRP編
IPv6冗長で差をつけよう 2011年夏の思い出作り VRRP編@ otsuka752
 
ION Tokyo Panel - IPv6 in Asia Pacific: Untangling the Web, Akihiro Tsuru
ION Tokyo Panel - IPv6 in Asia Pacific: Untangling the Web, Akihiro TsuruION Tokyo Panel - IPv6 in Asia Pacific: Untangling the Web, Akihiro Tsuru
ION Tokyo Panel - IPv6 in Asia Pacific: Untangling the Web, Akihiro TsuruDeploy360 Programme (Internet Society)
 
IPv6標準化の最新動向
IPv6標準化の最新動向IPv6標準化の最新動向
IPv6標準化の最新動向Shinsuke SUZUKI
 
IPv6 Application
IPv6 ApplicationIPv6 Application
IPv6 ApplicationRuri Hiromi
 
20180209 qunog-i pv6-summit_report_kagoshima webup
20180209 qunog-i pv6-summit_report_kagoshima webup20180209 qunog-i pv6-summit_report_kagoshima webup
20180209 qunog-i pv6-summit_report_kagoshima webupAkira Nakagawa
 
20180223 enog-i pv6-summit_report_tsubame_sanjyo niigata for webup
20180223 enog-i pv6-summit_report_tsubame_sanjyo niigata for webup20180223 enog-i pv6-summit_report_tsubame_sanjyo niigata for webup
20180223 enog-i pv6-summit_report_tsubame_sanjyo niigata for webupAkira Nakagawa
 
20180309 jaipa-shimonoseki
20180309 jaipa-shimonoseki20180309 jaipa-shimonoseki
20180309 jaipa-shimonosekiAkira Nakagawa
 

Similar to 20120120 hiroshima i_pv6_application (20)

2011/08/27 第3回 静岡 IT Pro勉強会 インフラ部 LT
2011/08/27 第3回 静岡 IT Pro勉強会 インフラ部 LT2011/08/27 第3回 静岡 IT Pro勉強会 インフラ部 LT
2011/08/27 第3回 静岡 IT Pro勉強会 インフラ部 LT
 
IPv6標準化と実装
IPv6標準化と実装IPv6標準化と実装
IPv6標準化と実装
 
IPv6 最新動向 〜世界共通語で最適化が進むインターネット〜
IPv6 最新動向 〜世界共通語で最適化が進むインターネット〜IPv6 最新動向 〜世界共通語で最適化が進むインターネット〜
IPv6 最新動向 〜世界共通語で最適化が進むインターネット〜
 
結局IPv6ってどうなん?(序)
結局IPv6ってどうなん?(序)結局IPv6ってどうなん?(序)
結局IPv6ってどうなん?(序)
 
20181130 iw2018-ipv6-summary-asakusabashi
20181130 iw2018-ipv6-summary-asakusabashi20181130 iw2018-ipv6-summary-asakusabashi
20181130 iw2018-ipv6-summary-asakusabashi
 
IX事業者とインターネットの未来
IX事業者とインターネットの未来IX事業者とインターネットの未来
IX事業者とインターネットの未来
 
進化するIX
進化するIX進化するIX
進化するIX
 
ISPネットワーク運用で覗いてるもの
ISPネットワーク運用で覗いてるものISPネットワーク運用で覗いてるもの
ISPネットワーク運用で覗いてるもの
 
IPv6 Update
IPv6 UpdateIPv6 Update
IPv6 Update
 
Internet Week 2018 知っておくべきIPv6とセキュリティの話
Internet Week 2018 知っておくべきIPv6とセキュリティの話Internet Week 2018 知っておくべきIPv6とセキュリティの話
Internet Week 2018 知っておくべきIPv6とセキュリティの話
 
I Pv6 Service Deployment Guideline
I Pv6 Service Deployment GuidelineI Pv6 Service Deployment Guideline
I Pv6 Service Deployment Guideline
 
[D20] 高速Software Switch/Router 開発から得られた高性能ソフトウェアルータ・スイッチ活用の知見 (July Tech Fest...
[D20] 高速Software Switch/Router 開発から得られた高性能ソフトウェアルータ・スイッチ活用の知見 (July Tech Fest...[D20] 高速Software Switch/Router 開発から得られた高性能ソフトウェアルータ・スイッチ活用の知見 (July Tech Fest...
[D20] 高速Software Switch/Router 開発から得られた高性能ソフトウェアルータ・スイッチ活用の知見 (July Tech Fest...
 
PHPで使うIPv6の実際
PHPで使うIPv6の実際PHPで使うIPv6の実際
PHPで使うIPv6の実際
 
IPv6冗長で差をつけよう 2011年夏の思い出作り VRRP編
IPv6冗長で差をつけよう  2011年夏の思い出作り VRRP編IPv6冗長で差をつけよう  2011年夏の思い出作り VRRP編
IPv6冗長で差をつけよう 2011年夏の思い出作り VRRP編
 
ION Tokyo Panel - IPv6 in Asia Pacific: Untangling the Web, Akihiro Tsuru
ION Tokyo Panel - IPv6 in Asia Pacific: Untangling the Web, Akihiro TsuruION Tokyo Panel - IPv6 in Asia Pacific: Untangling the Web, Akihiro Tsuru
ION Tokyo Panel - IPv6 in Asia Pacific: Untangling the Web, Akihiro Tsuru
 
IPv6標準化の最新動向
IPv6標準化の最新動向IPv6標準化の最新動向
IPv6標準化の最新動向
 
IPv6 Application
IPv6 ApplicationIPv6 Application
IPv6 Application
 
20180209 qunog-i pv6-summit_report_kagoshima webup
20180209 qunog-i pv6-summit_report_kagoshima webup20180209 qunog-i pv6-summit_report_kagoshima webup
20180209 qunog-i pv6-summit_report_kagoshima webup
 
20180223 enog-i pv6-summit_report_tsubame_sanjyo niigata for webup
20180223 enog-i pv6-summit_report_tsubame_sanjyo niigata for webup20180223 enog-i pv6-summit_report_tsubame_sanjyo niigata for webup
20180223 enog-i pv6-summit_report_tsubame_sanjyo niigata for webup
 
20180309 jaipa-shimonoseki
20180309 jaipa-shimonoseki20180309 jaipa-shimonoseki
20180309 jaipa-shimonoseki
 

Recently uploaded

CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成Hiroshi Tomioka
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 

Recently uploaded (9)

CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 

20120120 hiroshima i_pv6_application

  • 1. IPv4依存のアプリケーションの問題点と IPv6対応のためのポイント 2012/1/20 14:15-15:15 広島市まちづくり市民交流プラザ 先端技術研究所 廣海緑里 Copyright © 2012 INTEC Inc.
  • 2. 目次 1. 多様化するインターネット 2. IPv4枯渇対応やIPv6導入の留意点 3. アプリケーション開発のIPv6対応 4. まとめ Copyright © 2012 INTEC Inc. All Rights Reserved. 1
  • 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日~ IPv4アドレス移転(USEN→So-net) 2012年1月10日 計12社が移転手続き実施(1/10現在) IANA 2011年2月3日に枯渇 /15 2 /16 4 /17 2 地域レジスト RIPE AfriNI ARIN APNIC LACNIC /18 1 リ(RIR) NCC C /19 6 国別レジスト /20 8 リ(NIR) NIR JPNIC 2011年4月15日に枯渇 /21 6 移転された空間量 /22 6 事業者 (/24で1064個分に相当) Copyright © 2012 INTEC Inc. All Rights Reserved. 6
  • 8. アドレス枯渇対策と問題 i. IPv4アドレスを回収・再利用する • JPNICなどのレジストリは回収の努力は続けているがほぼ限界 • アドレス取引はJPNICでは、2011/8/1から移転申請手続きの受付を開始 • 一時的な解とはなりうるが、今後の需要をすべてまかなえない • アドレスの使用歴は不明であり、ブロックされている可能性がある ii. IPv4アドレスを節約する(プロバイダの中にキャリアグレードNATを導入) • キャリアグレードNAT(CGN)の配備が必要 • 暫定的なつなぎの解としては有効 • NATの多段化による技術的な問題あり セキュリティ、動作しないアプリケーション、スケーラビリティ iii.IPv6を導入する • システム全体を対応する必要がある(アプリのIPv6対応を含む) • 切り替えではなく、IPv4・IPv6混在環境となる • アドレス量は莫大であり、一度移行すれば長期的には最も有望 根本的な解決は、IPv6導入であり、導入が推進されています Copyright © 2012 INTEC Inc. All Rights Reserved. 7
  • 9. アドレス枯渇はどういう意味をもつ? ネットワークにとって • 今までの“インターネット”が動作しなくなるわけではない • IPv4でインターネットの拡張ができなくなる – 世界人口70億 インターネット人口は20億 – 現在はPCネットワーク 将来はモノ・センサーネットワーク – スマートフォンにはIPアドレス付与が原則 • IPv6とのつきあい方を考える時期に入る – IPv6が導入されたネットワークとどうつなぐか アプリケーションやサーバにとって • CGN(NAT444)やNAT46/64,DNS46/64を考慮しなければいけない • IPv6の必要性を加味しなければいけない • IPv6対応が必要な場合は、既存資産をIPv4依存から脱却させなけれ ばいけない Copyright © 2012 INTEC Inc. All Rights Reserved. 8
  • 10. 今後のインターネット予想 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. 9
  • 11. IPv6への移行の今後 日本のIPv4->IPv6マイグレーション予想 2009 2011 2013-2014 20?? IPv4のピーク到来 既存ユーザにおいて も、IPv6が使えるよ IPv4のみ うになってくる 暫定解のCGNが 縮退し、IPv6 IPv4・IPv6混在 が主流に(時 期不明) 2011年 枯渇対応サービス CGN の提供開始 IPv6前提のネットサービス増加 (Windows Azure Connect, SAP NetWeaver, AkamaiDynamic Site IPv6のみ Accelerator+GREE) IPv6のみのISPサービスが出現 スマートフォン、 ECサイト、オンラ 海外取り引き、 企業間取引など の取り込みなど インゲーム、コ グローバルな情報 ミュニティなど 発信など インターネット 中国・インドでは、 中国 普及途上 IPv4のみでは、構 IPv6のみの ISPサービスが インド 今後の需要増加 築困難 日本より早めに出現!? Copyright © 2012 INTEC Inc. All Rights Reserved. 10
  • 12. IPv6導入について今後の見通し • IPv6が導入されると… – IPv4との共存期に入る。(長期間続く見込み) – IPv4とIPv6の互換性はなく、共存を意識したプログラ ムが必要となる。 – 既存のプログラムの多くは、IPv4環境を前提としてい るので動かなくなる可能性がある。 IPv4とIPv6が共存するシステム構築、プログラム開 発が求められる 既存の改修が必要かどうかの診断の需要が高まる Copyright © 2012 INTEC Inc. All Rights Reserved. 11
  • 13. IPv6導入状況(1) メインプレイヤーのシフト(通信インフラ側からサービスサイト側へ) アクセス事業者 政府・監督省庁 教育、セミナー NI 官公庁・自治体 ISP 人材派遣 SI 大学・研究機関 DC事業者 コンサルティング 一般企業 ハードウェア 基盤技術から、ビジネス ・利用 ベンダー ソフトウェア 利用のための技術開発へ ・商業展開 ベンダー 支援 支援 ・インフラ提供 ・環境整備 今 IPv6導入のための基盤 IPv6技術ノウハ 環境構築 IPv6技術 ウ蓄積 IPv6技術利用 普及 拡大 Copyright © 2012 INTEC Inc. All Rights Reserved. 12
  • 14. IPv6導入状況(2) アクセス回線、ISP、CATV、携帯電話 • 2011年4月から7月にかけてコンシューマ向けの本格的なIPv6対応したサービス提供開始 データセンター • 一部の事業者による提供 コンテンツプロバイダ • Google、Yahoo!、Facebookなど大手CPによる対応進展 • 6月8日のWorld IPv6 Day以降、対応サイトが増加 企業 • 国外(特に中国やインド)拠点を持つ企業で検討が進む • 機材の調達要件への組み入れ • 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. 13
  • 15. 2.IPv4枯渇対応やIPv6導入の留意点 Copyright © 2012 INTEC Inc. All Rights Reserved. 14
  • 16. IPv4アドレス枯渇の影響 IPv4インターネット IPv6インターネット 企業支店 海外支店 × IPv4ユーザ × × IPv6ユーザ 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. 15
  • 17. ネット環境の変化によるアプリの問題 ①IPv4枯渇によるNATの 三つの要因 多段化 ②IPv4・IPv6混在環境 ③アプリのIPv6対応 ①による問題 • アプリが動かなくなる サーバ側 • コンテンツの表示が不完全になる • コンテンツの表示が遅くなる • 送信元IPによる利用者特定が出来 なくなる ③による問題 • ミドルウェアなどのIPv6対 ②による問題 応版への更新が必要になる • 端末から繋がらなくなる • IPv4依存コードの修正が必 要になる インターネット • IPv6アドレスのデータ形式 イントラネット ①による問題 への対応が必要になる • UPnP(NAT越え)によるP2Pが繋がら • OSにより挙動が異なる場合、 なくなる アプリの移植性が低下する ②による問題 ②による問題(インターネット利用の場合) • サーバに繋がらなくなる • サーバに繋がらなくなる • 環境によりレスポンスがまちまち • 環境によりレスポンスがまちまち クライアント側 Copyright © 2012 INTEC Inc. All Rights Reserved. 16
  • 18. 典型例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. 17
  • 19. 典型例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(), in et_ntop(), inet_pton(), addr_ntoa(), network(), getservbyport(), gethostbyname(), gethostbyname2(), ge thostbyaddr(), getservbyname(), in_addr ●推奨関数・構造体 sockaddr_storage, getaddrinfo(), getnameinfo() Copyright © 2012 INTEC Inc. All Rights Reserved. 18
  • 20. CGN導入による課題(IPv4だけでも問題がある例) CGNの導入により機能が制限される  多数セッションを使うWEBコンテンツが見えない(地図など)  アクセス解析が出来ない WEBサーバ側の変更が必要になります 現在のインターネット CGNの利用 拠点にひとつ以上のグローバルアドレス 複数拠点で同一グローバルアドレスを共有 インターネットサーバ インターネットサーバ 1つのグローバル インター アドレスで複数の ネット CGN 拠点(他社の拠点 や一般家庭)を代 表 NAT NAT NAT NAT NAT NAT グローバルアドレス プライベートアドレス Copyright © 2012 INTEC Inc. All Rights Reserved. 19
  • 22. IPv6対応手順概要 基本方針設計 方針 経営判断 基本方針策定 計画・ロードマップ策定 現場の意向 拡張計画 インターネットエリアIPv6対応 動向 IPv4アドレス枯渇 ネットワーク サーバ アプリケーション IPv6技術 調査 調査 調査 業界動向 設計 設計 改修 現状調査 構築 構築 導入 人 ネットワーク 材 育 サーバ 成 クライアント 周辺機器 社内網IPv6対応 アプリケーション ネットワーク 端末・サーバ・周辺機器 アプリケーション ミドルウェア 調査 調査 調査 設計 設計 改修 構築 構築 導入 Copyright © 2012 INTEC Inc. All Rights Reserved. 21
  • 23. 動作前提が変わることをうけて・・・ • インターネット環境が多様化していることを前提とする – IPv4枯渇対策ネットワーク(多段NAT) – IPv6ネットワーク • シングルスタック、デュアルスタック – IPv4からIPv6への移行途中のネットワーク 現在 IPv4アプリ トランスポートプロトコル TCP,UDP,Others) IPv4 プロトコル 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. 22
  • 24. わかっていれば大丈夫 • IPv6のアドレスの長さや表記方法 – 入出力は万全か – 格納領域は万全か • 処理順序 – IPv6を優先、だめだったらIPv4へ – (IPv6がない環境だったら、ポリシー設定で逃げるなど対策もあ る) • DNSにはIPv6専用のレコード(AAAA)がある – IPv4しかない環境でDNSを参照してもAAAAが返答されることがある – IPv6のレコードを返答させるには、EDNS0という対応が必要。この 運用がされていない環境ではエラーになることもある • 確認方法もIPv6対応版で – traceroute,ping等はIPv6オプションを使って確認 – ICMPv6ではエラーの種類や数も豊富になっている Copyright © 2012 INTEC Inc. All Rights Reserved. 23
  • 25. 生き残るアプリ開発のために(1) IPv6対応に必要な準備作業 データテーブル/データファイル/外部システムの ア プ リ ケ ー シ ョ ン データ取り扱い、ログ出力、アクセス制御、認証、 1 の仕様確認 名前解決、タイムアウト制御、GUI、帳票などでの IPアドレスの扱い方を確認 ハードウェア、ソフトウェア、外部システムとのイ 2 システム構成確認 ンタフェースなどにおけるIPアドレスの扱い方を確 認 ロジック/アルゴリズム、記述方法、API/オブジェ 3 実装方法の確認 クト、設定、IPv4依存コードの有無などの確認 運用保守ツール、監視ツール、設定、利用内容にお 4 運用方法の確認 けるIPアドレスの扱い方を確認 5 開発環境の確認 開発言語、実装開発環境、テスト環境などの確認 IPv6 対 応 方 針 、 内 IPv6導入シナリオ、スケジュール、問題発見時の対 6 容決定 応方針、マイルストンなどの確認 Copyright © 2012 INTEC Inc. All Rights Reserved. 24
  • 26. 生き残るアプリ開発のために(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. 25
  • 27. 生き残るアプリ開発のために(3) 既存のプログラムを改修する場合の改修ポイント <IPv4依存アプリケーションプログラムの例> 1 IPv4アドレスが直書きしてあるプログラム 2 IPv4アドレス自体をデータとして扱うプログラム 3 IPv4のアドレス範囲により、動作を変えるプログラム 4 IPv4依存関数、ライブラリなどを利用しているプログラム 5 OSやミドルウェアにIPv4の依存性があるプログラム “IPv4依存“から脱却 Copyright © 2012 INTEC Inc. All Rights Reserved. 26
  • 28. 参考書 • 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. 27
  • 29. 開発言語のIPv6対応状況 ③による問題 • IPv4依存コードの修正が必要になる 言語 IPv6対応状況 プロトコル依存(関数やマク プロトコル非依存 ロ) C OSのsocketAPIの対応状況によ inet_addr, inet_aton, in_inaof, sockaddr_strage, る in_makeaddr, inet_netof, inet_network, getaddrinfo, getnameinfo C++ inet_ntoa, inet_ntop, inet_pton, addr, C# ntoa, network, getservbyport, IPv6対応のバージョンの開発言語 gethostbyname, gethostbyname2, にしただけでは、IPv6では動かな gethostbyaddr, getservbyname, い場合がある sockaddr_in, structsockaddr, structin_addr, INADDR_LOOPBACK, IPv4しか使えない関数やIPv6しか INADDR_ANY, IP_TTL, rresvport, rcmd, 使えない関数がある事に注意 AF_INET, PF_INET Java SolarisとLinux :J2SE 1.4以 Inet4Address, Inet6Address InetAddress 降 (IPv6対応版から新設) Windows:J2SE 5.0 以降 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_DNS Copyright © 2012 INTEC Inc. All Rights Reserved. 28
  • 30. ミドルウェアなどのIPv6対応状況 アプリのIPv6対応による問題 • ミドルウェアなどのIPv6対応版への更新が必要になる カテゴリ 製品名 IPv6対応状況※(バージョン) 開発・実行環境 .NET ×:1.0 ○:1.1以降 サーブレットエンジン Tomcat ×:JavaVM1.41○:JavaVM1.4.2以降 データベース Oracle ×:9i △:10g ○:11gR2以降 データベース SQL ? ミドルウェア MQ ? ミドルウェア Tuxedo ? ERPパッケージ SAP ×:4.7 ×:6.0 ○:7.10以降 webサーバ apache ×:1.2.x △:1.3.x ○:2.0以降 webサーバ IIS ? ※ ×は未対応、△は機能制限あり、○はIPv6対応 Copyright © 2012 INTEC Inc. All Rights Reserved. 29
  • 31. 最近の話題(1) • IPv6→IPv4フォールバックに関する問題 – デュアルスタック環境では、IPv6接続を試してNGだった場 合にIPv4で接続することを推奨 – IPv6の接続がない場合、IPv6が閉域網の場合(フレッツ、 ULA)などでは遅延、接続エラーとなる – ロードバランサなどのミドルウェアのDNSの実装不具合の影 響によってフォールバックできないことがある – フォールバックしないアプリケーション、開発言語 – 遅延については、WEBコンテンツプロバイダなどから 「Happy Eyeball」と呼ばれる手法の提案がされている • IEやFirefoxではこれから提供 Copyright © 2012 INTEC Inc. All Rights Reserved. 30
  • 32. 最近の話題(2) • DNSを利用しないケース – 組み込み系やDNSを信用していないアプリケーションでは直 接IPアドレスを埋め込んでいるケースがある – 名前解決にかかる時間の短縮のためにDNSとは別の仕組みを 取り入れているアプリケーション(OSSのブラウザなど)が ある – コードをみないとわからない場合があるため、トラブル シュートに時間がかかる Copyright © 2012 INTEC Inc. All Rights Reserved. 31
  • 33. 4.まとめ Copyright © 2012 INTEC Inc. All Rights Reserved. 32
  • 35. (ご参考)IPv4アドレス枯渇対応アプリケーションチェックリスト • アプリケーション側からみたIPv4アドレス枯渇対応策 – 2011年秋に更新 (α4版) • IPv4枯渇時期のインターネットの変化のアプリケーションへの影響を分析 • アプリケーションとしてチェックしなければならない個所をリストアップ • 主要なミドルウェア、フレームワーク、DBなどの対応表作成 • インテックのWebからダウンロード提供(α4版) – http://www.intec.co.jp/technology/technology/news/pdf/ipv4_app_check_list_2011 0831.pdf Copyright © 2012 INTEC Inc. All Rights Reserved. 34
  • 36. IPv6普及・高度化推進協議会 • IPv4/IPv6共存WG内に「アプリケーションのIPv6対応検討 SWG」設立 アプリケーションの IPv6対応検討SWG http://www.v6pc.jp/jp/wg/index.phtml Copyright © 2012 INTEC Inc. All Rights Reserved. 35
  • 37. Copyright © 2012 INTEC Inc. All Rights Reserved. 36