上一篇 AWS Elastic IP 即將收費我該怎麼辦?—— IP 盤點篇,我們提到因為從今年 2/1 開始 AWS 對於 Elastic IP 要開始進行收費了,所以為了成本優化,很多架構可能都要開始採用 IPv6 ,所以從本篇開始我們將會探討什麼是 IPv6 ?從 VPC、EC2 要怎要開始改?
什麼是 IPv6 ?
IPv6(Internet Protocol version 6)是網際網路通信協定的一個版本,主要用於為網際網路上的設備提供唯一的識別碼,這種識別碼稱為IP地址。與目前主要使用的 IPv4 相比,IPv6 擁有更長的地址位元組,提供了更大的地址空間。
IPv6 則使用 128 位元的地址,這使得可用的地址數量大大擴展到數十億的等級,足以應對未來更多設備的連接需求。 IPv6 的地址表示法也與 IPv4 不同,以冒號分隔的八組四位十六進制數字組成,例如:
在 IPv6 中,如果一組數字中有多個連續的 0 ,可以使用”::”(雙冒號)來簡化表示。這個簡化的方式只能使用一次,用來代替一組或多組連續的 0 。以下是一個示例:
假設有一個 IPv6 地址:
這個地址中有兩組連續的 0 ,可以簡化為:
這樣就用”::”代替了連續的 0 ,使得 IPv6 地址更簡潔。請注意,”::”只能用來代替 0 ,不能用來代替非0的數字。
透過採用 IPv6 ,可以有效解決 IPv4 地址耗盡的問題,同時提供更好的網際網路連接和通信效能,以支援未來不斷擴張的互聯網環境。許多網路服務提供商和組織已經開始過渡到 IPv6 ,以確保持續的網際網路發展。
我要如何修改現有的 VPC、EC2 來支援 IPv6 ?
要新增 IPv6 不用全部砍掉重練!只要根據以下步驟執行就可以囉
1.選擇你的 VPC ,按 Action ,並選擇 Edit CIDR
2. 按 Add new IPv6 CIDR
3.選擇 Amazon-provided IPv6 CIDR block ,並按 Select CIDR
AWS 會自動分配一個 IPv6 網段給你
這裡來計算一下總共有幾個 IP 可以使用,4.72....*10 的 21 次方個
4. 接下來,選擇 Subnet ,按 Action ,並選擇 Edit CIDR
5.按 Add IPv6 CIDR
6.這邊可以輸入你要切給 Subnet 的大小,右邊會顯示總共可以使用多少 IP,總共 18,446,744,073,709,551,616 個,選完按 Save
7.找到與 Subnet 的 Route Table,點選 Edit route,你會看到 local 多了 IPv6 網段,接著新增一條 ::/0,Target 是 IGW的路由,按 Save change,,VPC 和 Subnet 的部分就算設定完成拉!
8.回到 EC2 頁面選擇您已經開好的 EC2 ,點擊右上角 Action ,選擇 Networking ,再選擇 Manage IP Address
9.點開 eth0 網卡,在 IPv6 的地方案 Assign new IP address ,AWS 會自動配發一個 IPv6 IP 給網卡,接著在 Assign Primary IPv6 IP 打勾,再按 Save
10.在 EC2 畫面您就會看到 Instance 已經配發 IPv6 IP
11.測試 IPv6 IP 能不能通,記得貼到瀏覽器時 IPv6 IP 外面要加[ ],例如:[2406:da16:600:7700:e325:377b:1737:479f]
請注意!!!!!
1. 請先確認您的終端設備要能支援並有啟用IPv6,不然雲端用IPv6,終端用IPv4,兩邊是無法溝通的!
2. 另外域名解析的DNS是否有回應IPv6,否則終端設備跟服務主機也是無法溝通的。
這樣就大功告成啦!
文章出處:Medium - CKmates AWS Ambassador Tony Chung