首頁

AWS SAA-C03 口袋筆記 - Networking VPC

在地端,網路封包會先通過Gateway進到公司網路,再經過防火牆和路由來到公司公有網段裡的伺服器,從這裡再進到公司私有網段裡的伺服器。

在雲端(AWS),網路封包會先通過Internet Gateway進到Virtual Private Cloud (VPC),再經過Route table及Network Access Control List (NACL)來到Public Subnet的Instances,從這裡再進到Private Subnet的Instances。

Internet -> IGW -> VPC & Router -> NACL ->  Route table -> Public/Private subnet -> Security Group -> Instances

幾個關鍵名詞:

  • Internet Gateway
  • VPC
  • Route table
  • NACL
  • Subnet
  • CIDR
公司的AWS VPC裡的內網如何連到外網?
一般Private subnet不具有對外連網能力,需透過NAT Gateway將流量導到外部。 Private Subnet -> NACL -> Route table -> NAT Gateway -> Router & VPC -> IGW -> Internet

公司的AWS VPC如何跟其他的VPC串接?
預設兩個VPC溝通會走外網。 VPC1 -> IGW -> Internet -> IGW -> VPC2
可以用VPC Peering讓兩個VPC在AWS Cloud裡對連。 VPC1 -> VPC Peering -> VPC2

同個AWS Regin裡,內網裡的Instance,如何繼續用內網的方式與AWS其他服務溝通?
預設存取AWS的其他服務都會先繞到外網去。 Private Subnet -> ... -> VPC -> IGW -> Internet -> AWS DynamoDB
可以用VPC Endpoint (AWS PrivateLink)讓Instance直接與AWS的服務溝通。Instance -> VPC Endpoint -> S3

公司的AWS VPC如何跟公司地端網路環境串接?
可以透過Site-to-Site VPN Connection (Virtual Private Gateway)溝通。Instance -> ... -> Virtual Private Gateway (VGW) -> Customer Gateway (CGW) -> ... -> On-Promises Servers
  • 還是透過外網連線,但有多一層VPN加密連線。
  • CGW 可透過軟體安裝或是有支援的硬體設備。用 public internet-routable IP address.
  • 如果CGW在前面有台NAT,則需要啟用NAT traversal (NAT-T), 然後用NAT上的 public IP address。
  • VGW 這邊subnet的route table要記得啟用Route Propagation。
  • NACL和Security Group也要設定正確才會通。
  • 如果想用ping指令測試連線,記得security group inbound的ICMP protocol要打開。
  • 一個VGW跟多個CGW溝通,且CGW也想要彼此也能溝通,可以利用AWS VPN Cloud Hub (hub-and-spoke model)這個服務。每個地端的Site連到同一個VGW設定dynamic routing即可互通。

公司的AWS VPC如何跟公司地端網路環境串接,但不走外網?
可以申請AWS的專線 AWS Direct Connect (DX Connect),確保所有資料都是在專線裡溝通,而不會經過外網(Internet)。 VPC -> Virtual Private Gateway -> AWS Direct Connect Location(AWS Direct Connect Endpoint | Partner Router) -> Customer Network(Customer Router)。
  • 至少需要一個月以上的時間建置專線。
  • Direct Connect Location (通常與當地ISP業者合作,又稱合作夥伴),在裡頭會有AWS Cage和Customer/Partner Cage。
  • AWS Cage有 DX Router, 有專線回到AWS自己的Data Center中。 
  • Customer/Partner Cage有使用者自己或合作夥伴的Router連到地端的網路服務。
  • High Resiliency -> 有多個DX Locations, 每個location底下只有一個DX Connect。
  • Max Resiliency -> 有多個DX Locations, 每個location底下有一個以上DX Connect。

VPC Flow Logs 用來查看VPC裡的網路流量。
  • NACL (stateless),預設都是允許。
    • inbound如果允許進來,outbound如果拒絕,則response會被擋下來。
  • Security Group (stateful),預設都是不允許。
    • inbound如果允許,outbound即使沒特別開起,也會自動允許。request / response會順利執行。



Reference
  • https://godleon.github.io/blog/AWS/AWS-SOA-VPC/
  • https://www.udemy.com/course/aws-certified-solutions-architect-associate-saa-c03
  • https://www.tenlong.com.tw/products/9786263333123?list_name=lv