這兩個元件都是 AWS VPC 網路架構中用來連接網際網路的關鍵角色,但它們的方向性、安全性與用途截然不同。
簡單的一句話區分:Internet Gateway (IGW) 是給「公有子網」用的(允許雙向進出);NAT Gateway 是給「私有子網」用的(只允許出去,不准進來)。
以下是詳細的差異比較與架構解說:
1. 核心差異比較表

2. Internet Gateway (IGW) 詳解
它是 VPC 通往網際網路的「大門」。沒有它,VPC 就是一個封閉的孤島。
- 功能:負責將 VPC 內部的 Private IP 與外部的 Public IP 進行 1對1 的轉換。
- 架構設定:建立 IGW 並附加 (Attach) 到 VPC。修改 Public Subnet 的 Route Table:Destination: 0.0.0.0/0 →→ Target: igw-xxxxxx。
- 使用情境:你要架設一個網站,希望全世界都能瀏覽 (HTTP/HTTPS 進來)。你需要 SSH 遠端登入這台機器。
3. NAT Gateway 詳解
它是私有子網的「代理人」。它讓受保護的機器可以上網辦事,但外人不准直接找它。
- 功能:接收私有子網的封包,將來源 IP 換成 NAT Gateway 自己的 Public IP (EIP) 送出去,收到回覆後再轉交給私有子網的機器。
- 架構設定:NAT Gateway 必須建立在 Public Subnet 裡! (這是考試跟實作最常錯的地方)。NAT Gateway 必須綁定一個 Elastic IP (EIP)。修改 Private Subnet 的 Route Table:Destination: 0.0.0.0/0 →→ Target: nat-xxxxxx。
- 使用情境:你的資料庫 (RDS/EC2) 在私有子網,需要下載軟體更新 (yum update) 或上傳備份到 S3。你的後端程式需要呼叫外部的 API (如金流服務)。重點:你絕對不希望駭客可以直接連線到你的資料庫。
4. 關於「高可用性 (HA)」的差異
這是架構師考試的考點:
- IGW:AWS 幫你管好了,它本身就是高可用的,不會因為單一機房故障而壞掉。
- NAT Gateway:它是單一可用區 (Single-AZ) 的資源。如果你在 ap-northeast-1a 建了一個 NAT GW,結果 1a 機房失火了,你的私有子網就會斷網。最佳實踐:如果你追求高可用性,應該在 每一個 AZ 都建一個 NAT Gateway,讓該 AZ 的私有子網使用自己那邊的 NAT GW。
5. 比喻 (Analogy)
- VPC = 你家。
- Internet Gateway (IGW) = 你家大門。如果你有鑰匙 (Public IP),你可以出門,快遞也可以送貨進來。
- NAT Gateway = 大樓管理員/櫃檯。你 (私有機器) 不想讓陌生人知道你住幾樓。你想寄信時,把信交給管理員 (NAT GW),管理員用大樓的名義幫你寄出去。回信寄到大樓管理員那邊,管理員再轉交給你。外部的人不能直接衝上樓敲你的門 (阻擋 Inbound)。
總結
- 要讓外面連進來 →→ 用 IGW。
- 只要連出去 (更新/備份),拒絕外面連入 →→ 用 NAT Gateway。
















