《AWS 教學–如何在不同的VPC建立一條可互通的通道》VPC Peering操作分享 | 學習筆記

Telegram share !

本次的教學,主要分享如何在不同的VPC建立一條可互通的通道,相信大家在使用雲端的初期,建置每個VPC的時候,會以資訊安全的角度,各自切割不同的VPC網段,但是隨著商業模式日漸複雜,相關系統也會朝向集中化管理,相關的資料也會統一整合進同一個後台,這時候我們就遇到個問題,每次在連接不同的VPC內的主機都要透過公網,等於每次的連線都需要透過公網進行連接,如果只是純Web可能還沒問題,但是有的時候往往會遇到需要連結資料庫,這時候總會覺得有點不安全,先說明相關主機是有對鎖security group,但是整體安全性及網路延遲時間總是不及內網來的安全及低延遲,經過上網做了些功課及閱讀AWS官方豐富的文件,終於試出來該功能如何設定,其實用法真的跟一般VPN差不多,在此我將相關設定整理分享給大家,本教學是以VPC Peering為核心的教學,主要是你已經有建立了多個環境後,該怎麼串起來的相關設定,相關基礎知識本篇教學不會提太多,不過設定的核心我都會一步一步帶著大家做,所以大家不用擔心,只要一起做,相信你也可以操作成功的。

教學說明

架構圖

情境描述

本教學環境設定為同一個Region下的有兩個VPC,VPC A下的一台EC2要直接連接至VPC B下的其中一台資料庫,本教學為如何建立一條VPC Peering,讓兩邊不同的網段,可以互相訪問對方的主機,前置作業請先建立兩個不同的網段及建立分別歸屬兩個不同網段的EC2主機,後續即可進行本教學的實作,教學中我會手把手教你如何建立一條VPC Peering,並且設定可以互相訪問的Route Table。

範例資訊如下

VPC Peering Name:VPC-A-To-VPC-B-Peering

VPC Name:VPC-A、VPC-B

Subnet Name:vpc-a-subnet-1b、vpc-b-subnet-1b

Route Table Name:VPC-A Main Route Table、VPC-B Main Route Table

Security Groups:1VPC-A-Web-SG、VPC-B-Web-SG

EC2 Instances Name:EC2-A、EC2-B

如果你完全沒有VPC可以走以下流程跟著我從新建立,如果有經驗建議直接移動到2.建立VPC Peering開始看。

1.建立VPC A與VPC B

1.1開始建立VPC A

1.2輸入VPC A相關資訊

1.3 VPC A建立完成


1.4 建立Subnets

1.5 建立Subnet for VPC

1.6Subnet建立完成(VPC-B請參考上述建立方式)

1.7建立Internet gateways

如果要透過公網Elastic IPs來存取VPC內部的資源別忘了建立此服務

1.7.1 Step 1

1.7.2 Step 2

1.7.3 Step 3

1.7.4 Step 4

1.7.5 Step 5

1.7.6 Step 6 完成建立

1.8設定IGW路由

1.8.1 進入設定

1.8.2 點選Route Table 進入設定

1.8.3 進入Routes設定

1.8.4 設定Route Table讓此Subnet,可以對外連結Internet

1.8.5 完成Route Table 設定(VPC-B請參考上述建立方式)

2.建立VPC Peering

2.1 EC2現況說明

目前EC2-A與EC2-B分別隸屬不同的VPC

2.1 EC2-A測試Ping EC2-B看是否能訪問(無回應)※測試前提安全組要打開ICMP

2.2 EC2-B測試Ping EC2-A看是否能訪問(無回應)※測試前提安全組要打開ICMP

2.3Virtual private cloud > Peering connections

2.4 建立peering connection

2.5 選擇接受VPC Peering 連線請求

2.5.1 彈出同意VPC Peering確認視窗

2.5.2如果沒按下同意

2.5.3 成功連線列表

記得要點選右上角的修改我的路由表

2.5.4 進入VPC-A路由列表

2.5.5 在VPC-A的主要路由表中,點選Edit routes編輯路由

2.5.6 設定VPC-A 透過Peering connection至VPC-B的CIRD範圍

2.5.7 設定VPC-B 透過Peering connection至VPC-A的CIRD範圍(由於功能相同我就不多做說明)

將2.5.6~2.5.7設定完成後大致上,這兩個VPC網路層面已經是通的,不過後續還需要在EC2-A與EC2-B所綁定的Security Groups設定開啟對方需要訪問的Port,才算是真的可以傳輸。

3.Peering Connection連線驗證

驗證Peering Connection是否可順利連線,因為時間關係,我們先用最簡單ICMP的方式驗證是否能訪問另一個網站電腦,只開放區網IP做Ping的行為

3.1 EC2-A所使用的安全組(Security Groups)

限制只有來源VPC-B 的CIDR可使用ICMP訪問

3.2 EC2-B所使用的安全組(Security Groups)

限制只有來源VPC-A 的CIDR可使用ICMP訪問

3.3 測試VPC-A > EC2-A Ping VPC-B > EC2-B

可正常訪問另一個網段VPC-B

3.4 測試VPC-B > EC2-B Ping VPC-A > EC2-A

可正常訪問另一個網段VPC-A

結論

經過本篇教學的相關設定,基本上應該可以將兩個相同Region不同的VPC串起來,希望本篇教學能幫到你,這次就先分享到這邊,如果你喜歡我的文章也請您按讚加分享,我們就下篇文章見吧。

※本文章分享僅為個人使用心得,所以測試均在AWS雲端測試環境測試,並且確認功能可正常使用,觀看此篇教學的讀者請多做研究,再進行測試,本網站不負任何責任

※本文章所測試的設備均為RD爸爸目前所使用的AWS雲端帳號,相關數據均為未經修改,原始呈現。

Reference