AWS VPC 上的子網路( AWS Subnet ) 是什麼?

在雲端運算逐漸成為主流的今天,企業和個人用戶在建構雲端應用時,對網路環境的安全性、靈活性和可擴展性提出了更高要求。亞馬遜網路服務(Amazon Web Services, 簡稱AWS)提供的 虛擬私有雲(Virtual Private Cloud, VPC),正是滿足這些需求的核心服務之一。透過VPC,使用者能夠在AWS 雲端中建立和管理屬於自己的虛擬網絡,就像在本地資料中心中建置和管理傳統網路一樣。

在VPC 的網路架構中,子網路(Subnet) 扮演著至關重要的角色。它不僅決定了資源的網路邊界,也影響了應用系統的安全策略、可用性和對外通訊方式。理解並合理使用子網,是設計安全高效雲端上架構的關鍵。

 

什麼是AWS Subnet?

子網路(Subnet) 是對VPC 內IP 位址空間的進一步劃分。透過子網,使用者可以把一個大的VPC 劃分為多個邏輯上的小網路段,不同子網路之間可以部署不同類型的資源,並應用差異化的存取控制策略。

例如,企業可能會把VPC 分成以下幾類子網路:

  • 公有子網路(Public Subnet):允許子網路內的資源(如Web 伺服器)透過Internet Gateway 直接存取網際網路。
  • 私有子網路(Private Subnet):子網路內的資源(如資料庫、內部API 服務)無法直接被網際網路存取,只能透過NAT 閘道或VPN 與外部通訊。

這種劃分方式類似於傳統資料中心中的DMZ 區(Demilitarized Zone)、內部網段等概念,但在AWS 上更靈活且易於擴展。

 

子網路的基本要素

在建立AWS 子網路時,需要考慮以下幾個關鍵點:

1. CIDR 區塊

CIDR(Classless Inter-Domain Routing,無類別域間路由)區塊定義了子網路的IP 位址範圍。

  • 每個子網路必須指定一個CIDR 區塊,該範圍必須落在所屬VPC 的CIDR 範圍之內。
  • 子網路的CIDR 大小決定了可用IP 位址數量。例如:
  • 10.0.1.0/24 → 提供256 個IP 位址(實際可用251 個)。
  • 10.0.1.0/28 → 提供16 個IP 位址(實際可用11 個)。

AWS 保留了每個子網路中的5 個IP 位址(用於網關、DNS、網路管理),因此在規劃CIDR 時要留有空間。

2. 可用區(Availability Zone, AZ)

建立子網路時,必須指定其所屬的可用區。

  • 每個子網路只能位於單一的可用區。
  • 若要實現高可用,通常需要在同一區域的多個AZ 內分別建立子網,並在子網路中部署冗餘的資源。
3. 路由表(Route Table)

子網路的流量轉送由路由表決定。透過自訂路由規則,可以控制子網路內資源是否能夠存取網際網路、VPC 內其他子網路或本地資料中心。

4. 公有子網路與私有子網路
  • 公有子網:路由表中存在一條指向Internet Gateway 的路由。
  • 私有子網路:沒有直通Internet Gateway 的路由,只能透過NAT 閘道或VPN 等方式存取外部。

 

子網路的應用場景

1. 三層架構部署

在典型的Web 應用中,可以依照功能分層部署在不同的子網路中:

  • Web 層(公有子網路):部署對外的Nginx、Apache 等Web 服務。
  • 應用層(私有子網路):部署後端應用服務,如業務邏輯處理。
  • 資料層(私有子網路):部署資料庫和快取,如RDS、Redis。

這種架構透過子網路的隔離性提高了安全性,避免資料庫等敏感資源直接暴露在公網中。

2. 混合雲架構

企業常常需要將AWS VPC 與本地資料中心連接,形成混合雲。透過在VPC 中合理劃分子網,可以實現本地業務與雲端業務的無縫銜接。

3. 不同環境隔離

開發、測試、生產環境需嚴格隔離。透過在同一個VPC 內劃分不同的子網,或在不同VPC 中建立子網,企業可以實現環境級的隔離,降低風險。

4. 高可用和災備

在多個AZ 中建立相同功能的子網,並部署冗餘的實例,可以大幅提升系統的可用性和容錯能力。

 

子網路與相關AWS 服務的結合

子網路的真正價值,往往體現在與其他網路元件的配合中:

  1. Internet Gateway (IGW)
  2. 公有子網路中的實例可以透過IGW 與網際網路進行雙向通訊。
  3. NAT 閘道/ NAT 實例
  4. 允許私有子網路中的執行個體存取網際網路(如下載軟體更新),但阻止外部主動存取這些執行個體。
  5. 安全群組(Security Group)和網路ACL
  6. 子網路層級的安全控制依賴 網路ACL,而實例層級的安全性由 安全群組管理。二者結合,實現細粒度的存取控制。
  7. VPC 對等連結(VPC Peering)
  8. 不同VPC 的子網路可以透過對等連接互通,這在跨區域部署或多團隊合作時非常有用。
  9. Transit Gateway
  10. 對於大型企業,可以透過Transit Gateway 把多個VPC 的子網路集中連接起來,形成星型拓撲,簡化網路管理。

 

最佳實務與注意事項

1.合理規劃CIDR
  • 提前設計IP 位址範圍,避免未來擴充時出現衝突。
  • 對不同環境(開發/測試/生產)預留不同的CIDR 範圍。
2.公私子網分離
  • 不要把資料庫、敏感系統放在公有子網路。
  • 公有子網路僅放置需要直接暴露給使用者的服務。
3.跨AZ 部署
  • 在多個可用區中建立子網,提高高可用性。
  • 資料庫和應用伺服器盡量部署在不同AZ 的私有子網路中。
4.最小化權限原則
  • 安全群組和網路ACL 要遵循「預設拒絕,只放行必要流量」 的原則。
  • 對NAT 網關和IGW 的使用要進行嚴格的監控。
5.監控與日誌
  • 配合 VPC Flow Logs 記錄子網路內的流量狀況,幫助排除安全和網路問題。

 

結論

AWS VPC 的子網路(Subnet)是雲端上網路架構的核心組成部分。透過對子網路的合理劃分和配置,使用者能夠:

  • 靈活隔離和管理資源,提升安全性。
  • 支援複雜的應用場景,例如三層架構、混合雲和跨區域部署。
  • 借助公私子網路的劃分,實現既能對外提供服務,又能保護敏感資源的平衡。
  • 透過AWS 提供的閘道、路由表、安全群組和監控工具,建構高度可控、彈性擴展的網路環境。

簡而言之,子網路不僅是IP 位址的劃分,更是AWS 雲端網路安全、可用性和架構設計的基石。對於任何計劃在AWS 上建立可擴展、高可用系統的企業或個人來說,掌握子網路的原理與應用,是必不可少的一步。

更多探索

Tell me what you need