Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
IPv6が使われていない理由を探した
Search
Kaoru Nagashima
March 09, 2019
Science
0
1.6k
IPv6が使われていない理由を探した
Fukuoka Perl Workshop #28 むりやり蘇生!!スペシャルの発表資料です
Kaoru Nagashima
March 09, 2019
Tweet
Share
More Decks by Kaoru Nagashima
See All by Kaoru Nagashima
ワンライナーでちょっと楽に確認するNOSコンフィグ
nkchan
0
21
サーバに全力で名前をつけている話
nkchan
0
400
What is Lightning talk ?
nkchan
0
1.2k
Invitation of Community activities
nkchan
0
1.1k
Other Decks in Science
See All in Science
ウェーブレットおきもち講座
aikiriao
1
810
3次元点群を利用した植物の葉の自動セグメンテーションについて
kentaitakura
2
750
Factorized Diffusion: Perceptual Illusions by Noise Decomposition
tomoaki0705
0
290
学術講演会中央大学学員会大分支部
tagtag
0
100
Causal discovery based on non-Gaussianity and nonlinearity
sshimizu2006
0
210
学術講演会中央大学学員会八王子支部
tagtag
0
260
Online Feedback Optimization
floriandoerfler
0
710
Pericarditis Comic
camkdraws
0
1.5k
白金鉱業Meetup Vol.15 DMLによる条件付処置効果の推定_sotaroIZUMI_20240919
brainpadpr
2
630
The thin line between reconstruction, classification, and hallucination in brain decoding
ykamit
1
1.1k
事業会社における 機械学習・推薦システム技術の活用事例と必要な能力 / ml-recsys-in-layerx-wantedly-2024
yuya4
3
270
重複排除・高速バックアップ・ランサムウェア対策 三拍子そろったExaGrid × Veeam連携セミナー
climbteam
0
150
Featured
See All Featured
Making the Leap to Tech Lead
cromwellryan
133
9k
Faster Mobile Websites
deanohume
305
30k
Learning to Love Humans: Emotional Interface Design
aarron
274
40k
Six Lessons from altMBA
skipperchong
27
3.5k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
3
350
A Philosophy of Restraint
colly
203
16k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
560
Measuring & Analyzing Core Web Vitals
bluesmoon
5
200
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
490
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
127
18k
Building Better People: How to give real-time feedback that sticks.
wjessup
366
19k
Transcript
IPv6が使われていない理由を探した 永島薫<Kaoru Nagashima> Twitter : @kaoru_nkchan Fukuoka Perl Workshop #28@ヌーラボ
~Perlのことも調査してみて思ったこと~
自己紹介 • 名前 : 永島 薫 <Kaoru Nagashima> • あだな:
なかっちゃん • 九州工業大学情報工学部B4 Next → 九州工業大学大学院 • 普段やっていること • ネットワークお勉強 IPv6 , IEE802.11系, • Juniperのルーターが好き(この前惚れた) • Perl入学式福岡サポーター • 旅行 • 将来やりたいこと • ネットワークの(研究?)開発 • BGPとかIXとかインターネットの上流が見てみたいし管理してみたい Twitter: @kaoru_nkchan Github: nkchan Kaoru Nagashima @kaoru_nkchan 2
今日の話の概要 • IPv6ってアドレスは降ってきてるけど, サービス側対応してなくない? • じゃあまずは,今のIPv6の対応状況調べてみよう • んでんでPerlの各種サイトやモジュールって どうなってるんだ?(5分くらい??) Kaoru
Nagashima @kaoru_nkchan 3
目次 4 Kaoru Nagashima @kaoru_nkchan 1. なぜIPv6の使用状況が気になったのか 2. インターネットIPv6の対応状況 3.
Perl関連のIPv6対応状況 4. おわりに
なぜIPv6の使用状況が気になったのか
それは卒論用の実機検証中のこと • 検証は大学の実ネットワーク(IPv6 Only)で行った • ラズパイにセンサーを付けてデータ収集とかしました • その際,ネットワーク内の機器はIPv6アドレスでインターネットへ • もちろん自分の端末もグローバルIPv6アドレスを振っていた
→ あれ? IPv6で見れるサイト少なくない?????? ちなみにUbuntuのアップデートもできません(× jp.archive.ubuntu.com) Kaoru Nagashima @kaoru_nkchan 6
なんでこんなにも繋がらないんだ?? • 何かを調べようとする→繋がらない • 別の端末でIPv4で外へ • 大学のIPv4とv6は完全に独立している(デュアルスタックではない) • これもしかして,今の状況しりたい! •
結局どれくらいのサイトがIPv6に対応しているの??? • Perlはどうなってるの??? • IPv6で使える状態にないとIPv6 Only環境でPerlという選択肢が 減ってしまう(軽いスクリプトでもモジュール使えないとか困る) Kaoru Nagashima @kaoru_nkchan 7
インターネットのIPv6の使用状況
IPv6の対応状況 • 日本のIPv6アドレス対応状況[1](2019/03/04) 49% • とはいえ,この対応状況だけだとよくわからないので 3つの観点が大事 • ユーザ: ユーザの端末がどれくらいIPv6に対応しているのか
• ネットワーク: どれくらいのネットワークがIPv6対応なのか • コンテンツ: どれくらいのコンテンツがIPv6対応なのか • 今日は メイン: コンテンツ サブ: ネットワーク という感じで話します • すでに端末はだいたいIPv6に対応しているので割愛 Kaoru Nagashima @kaoru_nkchan 9 参考文献[1] http://6lab.cisco.com/stats/
観点1: ネットワーク目線 • 各プロバイダーの普及率 • NGN 57.8% • KDDI au光
100% • NGNが頑張ればもっと いい感じになりそう • 右表: Googleサービスへの IPv6アクセスランキング ※トラフィック量のランキング (事業者別)[2] ※ASNs (AS Numbers ) Kaoru Nagashima @kaoru_nkchan 10 参考文献[2]http://www.v6pc.jp/jp/spread/ipv6spread_03.phtml
観点1: ネットワーク目線[3] Kaoru Nagashima @kaoru_nkchan 11
観点2: コンテンツ対応編 対応している上位サイト 対応していない上位サイト google.co.jp yahoo.co.jp so-net.ne.jp amazon.co.jp biglobe.ne.jp fc2.com
yomiuri.co.jp nicovideo.jp softbank.jp rakuten.co.jp smbc-card.com ameblo.jp kddi.com naver.jp sony.jp livedoor.jp nttdocomo.co.jp goo.ne.jp ocn.ne.jp kakaku.com Kaoru Nagashima @kaoru_nkchan 12 参考文献[4]https://www.vyncke.org/ipv6status/detailed.php?country=jp
観点2: 日本のIPv6対応率 • データセンタ事業者全体 21.2% • 売上額100億円超の大規模事業者 35.7% • 中小規模事業者
11.1% • 未検討・検討の上、提供しないとした事業者 52.8% • https://internet.watch.impress.co.jp/docs/event/1157325.html • コンテンツ側が全然対応していない Kaoru Nagashima @kaoru_nkchan 13
観点2: なぜコンテンツはIPv6化されないのか • ネットワーク界隈では5年くらい前から議論がされてきた • JANOG 35: なぜ、IPv6 対応したくないのか •
なんで,コンテンツ事業者はIPv4でコンテンツを提供するのか →ユーザにコンテンツを届けることができれば, 手段はなんでもいい • 今IPv4で動いているサービスのIPv6化 →新しくコンテンツをみることができるようになる人は一握り? お金になるわけでもない… • もちろんユーザがからリクエストがあれは,次にリリースする サービスはIPv6対応でもいいと思っている Kaoru Nagashima @kaoru_nkchan 14
観点2: コンテンツ目線 CDN 各CDNの対応状況 • Akamai 対応!! • Amazon CloudFront
対応!! • Azure CDN 対応!! • CloudFlare 対応!! • さくらインターネット 調べてもわからなかった(ないっぽい?) • Fastly 対応!!(デュアルスタック) • Limelight CDN 対応!!(デュアルスタック) Kaoru Nagashima @kaoru_nkchan 15
ちなみに: • 2016年6月よりAppStoreに登録されるアプリはすべてIPv6へ の対応が必須となる • IPv4でしか動かないアプリは審査に通らないらしい Kaoru Nagashima @kaoru_nkchan 16
なぜIPv4はなくならないのか 17 Kaoru Nagashima @kaoru_nkchan 枯渇する話 IPv4が枯渇しそうという話 延命処置/v4 IPv4不足に伴う延命処置 IPv6とv4の共存技術
IPv6の機構として存在する共存技術 ~段階的なIPv6への移行~
IPv4が枯渇する話[3] Kaoru Nagashima @kaoru_nkchan 18
IPv4が枯渇する話[3] Kaoru Nagashima @kaoru_nkchan 19
IPv4の延命処置 • NAPT • LAN内のPCが一つのグローバルIPを共有して外にでる仕組み • 10.0.0.0/8 • 172.16.0.0/12 •
192.168.0.0/16 • などなど,いろいろな場所で使用されている • 一台一台にグローバルIPが振られている→ネットワークで一つのIP • CGN(Carrier Grade NAT) • プロバイダー単位で行うNAT • ケーブルテレビや携帯電話などに使用されていた • 100.64.0.0/100 • サーバ公開しなかったりするならグローバルIPはいらないだろうという発想 • プロバイダー側でそれなりのセッション情報の保持が必要 Kaoru Nagashima @kaoru_nkchan 20
IPv6とIPv4の共存技術 • DS-Lite(Dual-Stack Lite) • NAT64/DNS64 IPv6ネットワークからIPv4ネットワークへアクセスする方法が2つ ある Kaoru Nagashima
@kaoru_nkchan 21
DS-Lite • IPv4 over IPv6でIPv4をIPv6でカプセル化する • 専用機器が必要 Kaoru Nagashima @kaoru_nkchan
22 参考文献 : IIJ ,https://www.iijmio.jp/guide/outline/ipv6/ipv6_access/dslite/ 専用機器 IX
NAT64/DNS64 • IPv6 Onlyな環境からIPv4ネットワークへの接続技術 Kaoru Nagashima @kaoru_nkchan 23 参考文献: JPNIC:
https://www.nic.ad.jp/ja/newsletter/No64/0800.html 本当にIPv6への移行のための技術 Googleもサービス提供 2001:4860:4860::6464 2001:4860:4860::64
こんな風にIPv6の中でIPv4も まだ使えるようにしている じゃあPerlのIPv6への対応状況は? Kaoru Nagashima @kaoru_nkchan 24
Perl関連のIPv6対応状況
Perlの各種サイトの対応状況 • The Perl Programming Language https://www.perl.org/ • CPAN https://www.cpan.org/src/
• MetaCPAN https://metacpan.org/ • Perldoc https://perldoc.perl.org/perldoc.html • Perldoc(jp) http://perldoc.jp/ Kaoru Nagashima @kaoru_nkchan 26
IPv6: The Perl Programming Language Kaoru Nagashima @kaoru_nkchan 27 nkchan@nk-x1:~$
dig www.perl.org AAAA ; <<>> DiG 9.11.3-1ubuntu1.5-Ubuntu <<>> www.perl.org AAAA ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 32120 ;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 65494 ;; QUESTION SECTION: ;www.perl.org. IN AAAA ;; ANSWER SECTION: www.perl.org. 1795 IN CNAME cdn-fastly.perl.org. cdn-fastly.perl.org. 3595 IN CNAME dualstack.osff.map.fastly.net. dualstack.osff.map.fastly.net. 17 IN AAAA 2a04:4e42:11::729
IPv6: CPAN Kaoru Nagashima @kaoru_nkchan 28 nkchan@nk-x1:~$ dig www.cpan.org AAAA
; <<>> DiG 9.11.3-1ubuntu1.5-Ubuntu <<>> www.cpan.org AAAA ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 1720 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 65494 ;; QUESTION SECTION: ;www.cpan.org. IN AAAA ;; ANSWER SECTION: www.cpan.org. 115 IN CNAME dualstack.osff.map.fastly.net. dualstack.osff.map.fastly.net. 26 IN AAAA 2a04:4e42:11::729
IPv6: MetaCPAN Kaoru Nagashima @kaoru_nkchan 29 nkchan@nk-x1:~$ dig metacpan.org AAAA
; <<>> DiG 9.11.3-1ubuntu1.5-Ubuntu <<>> metacpan.org AAAA ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 22804 ;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 65494 ;; QUESTION SECTION: ;metacpan.org. IN AAAA ;; ANSWER SECTION: metacpan.org. 42496IN AAAA 2a04:4e42:200::729 metacpan.org. 42496IN AAAA 2a04:4e42::729 metacpan.org. 42496IN AAAA 2a04:4e42:600::729 metacpan.org. 42496IN AAAA 2a04:4e42:400::729
IPv6: Perldoc Kaoru Nagashima @kaoru_nkchan 30 nkchan@nk-x1:~$ dig perldoc.perl.org AAAA
; <<>> DiG 9.11.3-1ubuntu1.5-Ubuntu <<>> perldoc.perl.org AAAA ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 25997 ;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 65494 ;; QUESTION SECTION: ;perldoc.perl.org. IN AAAA ;; ANSWER SECTION: perldoc.perl.org. 896 IN CNAME cdn-fastly.perl.org. cdn-fastly.perl.org. 1340 IN CNAME dualstack.osff.map.fastly.net. dualstack.osff.map.fastly.net. 20 IN AAAA 2a04:4e42:11::729
IPv6: Perldoc(jp) Kaoru Nagashima @kaoru_nkchan 31 nkchan@nk-x1:~$ dig perldoc.jp AAAA
; <<>> DiG 9.11.3-1ubuntu1.5-Ubuntu <<>> perldoc.jp AAAA ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 48346 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 65494 ;; QUESTION SECTION: ;perldoc.jp. IN AAAA ;; ANSWER SECTION: perldoc.jp. 300 IN AAAA 2606:4700:30::6812:2711 perldoc.jp. 300 IN AAAA 2606:4700:30::6812:2611 全部対応!!
モジュールは? • とりあえずLinuxコマンド的な動きをしてくれるようなものを 適当に選んで探す • Net::IP IPv6対応 • Net::DNS::Dig IPv6対応
• Net::Whois 非対応 • Net::Ping 対応 • これなにが違うせいで対応,非対応が分かれるのか Kaoru Nagashima @kaoru_nkchan 32
IPv4 OnlyのモジュールとIPv6も使える違い • Socketのお話へ • IPv6対応 • IO::Socket::IP • IO::Socket::INET6
• Soucket6 • IPv6非対応 • IO::Socket::INET • Versionによる • Socket • Perl 5.14付属のSocket 1.94以降はIPv6対応 Socketお前が原因か!! Kaoru Nagashima @kaoru_nkchan 33
おわりに
おわりに • 今日のモチベーション →卒論の検証中に感じたIPv6対応コンテンツの少なさから今 の状況が知りたくなった • 今のインターネットのIPv6普及率 • IPv4の延命とIPv6との共存技術 •
Perlの各サイトのIPv6対応状況 • モジュールがIPv6対応になるにはSocket周りが重要 • じゃあIPv4しかだめなモジュール(IO::Socket::INET)を IPv6対応させるには,みたいは話は進捗を産んで ぼちぼちどこかでしたい Kaoru Nagashima @kaoru_nkchan 35
36 Kaoru Nagashima @kaoru_nkchan 参考文献 補足
37 Kaoru Nagashima @kaoru_nkchan [3]佐藤 晋,IPv6普及状況とIPアドレス最新レポート https://www.iajapan.org/ipv6/summit/MIYAZAKI2017 /pdf/sato_miyazaki2017.pdf
[4]渡辺露文, 軽量プログラミング言語のIPv6対応Perl 編 ,https://www.nic.ad.jp/ja/materials/iw/2013/proc eedings/t2/t2-watanabe-2.pdf 参考文献