本日主題:公司內部用的私有 IP,以及它如何透過 NAT 上網 預計時間:1.5 小時 對應主教材:第 2.2 節
一、今日學習目標
- [ ] 背熟三段私有 IP 範圍
- [ ] 理解公有 IP 與私有 IP 的差別
- [ ] 理解 NAT 的運作與用途
- [ ] 了解 PAT(Port Address Translation)的概念
二、教材內容
2.1 公有 IP vs 私有 IP
| 公有 IP | 私有 IP | |
|---|---|---|
| 範圍 | 全球唯一 | 僅限內部網路 |
| 誰分配 | ISP / 網路註冊機構 | 公司自己 |
| 能否直接上網 | 可以 | 不行,要透過 NAT |
| 例子 | 203.x.x.x |
192.168.1.10 |
| 數量 | 有限(IPv4 約 43 億個) | 無限(每個網路都能用同一段) |
| 費用 | 要付費(跟 ISP 租) | 免費 |
┌──────────────────────────────────────────────────┐
│ 公有 IP vs 私有 IP 的關係 │
├──────────────────────────────────────────────────┤
│ │
│ ┌─── 公司內部(私有 IP)───┐ │
│ │ │ ┌──────────┐ │
│ │ PC1: 192.168.1.10 │ │ │ │
│ │ PC2: 192.168.1.11 ├──→ NAT ──→ 網際網路│
│ │ PC3: 192.168.1.12 │ 公有 IP │ │
│ │ │ 203.1.2.3 │ │
│ └─────────────────────────┘ └──────────┘ │
│ │
│ 內部幾百台設備,對外只用 1 個(或少數)公有 IP │
└──────────────────────────────────────────────────┘
2.2 三段私有 IP 範圍(務必背,面試常考)
| 範圍 | CIDR | 可用主機數 | 常見用途 |
|---|---|---|---|
10.0.0.0 ~ 10.255.255.255 |
/8 |
16,777,214 | 大型企業 |
172.16.0.0 ~ 172.31.255.255 |
/12 |
1,048,574 | 中型網路 |
192.168.0.0 ~ 192.168.255.255 |
/16 |
65,534 | 家用 / 小公司最常見 |
記憶法:「十、一七二點十六到三一、一九二點一六八」。家裡 Wi-Fi 通常就是
192.168.x.x。
💡 面試加分小知識:為什麼是這三段?
RFC 1918 規定了這三段位址保留給私有使用。所有的網際網路路由器都不會轉發目的地是這三段的封包,所以它們只能在內部網路使用。這也意味著你家的 192.168.1.10 和你鄰居家的 192.168.1.10 完全不衝突,因為它們永遠不會在網際網路上相遇。
常見的私有 IP 配置
┌──────────────────────────────────────────────────┐
│ 不同規模的私有 IP 選擇 │
├──────────────────────────────────────────────────┤
│ │
│ 家庭/小型辦公室: │
│ 192.168.1.0/24(路由器通常預設這個) │
│ → 254 台設備,夠用 │
│ │
│ 中型公司(幾百人): │
│ 172.16.0.0/16 或 192.168.0.0/16 │
│ → 分 VLAN 使用,例如 192.168.10.0/24 辦公室 │
│ │
│ 大型企業(千人以上): │
│ 10.0.0.0/8 │
│ → 1600 萬個 IP,可以切出大量子網 │
│ → TAMECO 這種公司通常用 10.x.x.x │
│ │
└──────────────────────────────────────────────────┘
⚠️ 常見誤解
- 誤解 1:「172.16.x.x 到 172.31.x.x 是同一段」→ 要注意 172 開頭的私有 IP 只到 172.31.x.x,172.32.x.x 以後是公有 IP!
- 誤解 2:「私有 IP 完全不能連網路」→ 不對,私有 IP 透過 NAT 就能上網,只是不能直接被外面找到。
- 誤解 3:「192.168.x.x 一定是私有 IP」→ 對!但反過來不一定,有些人以為 172.20.x.x 是公有 IP,其實它也是私有的(在 172.16~172.31 範圍內)。
2.3 NAT 是什麼?
NAT(Network Address Translation,網路位址轉換):因為私有 IP 不能直接上網際網路,當內部設備要連外時,路由器/防火牆會把私有 IP 換成公司的公有 IP 送出去,回來時再換回來。
┌─────────────────────────────────────────────────┐
│ NAT 運作流程 │
├─────────────────────────────────────────────────┤
│ │
│ ① PC (192.168.1.10) 要連 Google │
│ │ │
│ ▼ │
│ ② 封包到達路由器(NAT) │
│ 來源:192.168.1.10:5000 │
│ 目的:142.250.80.46:443 │
│ │ │
│ ▼ NAT 轉換 │
│ ③ 路由器把來源換成公有 IP │
│ 來源:203.1.2.3:40001 ← 公有 IP + 隨機埠 │
│ 目的:142.250.80.46:443 │
│ │ │
│ ▼ │
│ ④ Google 回應 │
│ 來源:142.250.80.46:443 │
│ 目的:203.1.2.3:40001 │
│ │ │
│ ▼ NAT 還原 │
│ ⑤ 路由器查表,把目的換回私有 IP │
│ 來源:142.250.80.46:443 │
│ 目的:192.168.1.10:5000 │
│ │ │
│ ▼ │
│ ⑥ PC 收到 Google 的回應 │
│ │
└─────────────────────────────────────────────────┘
2.4 NAT 的三種類型
| 類型 | 說明 | 用途 |
|---|---|---|
| 靜態 NAT | 一個私有 IP 對應一個公有 IP(一對一) | 需要從外面連進來的伺服器(如 Web Server) |
| 動態 NAT | 從公有 IP 池中動態分配(多對多) | 有多個公有 IP 可用時 |
| PAT / NAT Overload | 多個私有 IP 共用一個公有 IP,靠埠號區分(多對一) | 最常見,家用和公司都是用這個 |
面試重點:大部分面試說到 NAT,指的就是 PAT。多台電腦共用一個公有 IP,靠不同的埠號來區分是哪台電腦的流量。
PAT 的運作原理
PC1 (192.168.1.10:5000) ──→ 203.1.2.3:40001 ──→ Google
PC2 (192.168.1.11:5000) ──→ 203.1.2.3:40002 ──→ Google
PC3 (192.168.1.12:3000) ──→ 203.1.2.3:40003 ──→ YouTube
路由器的 NAT 轉換表:
┌──────────────────────┬──────────────────┐
│ 內部 (私有) │ 外部 (公有) │
├──────────────────────┼──────────────────┤
│ 192.168.1.10:5000 │ 203.1.2.3:40001 │
│ 192.168.1.11:5000 │ 203.1.2.3:40002 │
│ 192.168.1.12:3000 │ 203.1.2.3:40003 │
└──────────────────────┴──────────────────┘
回來的封包,路由器就靠這張表把流量導回正確的電腦
2.5 為什麼要用私有 IP + NAT?
- 公有 IP 不夠用:IPv4 位址只有約 43 億個,全球設備遠超過這個數字。2011 年 IANA 已經把 IPv4 位址分完了。
- 安全:外面看不到內部真實 IP,多了一層隔離。駭客無法直接連到你的內部電腦。
- 管理彈性:內部要怎麼規劃網段都自己決定,不需要跟 ISP 申請。
- 節省成本:公有 IP 要跟 ISP 付費,私有 IP 免費。一間 200 人的公司只需要 1~2 個公有 IP。
2.6 NAT 的限制與實務考量
- 外部無法主動連入:因為 NAT 只記錄「由內往外」的連線。如果外部要連入(例如遠端桌面),需要設定連接埠轉發(Port Forwarding)或使用 VPN。
- 影響某些應用:有些協定(如 FTP 的主動模式、某些 VoIP)在 NAT 環境下可能有問題,需要額外設定。
- 效能開銷:路由器需要維護 NAT 轉換表,大量連線時可能影響效能。
┌──────────────────────────────────────────────────┐
│ Port Forwarding(連接埠轉發) │
├──────────────────────────────────────────────────┤
│ │
│ 外部使用者想連到公司的 Web Server │
│ │
│ 外部 ──→ 203.1.2.3:443 ──→ 路由器 │
│ │ │
│ Port Forwarding 規則: │
│ 443 → 192.168.1.100:443 │
│ │ │
│ ▼ │
│ 內部 Web Server │
│ 192.168.1.100 │
│ │
└──────────────────────────────────────────────────┘
三、今日練習
Q1. 默寫三段私有 IP 範圍(含 CIDR)。
Q2. 為什麼私有 IP 的設備能上網?是哪個技術讓它做到的?
Q3. 用私有 IP + NAT 有哪些好處?(至少說三個)
Q4. 以下哪些 IP 是私有 IP?
- (a) 10.50.100.1
- (b) 172.20.5.3
- (c) 172.32.1.1
- (d) 192.168.0.1
- (e) 8.8.8.8
Q5. 什麼是 PAT?它跟一般的 NAT 有什麼不同?
Q6. 公司有一台內部的 Web Server(192.168.1.100),老闆要求外部合作夥伴也能連進來看資料。你會怎麼做?
參考解答
**A1.** `10.0.0.0/8`、`172.16.0.0/12`、`192.168.0.0/16`。 **詳細說明**: - `10.0.0.0/8`:10 開頭的都是私有 IP,範圍 10.0.0.0 ~ 10.255.255.255 - `172.16.0.0/12`:172.16 ~ 172.31 開頭的是私有 IP,172.32 以後就不是了 - `192.168.0.0/16`:192.168 開頭的都是私有 IP,範圍 192.168.0.0 ~ 192.168.255.255 **A2.** 因為路由器/防火牆用 **NAT** 把私有 IP 轉成公司的公有 IP 送出去、回來再轉回來。 **詳細說明**:NAT 的全名是 Network Address Translation。當內部設備(如 192.168.1.10)要連外時,路由器會把封包的來源 IP 從私有 IP 換成公司的公有 IP(如 203.1.2.3),並記錄這個對應關係。當回應封包回來時,路由器根據記錄把目的 IP 換回原來的私有 IP,轉給正確的電腦。整個過程對使用者是透明的。 **A3.** ①節省稀缺的公有 IP(IPv4 不夠用);②隱藏內部真實 IP,增加安全性;③內部網段自由規劃,管理彈性大;④節省成本(公有 IP 要付費)。 **A4.** - (a) `10.50.100.1` → **私有**(10.x.x.x 範圍內) - (b) `172.20.5.3` → **私有**(172.16~172.31 範圍內) - (c) `172.32.1.1` → **公有**(超過 172.31,不在私有範圍內!) - (d) `192.168.0.1` → **私有**(192.168.x.x 範圍內) - (e) `8.8.8.8` → **公有**(Google 的公用 DNS) **陷阱**:(c) 是最容易錯的,172.32 已經超出私有 IP 的範圍了。 **A5.** PAT(Port Address Translation)也稱為 NAT Overload,是讓多個私有 IP 共用一個公有 IP 的技術。一般的靜態 NAT 是一對一(一個私有 IP 對應一個公有 IP),而 PAT 是多對一,靠不同的埠號來區分不同的內部設備。PAT 是實務中最常見的 NAT 方式,家用路由器和公司防火牆都是用 PAT。 **A6.** 有兩種做法: 1. **Port Forwarding**:在路由器/防火牆上設定規則,把外部公有 IP 的 443 埠(HTTPS)轉發到內部 192.168.1.100:443。這樣外部合作夥伴連到公有 IP 時,流量會被導到內部 Web Server。但要注意資安風險。 2. **VPN**:讓合作夥伴先透過 VPN 連入公司內網,再存取內部 Web Server。比 Port Forwarding 更安全,因為 VPN 有加密和身份驗證。 建議選 VPN 方案,因為航太 MRO 對資安要求很高。四、今日檢核
- [ ] 我能默寫三段私有 IP
- [ ] 我能解釋公有與私有 IP 的差別
- [ ] 我能用一張圖說明 NAT 怎麼運作
- [ ] 我知道 PAT 的概念
- [ ] 我能判斷一個 IP 是公有還是私有
五、延伸閱讀建議
| 資源 | 說明 |
|---|---|
| YouTube: NetworkChuck「NAT Explained」 | 用動畫清楚解說 NAT 運作原理(英文有字幕) |
| YouTube: 鳥哥的 Linux 私房菜 | 有關於 NAT 和 iptables 的中文教學 |
| RFC 1918 | 定義私有 IP 的官方文件(英文) |
| YouTube: Sunny Classroom | 中文,有 NAT 與 IPv4/IPv6 的清楚講解 |
| What is my IP | 可以查你目前的公有 IP,看看 NAT 轉出去的是什麼 |
⬅️ 上一天:Day 3 | 🏠 本週總覽 | ➡️ 下一天:Day 5 — 協定與埠號