Submit Search
Upload
OSC2015 Hamanako IPv6アプリの作り方
•
6 likes
•
3,426 views
V
v6app
Follow
OSC2015 Hamanakoにて行ったセミナーの配布資料です。
Read less
Read more
Technology
Slideshow view
Report
Share
Slideshow view
Report
Share
1 of 37
Download now
Download to read offline
Recommended
20150312 html5とか勉強会-lt-開発者に知ってほしいi pv6のこと
20150312 html5とか勉強会-lt-開発者に知ってほしいi pv6のこと
v6app
IPv6 アプリケーション開発入門
IPv6 アプリケーション開発入門
v6app
20150227 IPv6 Summit in FUKUI 2015 IPv6対応webサービスの作り方
20150227 IPv6 Summit in FUKUI 2015 IPv6対応webサービスの作り方
v6app
20141023 IPv6 Summit in FUKUOKA 2014 IPv6対応Webサービスの作り方
20141023 IPv6 Summit in FUKUOKA 2014 IPv6対応Webサービスの作り方
v6app
これからのアプリ開発はIPv6対応で行こう!(2014/09/20 OSC Hiroshima版)
これからのアプリ開発はIPv6対応で行こう!(2014/09/20 OSC Hiroshima版)
v6app
IPv6 最新動向 〜世界共通語で最適化が進むインターネット〜
IPv6 最新動向 〜世界共通語で最適化が進むインターネット〜
Akira Nakagawa
Internet Week 2016 セッション総括 「IPv6関連3セッション」
Internet Week 2016 セッション総括 「IPv6関連3セッション」
Akira Nakagawa
IPv6技術標準化の最新動向
IPv6技術標準化の最新動向
Shinsuke SUZUKI
Recommended
20150312 html5とか勉強会-lt-開発者に知ってほしいi pv6のこと
20150312 html5とか勉強会-lt-開発者に知ってほしいi pv6のこと
v6app
IPv6 アプリケーション開発入門
IPv6 アプリケーション開発入門
v6app
20150227 IPv6 Summit in FUKUI 2015 IPv6対応webサービスの作り方
20150227 IPv6 Summit in FUKUI 2015 IPv6対応webサービスの作り方
v6app
20141023 IPv6 Summit in FUKUOKA 2014 IPv6対応Webサービスの作り方
20141023 IPv6 Summit in FUKUOKA 2014 IPv6対応Webサービスの作り方
v6app
これからのアプリ開発はIPv6対応で行こう!(2014/09/20 OSC Hiroshima版)
これからのアプリ開発はIPv6対応で行こう!(2014/09/20 OSC Hiroshima版)
v6app
IPv6 最新動向 〜世界共通語で最適化が進むインターネット〜
IPv6 最新動向 〜世界共通語で最適化が進むインターネット〜
Akira Nakagawa
Internet Week 2016 セッション総括 「IPv6関連3セッション」
Internet Week 2016 セッション総括 「IPv6関連3セッション」
Akira Nakagawa
IPv6技術標準化の最新動向
IPv6技術標準化の最新動向
Shinsuke SUZUKI
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応
v6app
IPv6標準化と実装
IPv6標準化と実装
Shinsuke SUZUKI
Lightweight Language Diverプレゼン資料:アプリケーションのIPv6対応のススメ(LL編)
Lightweight Language Diverプレゼン資料:アプリケーションのIPv6対応のススメ(LL編)
v6app
IPv6勉強会のご紹介
IPv6勉強会のご紹介
Syuichi Murashima
IPv6時代のWebアプリケーション&プラットフォーム 2014
IPv6時代のWebアプリケーション&プラットフォーム 2014
v6app
IPv6って何?(拡張ヘッダ編)
IPv6って何?(拡張ヘッダ編)
nemumu
ソフトウェアエンジニアと高位合成
ソフトウェアエンジニアと高位合成
Kenichiro MITSUDA
SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~
SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~
NTT DATA OSS Professional Services
コミュニケーションソフトウェアを創るということ
コミュニケーションソフトウェアを創るということ
Kazuho Oku
nanapiにおける継続的インテグレーション
nanapiにおける継続的インテグレーション
晃 遠山
20180601 OWASP Top 10 2017の読み方
20180601 OWASP Top 10 2017の読み方
OWASP Nagoya
WordPress サイト制作におけるデプロイメントを考える ~Git とデプロイメントサービスの活用~
WordPress サイト制作におけるデプロイメントを考える ~Git とデプロイメントサービスの活用~
Toru Miki
Robomec2014 rtm講習会第1部(その1)
Robomec2014 rtm講習会第1部(その1)
openrtm
デベロッパープロダクトシステムの マイクロサービス化
デベロッパープロダクトシステムの マイクロサービス化
LINE Corporation
データビジュアライゼーションもくもく会
データビジュアライゼーションもくもく会
dsuke Takaoka
fluxflex meetup in Tokyo
fluxflex meetup in Tokyo
Kyosuke Inoue
Hbstudy41
Hbstudy41
kikumoto
JPC2016: PUP-02: 今すぐできるソフトウェア資産を活かした Azure ビジネス展開 ~ ソフトウェア資産をお持ちの方も利用する方も ~
JPC2016: PUP-02: 今すぐできるソフトウェア資産を活かした Azure ビジネス展開 ~ ソフトウェア資産をお持ちの方も利用する方も ~
MPN Japan
Movable Type Data API Swiftアプリ作成事例
Movable Type Data API Swiftアプリ作成事例
FromF
座談会資料(趣旨説明資料) 20161117
座談会資料(趣旨説明資料) 20161117
知礼 八子
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
Yuki Kikuchi
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
Hiroki Ichikura
More Related Content
Similar to OSC2015 Hamanako IPv6アプリの作り方
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応
v6app
IPv6標準化と実装
IPv6標準化と実装
Shinsuke SUZUKI
Lightweight Language Diverプレゼン資料:アプリケーションのIPv6対応のススメ(LL編)
Lightweight Language Diverプレゼン資料:アプリケーションのIPv6対応のススメ(LL編)
v6app
IPv6勉強会のご紹介
IPv6勉強会のご紹介
Syuichi Murashima
IPv6時代のWebアプリケーション&プラットフォーム 2014
IPv6時代のWebアプリケーション&プラットフォーム 2014
v6app
IPv6って何?(拡張ヘッダ編)
IPv6って何?(拡張ヘッダ編)
nemumu
ソフトウェアエンジニアと高位合成
ソフトウェアエンジニアと高位合成
Kenichiro MITSUDA
SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~
SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~
NTT DATA OSS Professional Services
コミュニケーションソフトウェアを創るということ
コミュニケーションソフトウェアを創るということ
Kazuho Oku
nanapiにおける継続的インテグレーション
nanapiにおける継続的インテグレーション
晃 遠山
20180601 OWASP Top 10 2017の読み方
20180601 OWASP Top 10 2017の読み方
OWASP Nagoya
WordPress サイト制作におけるデプロイメントを考える ~Git とデプロイメントサービスの活用~
WordPress サイト制作におけるデプロイメントを考える ~Git とデプロイメントサービスの活用~
Toru Miki
Robomec2014 rtm講習会第1部(その1)
Robomec2014 rtm講習会第1部(その1)
openrtm
デベロッパープロダクトシステムの マイクロサービス化
デベロッパープロダクトシステムの マイクロサービス化
LINE Corporation
データビジュアライゼーションもくもく会
データビジュアライゼーションもくもく会
dsuke Takaoka
fluxflex meetup in Tokyo
fluxflex meetup in Tokyo
Kyosuke Inoue
Hbstudy41
Hbstudy41
kikumoto
JPC2016: PUP-02: 今すぐできるソフトウェア資産を活かした Azure ビジネス展開 ~ ソフトウェア資産をお持ちの方も利用する方も ~
JPC2016: PUP-02: 今すぐできるソフトウェア資産を活かした Azure ビジネス展開 ~ ソフトウェア資産をお持ちの方も利用する方も ~
MPN Japan
Movable Type Data API Swiftアプリ作成事例
Movable Type Data API Swiftアプリ作成事例
FromF
座談会資料(趣旨説明資料) 20161117
座談会資料(趣旨説明資料) 20161117
知礼 八子
Similar to OSC2015 Hamanako IPv6アプリの作り方
(20)
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応
IPv6標準化と実装
IPv6標準化と実装
Lightweight Language Diverプレゼン資料:アプリケーションのIPv6対応のススメ(LL編)
Lightweight Language Diverプレゼン資料:アプリケーションのIPv6対応のススメ(LL編)
IPv6勉強会のご紹介
IPv6勉強会のご紹介
IPv6時代のWebアプリケーション&プラットフォーム 2014
IPv6時代のWebアプリケーション&プラットフォーム 2014
IPv6って何?(拡張ヘッダ編)
IPv6って何?(拡張ヘッダ編)
ソフトウェアエンジニアと高位合成
ソフトウェアエンジニアと高位合成
SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~
SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~
コミュニケーションソフトウェアを創るということ
コミュニケーションソフトウェアを創るということ
nanapiにおける継続的インテグレーション
nanapiにおける継続的インテグレーション
20180601 OWASP Top 10 2017の読み方
20180601 OWASP Top 10 2017の読み方
WordPress サイト制作におけるデプロイメントを考える ~Git とデプロイメントサービスの活用~
WordPress サイト制作におけるデプロイメントを考える ~Git とデプロイメントサービスの活用~
Robomec2014 rtm講習会第1部(その1)
Robomec2014 rtm講習会第1部(その1)
デベロッパープロダクトシステムの マイクロサービス化
デベロッパープロダクトシステムの マイクロサービス化
データビジュアライゼーションもくもく会
データビジュアライゼーションもくもく会
fluxflex meetup in Tokyo
fluxflex meetup in Tokyo
Hbstudy41
Hbstudy41
JPC2016: PUP-02: 今すぐできるソフトウェア資産を活かした Azure ビジネス展開 ~ ソフトウェア資産をお持ちの方も利用する方も ~
JPC2016: PUP-02: 今すぐできるソフトウェア資産を活かした Azure ビジネス展開 ~ ソフトウェア資産をお持ちの方も利用する方も ~
Movable Type Data API Swiftアプリ作成事例
Movable Type Data API Swiftアプリ作成事例
座談会資料(趣旨説明資料) 20161117
座談会資料(趣旨説明資料) 20161117
Recently uploaded
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
Yuki Kikuchi
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
Hiroki Ichikura
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
FumieNakayama
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
Hiroshi Tomioka
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
sugiuralab
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
UEHARA, Tetsutaro
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
akihisamiyanaga1
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
博三 太田
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
FumieNakayama
Recently uploaded
(9)
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
OSC2015 Hamanako IPv6アプリの作り方
1.
IPv6対応アプリの作り方 (濃縮版) 2015年2月11日 IPv6普及・高度化推進協議会 渡辺 露文 オープンソースカンファレンス2015 Hamanako jus研究会浜松大会
2.
渡辺 露文(わたなべ つゆふみ) Twitter:
@tsuyu23 普段は某SIer勤務 IPv6普及・高度化推進協議会 会員 IPv6導入に起因する問題検討SWG アプリケーションのIPv6対応検討SWG 技術評論社 Software Design誌連載 (2012年12月号∼ 2014年1月号) 2 About me
3.
3 IPv6 ? Internet Protocol
version 6 インターネットの通信に関する規約(RFC791) IPネットワークに接続するには1つ以上のIPアドレスが必要 皆さんが馴染んでいるのはIPv4(例:10.1.2.3) Do you know …
4.
4 Agenda (IPv6の話の前に) ここがヘンだよ!そのコード いまどきのIPv6を知ろう! さあ、アプリケーションをIPv6に対応させよ う!
5.
5 ここがヘンだよ!そのコード IPv6の話の前に…
6.
6 そのコード、イケてない… (1) とある Perl のプログラム use
IO::Socket::IP; $host = “198.51.100.1”; : : my $sock = IO::Socket::IP->new( PeerAddr => $host, PeerPort => $port, Proto => 'tcp' ) or die “Error: $!n”; : :
7.
7 このコード、イケてない… (2) とある Androidプログラミング書籍に おけるソケット通信のサンプルコード public class
SocketEx… … … ��private final static String IP=“192.168.11.12”;//★変更必須 良い子は真似しちゃダメ
8.
8 どこがイケてない (というかヘン)? IPアドレスのハードコーディングは NG! $host = www.example.com のようにFQDNで接続先を指定する ダメ。ゼッタイ。
9.
Internet 9 ネットワークアクセスの 作法=名前解決を使う Client Web Server www.example.jp 2001:db8:100::1 192.0.2.1 DNS Server 198.51.100.53 ①名前解決問合せ www.example.jp
? ②アドレス応答 www.example.jp 2001:db8:100::1 192.0.2.1 ③HTTP通信 FQDN FQDNで接続先を指定し、DNSからアドレス取得
10.
10 なぜIPアドレス直書きが ダメなのか? アプリケーションは、IPアドレスに依存すべきではない 目的 変更・改修の理由 アプリケーション 機能の提供
■ 業務要件の変更 ■ サービス内容の変更 ■ ユーザビリティ向上 …,etc. インフラ 資源の提供 ■ 資源管理(IPアドレス、サーバラック…) ■ 性能 互いに変更の影響を受けるべきではない 同一システムでも変更・改修の理由・時期は異なる 例)IPアドレスでユーザを識別すべきではない
11.
11 いまどきのIPv6を知ろう!
12.
最近のOS Windows Vista以降 Mac OS
X Linux FreeBSD … 12 実はIPv6を使える環境が 増えています(1) いずれも デフォルトで 利用可能
13.
インターネット回線 フレッツ光ネクスト au ひかり NURO 光 … 13 実はIPv6を使える環境が 増えています(2) 利用可能 既存ユーザへの自動導入も 進行中 すでに、ユーザからあなたのサービスにIPv6で アクセスされようとしている…かもしれない
14.
14 日本におけるIPv6の普及 状況 フレッツ光ネクストのIPv6普及率 (2014年9月) IPv6普及率:3.9% フレッツ光ネクスト契約数:15,805,000契約 au ひかりのIPv6普及率(2014年9月):99% 今後本格的に普及する前に IPv6対応を始めたほうが良い 出典:IPv6普及・高度化推進協議会 アクセス網におけるIPv6普及状況調査 http://v6pc.jp/jp/spread/ipv6spread_03.phtml
15.
15 余談:確認してみよう! IPv6でインターネットにアクセス できるかな? Webブラウザで http://www.test-ipv6.jp にアクセス Webブラウザで
http://www.kame.net にアクセス IPv6でアクセスすると、 亀が踊ります♪
16.
16 IPv6の背景: IPv4アドレス枯渇 IPv4アドレスの在庫状況 (地域インターネットレジストリ) 通信事業者、ISP、 データセンター、 クラウド事業者等の 在庫が残るのみ 世界的に足りなくなってきている
17.
17 IPv4とIPv6とでは何が 違うのか?① アドレス体系が異なる(IPv6のアドレス空間は広大) 例 IPv4)192.0.2.1 IPv6完全表記) 2001:0db8:0000:0000:0001:0000:0000:0001 IPv6省略表記)2001:db8::1:0:0:1 (RFC5952準拠) IPv4アドレス IPv6アドレス アドレス長 32bit
128bit 文字列 表記 表記法 8bitずつ区切り、 10進数で表記 16bitずつ区切り、 16進数で表記 区切り文字 . (ドット) : (コロン) 文字列長 15文字以内 39文字以内
18.
グローバルスコープ IPv4とIPv6とでは何が違 うのか?② 18 リンクローカルスコープリンクローカルアドレス fe80::/10 ユニークローカルアドレス fc00::/7 グローバルユニキャストアドレス 2000::/3 IPv6では1つのNICに複数のアドレスを 有効範囲に応じて割当て、使い分ける
19.
19 IPv4とIPv6の関係 優先順位が変わるケースもある デフォルトを変更している環境 RFC6724に準拠していない実装 IPv4とIPv6は互換性がない IPv6 > IPv4
20.
20 IPv4とIPv6の接続性 Internet IPv4対応 (IPv6非対応) システム IPv4/IPv6 両対応システム IPv6対応 (IPv4非対応) システム (1) (2) (3) IPv4端末 IPv4/IPv6 両対応端末 IPv6端末 IPv4 IPv6
21.
21 IPv6に対応しない場合の 影響 1. IPv6のみの環境と通信できない ビジネス機会を損失する システム連携が行えず要件を満たせなくなる 2. 今後、IPv4はサービスレベルが低下していく 通信事業者等によるCGN(Carrier
Grade NAT) 導入により、遅くなり、使用できるセッション数 が減る可能性がある IPv6に対応しなきゃ!
22.
22 IPv6対応アプリの重要性 ネットワークとサーバがIPv6に対応すれば、IPv6で接 続可能 接続は可能だが… アプリが固まる システム連携がうまくいかない 想定外の挙動をする … アプリケーションもIPv6に対応しなきゃ! アプリが動作しなければ ユーザは利用できない
23.
23 もはやIPv6対応しないと 時代遅れ?(1) 先日のGHOST騒ぎ… 脚注部分に注目! 「gethostbyname 関数は、 IPv6 の登場によりあまり利用されなく なっている」‼ http://www.ipa.go.jp/security/announce/20150129-glibc.html
24.
24 もはやIPv6対応しないと 時代遅れ?(2) GHOSTネタをもう一つ http://blog.trendmicro.co.jp/archives/10818 多くの新しいアプリケー ションでは、この脆弱な 「gethostbyname*()」関数ではなく、 IPv6をサポートする関数 「getaddrinfo()」を使用しているも のと考えられます
25.
25 さあ、アプリケーションを IPv6に対応させよう! ここからが本題
26.
26 アプリケーションIPv6対 応の基本方針 IPv6対応 = IPv4とIPv6の両方で動作する シングルソースコードで対応
27.
27 アプリケーションのIPv6 対応のポイント Ethernet IP(v4/v6) TCP / UDP アプリケーション OS ミドルウェア/ フレームワーク アプリケーション OS フレームワーク HTTP/HTTPS SMTP,
SSH, ソケット通信など クライアント サーバ ①IPv4/IPv6両対応のプログラミング言語と実行環境を使う ②通信処理をIPv4/IPv6の 両方に対応させる ③データとしてIPアドレスを 扱う箇所をIPv4/IPv6の 両方に対応させる
28.
28 ポイント① IPv4/IPv6両対応のプ ログラミング言語と実行環境を使う プログラミング言語と実行環境におけるIPv4/ IPv6両対応とは? 名前解決機構が IPv4/IPv6両方のアドレスを適切に扱える IPv4/IPv6両方で通信できる これらを満たすプログラミング言語、実装環境を利用する 例)C言語: gethostbyname()
ではなく、 getaddrinfo()
29.
29 ポイント② 通信処理をIPv4/ IPv6の両方に対応させる(1) サーバプログラム IPv4/IPv6 両プロトコルでの接続を 受付けられるようにする クライアントプログラム IPv4/IPv6
両宛先アドレスに接続できるようにする 接続できない状況も想定し、接続失敗時には別の 宛先アドレスに切替えて接続する(フォールバック) IPv6 IPv6 IPv4 IPv4 Client Server アプリケーションの作りが悪いと… ■ 切替えに時間がかかる ■ 正常に切替わらないこともある ユーザの利便性を損なう
30.
30 ポイント② 通信処理をIPv4/ IPv6の両方に対応させる(2) フォールバック 接続できない場合に、別の接続先への接続に切替える動作 Client Web Server www.example.jp DNS
Server www.example.jp IN AAAA 2001:db8:100::1 www.example.jp IN A 192.0.2.1 ①名前解決問合せ www.example.jp ? ②AAAA応答 2001:db8:100::1 A応答 192.0.2.1 ③HTTP通信(IPv6) 2001:db8:100::1 192.0.2.1 2001:db8:ffff::1 198.51.100.1 ④HTTP通信(IPv4) フォールバック
31.
31 ポイント③ データとしてIPアドレス を扱う箇所をIPv4/IPv6の両方に 対応させる 入力はユーザに配慮しつつ、値の検証をしっかり行う IPアドレス型もしくは、完全表記(文字列長39文字) を文字列型で扱う 見やすさを求めるときは省略表記(RFC5952)で出力 入力出力 整列 検索 格納
32.
32 おわりに
33.
33 まとめ(1) IPアドレスのハードコーディングはダメ。ゼッタイ。 IPv6を使える環境が増えている IPv4とIPv6の違い:アドレス体系が異なる , etc.
互換性なし IPv6対応の基本方針 IPv6対応=IPv6/IPv4の両方で動作させること シングルソースコードで対応する
34.
34 まとめ(2) IPv6対応のポイント 1. IPv4/IPv6両対応のプログラミング言語と実行環 境を使う 2. 通信処理をIPv4/IPv6の両方に対応させる 3.
データとしてIPアドレスを扱う箇所をIPv4/IPv6の 両方に対応させる 決して難しくない! 今日から開発するアプリケーションは IPv6に対応させよう!
35.
35 つづきはWebで (参考文献) 「アプリケーションのIPv6対応ガイドライン 基礎編」/IPv6 普及・高度化推進協議会 IPv4/IPv6共存WG
アプリケーションの IPv6対応検討SWG http://www.v6pc.jp/jp/entry/wg/2012/12/ipv610.phtml 「アプリケーションのIPv6対応ガイドライン Webアプリ編 (案)」/IPv6普及・高度化推進協議会 IPv4/IPv6共存WG アプリケーションのIPv6対応検討SWG http://www.v6pc.jp/jp/entry/wg/2014/06/ipv6web.phtml Internet Week 2013「T2 アプリケーション・サービスのIPv6対 応」 軽量プログラミング言語のIPv6対応 Perl編 https://www.nic.ad.jp/ja/materials/iw/2013/proceedings/t2/t2-watanabe-2.pdf 軽量プログラミング言語のIPv6対応 PHP編 https://www.nic.ad.jp/ja/materials/iw/2013/proceedings/t2/t2-hatano-2.pdf
36.
次は東京で会いましょう! 36
37.
37 ご清聴いただき、 ありがとうございました
Download now