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_VPC_の実装パターンをいくつか.pdf
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
hmatsu47
PRO
June 11, 2026
0
0
Share
_再演_IPv6_VPC_の実装パターンをいくつか.pdf
hmatsu47
PRO
June 11, 2026
More Decks by hmatsu47
See All by hmatsu47
名古屋城とデータセンター
hmatsu47
PRO
0
26
IPv6 に関する話
hmatsu47
PRO
0
18
さいきんの光ファイバーの話
hmatsu47
PRO
0
45
低いほうのレイヤを見てみる話
hmatsu47
PRO
0
21
IPv6 VPC の実装パターンをいくつか
hmatsu47
PRO
0
40
光ファイバーと IPv6 絡みの話
hmatsu47
PRO
0
54
AWS で試して学ぶ IPv6
hmatsu47
PRO
0
48
今年の MySQL/HeatWave ネタ登壇振り返り
hmatsu47
PRO
0
45
今年の DB ネタ登壇振り返り
hmatsu47
PRO
0
40
Featured
See All Featured
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
71
40k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.5k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
130
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
260
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.2k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4k
The Spectacular Lies of Maps
axbom
PRO
1
780
WCS-LA-2024
lcolladotor
0
610
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.2k
Mobile First: as difficult as doing things right
swwweet
225
10k
Git: the NoSQL Database
bkeepers
PRO
432
67k
Transcript
【再演】IPv6 VPC の実装パターンをいくつか JAWS-UG 名古屋 5 月会 2026/5/21 まつひさ(hmatsu47)
自己紹介 松久裕保(@hmatsu47) • https://qiita.com/hmatsu47 • 現在: ◦ 名古屋で Web インフラのお守り係をしています
◦ SRE チームに所属しつつ技術検証の支援をしています ◦ 今年はカンファレンス・勉強会では DB 以外の話メインで! 2
本日のお題 • すでに身近なところで使われているのに、あまり馴染み のない IPv6 について、VPC での実装パターン(基礎的な もの)を見ていきます ◦ 先日の「クラウドネイティブ会議」懇親会でも「AWS
って IPv6 対応全然進んでないよね」という古いイメージに基づく 反応が返ってきていましたが… 3
おことわり(1/2) • これは BuriKaigi 2026(1/9)で話した「AWS で試して 学ぶ IPv6」というセッションのダイジェストに、 JAWS-UG 横浜の
re:Invent 2025 re:Cap Network 回 (1/24)で話した IPv6 絡みの話を一部加筆する形で再構 成したもの(2/1 に JAWS-UG 茨城 × CDK 支部コラボ回で発表) をベースに、 4
おことわり(2/2) • 一部を 2025 年末時点の集計値で置き換えたものです ◦ 見覚え・聞き覚えのある方がいたらごめんなさい ◦ なお CDK
に関する部分は省きました 5
詳細はこちらで • BuriKaigi 2026(1/9)で「AWS で試して学ぶ IPv6」と いうタイトルのセッションをしたときの補足資料(Zenn) ◦ https://zenn.dev/hmatsu47/books/burikaigi2026-aws-ipv6-study 6
おしながき • IP アドレス(グローバルアドレス)利用の現況について • ①IPv6 対応前の IPv4 環境について(初期状態) •
②サーバー環境の IPv6 対応(デュアルスタック化) • ③クライアント環境の IPv6 対応(デュアルスタック編) • ④クライアント環境の IPv6 対応(NAT64/DNS64 編) • ⑤サーバー環境のターゲットを IPv6(ULA)化 7 別資料(Zenn)→
IP アドレス(グローバルアドレス) 利用の現況について 8
新規割り当て用 IPv4 アドレスブロックはほぼ枯渇 9 • RIR(地域インターネットレジストリ)の IPv4 アドレス在庫 • AFRINIC(アフリカ地域)
・APNIC(アジア太平洋地域)を 除くと利用可能(Available)な アドレスの在庫はすでに 0 • AFRINIC・APNIC 合計で残り 約 395 万個(2025Q4 時点) 出典 : https://www.nro.net/wp-content/uploads/NRO-Number-Resource-Status-Report-Q4-2025-FINAL.pdf
2024/2 〜 AWS パブリック IPv4 アドレス有料化 • すべてのパブリック IPv4 アドレスの利用に対して
1 IP アドレスあたり 0.005 USD/hour が課金されるように ◦ 2024 年 2 月 1 日より ◦ https://aws.amazon.com/jp/blogs/news/new-aws-public-ipv4-address-cha rge-public-ip-insights/ ◦ CloudFront などはサービス本体の料金以外に課金なし 10
IPv6 アドレスの利用状況は? 11 • 見えないところで利用が進んでいる(日本のケース) • 2023 年に 50% を超えた
• ここ 2 年で IPv6 Capable が 60% に迫っている • モバイルに限ればもっと進ん でいる データの出典 : APNIC Labs Measurements and Data / https://labs.apnic.net/measurements/ IPv6 Capable は「IPv6 に到達できた端末の割合」・IPv6 Preferred は「デュアルスタックで IPv6 が選ばれた割合」
実際のところは 12 • 設備構成はもっと IPv6 対応になっている(はず) ◦ 回線も機器もほとんど IPv6 に対応
▪ 家庭の固定回線は知らないうちに IPv6 で通信可能になっていたり ▪ 企業の固定回線は境界で IPv6 を止めているケースが割とあったり • AWS 上では「Route 53 に AAAA(のエイリアス)レコード を登録していないだけ」のケースも ◦ もったいない…
①IPv6 対応前の IPv4 環境について (初期状態) 13
IPv4 VPC 環境(初期状態) 14 • 2 種類の VPC 環境を作成 ◦
サーバー用 VPC 環境 ▪ VPC・ALB・EC2(Web サーバー)など ◦ クライアント用 VPC 環境 ▪ VPC・VPC エンドポイント ・EC2(クライアント)な ど
サーバー用 VPC および関連リソース 15
クライアント用 VPC・関連リソース 16
②サーバー環境の IPv6 対応 (デュアルスタック化) 17
この構成のねらい • ALB をデュアルスタック化することで、インターネット から IPv4・IPv6 の両方でアクセス可能にする ◦ Web サーバーについては
IPv4 のまま変更なし ◦ ただしアプリケーション側での IPv6 アドレス対応は必要 ▪ 画面表示、データ保存領域、アドレスの比較など 18
サーバー環境の IPv6 対応(デュアルスタック化) 19 IPv6(GUA)割り当て ALBデュアルスタック化 IPv6デフォルトルート追加
ALB のデュアルスタック化 20 • IPv6 は IPv4 とは互換性がない ◦ IPv6
と IPv4 は直接通信を行うことができない • 両方が動作する構成=デュアルスタック ◦ ALB をデュアルスタック化しておけばターゲット Web サーバー を IPv6 対応にする必要はない ▪ ただしアプリケーション側の対応は必要(後述)
IPv6 アドレスの構成 21 • 全 128 ビット・16 ビットずつ「:」区切り・十六進表記 ◦ 前半
64 ビットをサブネットプレフィックス、後半 64 ビットを インターフェース識別子(IID)と呼ぶ ◦ 長くなるので省略ルールがある ▪ 16 ビット区切りのフィールドの先頭で連続する 0 は省略可 ▪ 連続する 16 ビットフィールドの 0 は「::」で省略可(1 か所のみ) • 例:2001:db8::2:0:1/64
IPv6 グローバルユニキャストアドレス(GUA) 22 • 全世界で一意に割り当てられたアドレス ◦ IPv4 のグローバルアドレス相当 • IPv4
のプライベートアドレスに類似のアドレスとして、 ユニークローカルユニキャストアドレス(ULA)がある ◦ ただし IPv6 ULA と GUA の間での NAT は非推奨 ▪ AWS の NAT ゲートウェイでも非サポート ▪ インターネットアクセスが必要なら(本来は)GUA を割り当てる必要がある
アプリケーション側で必要な対応 23 • 文字数が増える分の表示領域・データサイズ調整が必要 ◦ IPv4 ならサブネット長なしで最大 15 文字、ありで最大 18
文字 ◦ IPv6 ではサブネット長なしで最大 39 文字、ありで最大 43 文字 ◦ DB で IP アドレス専用のデータ型を使わない場合も注意 • 文字列として IPv6 を比較する場合、一意な表記(または 省略なしの表記)にしないと正しく比較できない ◦ RFC 5952 で一意に表記する方法が示されている
③クライアント環境の IPv6 対応 (デュアルスタック編) 24
この構成のねらい • プライベートサブネットおよび EC2 クライアントをデュ アルスタック化し、インターネットへ IPv6 アクセス可能 にする ◦
IPv6 用経路として Egress Only インターネットゲートウェイ (EIGW)を作成 25
クライアント環境の IPv6 対応(デュアルスタック) 26 IPv6(GUA)割り当て EIGW作成 IPv6デフォルトルート追加
クライアント環境のデュアルスタック化 • クライアント自身が IPv4・IPv6 それぞれの通信スタック を使って相手のホストと通信する ◦ 外部の IPv4 ホスト宛ての通信は
IPv4 デフォルトルートで NAT ゲートウェイに流す ◦ 外部の IPv6 ホスト宛ての通信は IPv6 デフォルトルートで Egress Only インターネットゲートウェイ(EIGW)に流す ▪ Egress Only インターネットゲートウェイで外からアクセスできないように 27
IPv4・IPv6 のどちらを優先する? • 現在は「IPv4・IPv6 の両方(ほぼ)同時にアクセスを試 行して、最初に応答したほうを選択する」仕組みが主流 ◦ Happy Eyeballs ▪
現在は RFC 8305 によるバージョン 2 が広く使われる ▪ 実質的に IPv6 が優先される ▪ QUIC 対応を意図したバージョン 3 の策定も進行中 ◦ ただしこれが常に適用されるわけではない点に注意 ▪ たとえば NLB → ALB の通信は現状 IPv4 が優先される 28
④クライアント環境の IPv6 対応 (NAT64/DNS64 編) 29
この構成のねらい • IPv6 専用プライベートサブネットからインターネットに IPv4 アクセス可能にする ◦ NAT64/DNS64 を使って NAT
ゲートウェイで IPv6 to IPv4 変換 30
クライアント環境の IPv6 対応(NAT64/DNS64) 31 VPCエンドポイント 付け替え IPv6(GUA)専用サブネット作成 &ルートテーブル作成・ IPv6デフォルトルート追加 EC2(クライアント)起動
サブネット・EC2作成後、 ・NAT64用ルートをルートテーブ ルに追加 ・サブネットでDNS64有効化
NAT64/DNS64 での通信 • EC2(クライアント)から Route 53 VPC Resolver に正引 き
◦ AAAA レコード(IPv6 用)→そのまま IPv6 アドレスを返す ◦ A レコードのみ→「64:ff9b::」に IPv4 アドレスを合成して返す • ルートテーブルにしたがって通信を各ゲートウェイへ ◦ NAT ゲートウェイで「64:ff9b」で始まるアドレス宛ての通信を IPv4 に変換して宛先へ 32
⑤サーバー環境のターゲットを IPv6(ULA)化 33
この構成のねらい • ALB のターゲットを IPv6 専用プライベートサブネットに する ◦ Web サーバーから不要なインターネットアクセスをさせないため
IPv6 アドレスとしてユニークローカルユニキャストアドレス (ULA)を割り当てる ◦ ULA を割り当てるため IP Address Manager(IPAM)を使う 34
サーバー環境のターゲットを IPv6(ULA)化 35 IPv6(ULA)専用サブネット 作成&ルートテーブル作成 &EC2(サーバー)作成 ALBターゲット変更 ULA プール 作成
IPv6(ULA) 割り当て
IP Address Manager(IPAM) 36 • VPC の IP アドレスを計画・追跡・監視しやすくする機能 ◦
機能例 ▪ 組織内の IP アドレス割り当ての履歴を表示する ▪ 特定のビジネスルールを使用して CIDR を VPC に自動的に割り当てる ▪ ネットワーク接続に関する問題のトラブルシューティングを行う ▪ 持ち込み IP(BYOIP)アドレスのリージョン間・アカウント間共有を有効に する ◦ https://docs.aws.amazon.com/ja_jp/vpc/latest/ipam/what-it-is-ipam.html
IPAM からプライベートなアドレスを割り当てる 37 • IPAM から割り当て可能なプライベート「扱い」の IPv6 アドレスは 2 種類
◦ IPv6 ULA(ユニークローカルユニキャストアドレス) ◦ 持ち込み IPv6 GUA(グローバルユニキャストアドレス) ▪ プライベート GUA CIDR を有効化するとプライベート扱いに ▪ インターネットにルート広告しないことで外部との直接アクセスを制限
プライベートなアドレスを割り当てる場合の注意 38 • これらのアドレスを使って IPv6 専用サブネットを作成す ると、EIGW / NAT ゲートウェイ経由のインターネットア
クセスはできない ◦ AWS のサービスは NAT66 / NPTv6 には(今のところは)非対応 ▪ Web サーバーから外部の API にアクセスしたいケースなどでアクセス不可 ▪ AWS のサービスへのアクセスにも NAT ゲートウェイ等は使えない →必要なら VPC に IPv6 の Private なエンドポイントを個々に作成する
NAT66 / NPTv6 39 • IPv6 to IPv6 の NAT
◦ IPv6 の本来の設計思想では IPv6 アドレス間の NAT は非推奨 ◦ ただし IPv4 で NAT をセキュリティ機能的な扱いで利用してきた 経緯から、ユーザーのニーズはある ◦ 一部妥協する形で「IPv6 のサブネットプレフィックスだけ置換 する」NPTv6 が実験的 RFC(6296)として規定された ▪ Linux に実装されているのは NPTv6
どうしても NAT66 / NPTv6 を使いたい場合は 40 • NAT66 / NPTv6
対応アプライアンスを配置 ◦ https://aws.amazon.com/jp/blogs/news/design-and-build-ipv6-internet-inspection-a rchitectures-on-aws ▪ 当然構築・運用管理にコストが掛かる
まずはハンズオンなどで IPv6 を試してみましょう 41
ハンズオン 42 • AWS IPv6 Hands On (japanese) ◦ https://catalog.us-east-1.prod.workshops.aws/workshops/025ae486-39d3
-4de4-a12b-049970983d18/ja-JP ▪ 内容は基礎的なもの • Get hands-on with IPv6 ◦ https://catalog.workshops.aws/ipv6-on-aws/en-US ▪ EKS などにも対応