NAT 位址轉換¶
NAT(Network Address Translation)把封包的來源或目的 IP/Port 改掉。Check Point 有兩種設定方式:Automatic NAT(物件自動產生)與 Manual NAT(手動寫規則,完全可控)。
兩種 NAT¶
Automatic NAT(自動)¶
在「物件」的 NAT 頁籤勾選即可,Management 會自動產生 NAT 規則。
- Hide NAT(多對一):一整個內網藏在一個對外 IP 後面(PAT),讓內部主機能上網。
- Static NAT(一對一):一個內部 IP 固定對應一個對外 IP,雙向轉換,常用於對外開放伺服器。
Manual NAT(手動)¶
直接在 NAT Rulebase 寫規則,能精準控制「原始封包」與「轉換後封包」的來源、目的、服務。複雜情境(雙向、特定 port 轉換、例外)就靠它。
| Automatic NAT | Manual NAT | |
|---|---|---|
| 設定位置 | 物件 NAT 頁籤 | NAT Rulebase |
| 彈性 | 低,快速 | 高,可細控 |
| ARP | 自動處理 | 常需手動加 Proxy ARP |
| 適用 | 一般上網 / 簡單對外服務 | 複雜轉換、例外 |
比對順序(很重要)¶
NAT 規則庫也是由上而下:
- Manual NAT:執行「第一條命中的 Manual NAT 規則」,不再檢查其他 Manual 規則(first match)。
-
Automatic NAT:一個連線最多同時套兩條 Automatic 規則 —— 一條對 Source、一條對 Destination。SmartConsole 自動把 Automatic 規則排成這個順序:
-
Host / Gateway 物件的 Static NAT
- Host / Gateway 物件的 Hide NAT
- Network / Address Range 物件的 Static NAT
- Network / Address Range 物件的 Hide NAT
Manual NAT 的 Proxy ARP
用 Manual Static NAT 對外時,Gateway 不會自動幫那個對外 IP 回應 ARP(Automatic NAT 會自動產生)。需手動設定 Proxy ARP,把「被轉譯的 IP」對應到「同網段 Gateway 介面的 MAC」:
- 編輯
$FWDIR/conf/local.arp,每行格式<被轉譯IP> <介面MAC>,例如: - 在 Global Properties → NAT 勾「Merge manual proxy ARP configuration」,讓手動設定與 Automatic 產生的 proxy ARP 並存生效。
- Maestro / Scalable Platform 用
local_arp_update分發到各 SGM。 - 參考 sk30197。
設定 Hide NAT 上網(最常見)¶
- 建立內網物件(例如
Net_10.0.0.0/24)。 - 物件 → NAT → 勾 Add Automatic Address Translation → Method 選 Hide。
- Hide behind:選 Gateway(藏在 Gateway 對外介面 IP)或指定 IP。
- Install Policy。
驗證與排錯¶
# 查看目前的 NAT 連線轉換表
fw tab -t fwx_alloc -f # NAT port 配置表
# 即時看封包與 NAT 行為(排錯)
fw monitor -e "accept;" # 觀察封包進出四個點,確認 NAT 前後位址
# 手動 Proxy ARP 設定檔(Gateway expert)
cat $FWDIR/conf/local.arp
用 fw monitor 看 NAT
fw monitor 會在封包路徑的 i / I / o / O 四個檢查點抓封包,比對「進來」與「出去」的 IP,就能確認 NAT 有沒有照預期轉。詳見 fw monitor 抓封包。
版本提醒
NAT 的核心機制在 R81.10 ~ R82.10 一致。IPv6 NAT、NAT64 等進階功能視版本與授權支援,設定邏輯相同。
小結¶
- Automatic NAT 快、Manual NAT 細控。
- Hide NAT = 多對一上網;Static NAT = 一對一雙向。
- Manual Static NAT 記得處理 Proxy ARP。
- NAT 比對順序:Manual → Auto Static → Auto Hide。
- 排錯用
fw monitor看轉換前後位址。