一、什么是NAT,NAT產生的背景
NAT通常部署在一個組織的網絡出口位置,通過將內部網絡IP地址替換為出口的IP地址提供公網可達性和上層協議的連接能力。
NAT產生的背景是為了解決IPv4地址不足的問題。
二、NAT技術的工作原理和特點

在整個NAT的轉換中,幾個關鍵的流程:
- 網絡被分為私網和公網兩個部分,NAT網關設置在私網到公網的路由出口位置,雙向流量必須都要經過NAT網關
- 網絡訪問只能先由私網側發起,公網無法主動訪問私網主機;
2.1 靜態NAT
本地局域網IP 一對一映射 公網IP。
2.2 動態NAT
本地局域網IP 與 公網IP地址池 中的IP,進行一對一映射。
2.3 NAT重載
通過與IP地址不同端口組合,把多個本地局域網地址 映射到一個公網IP地址。也就是所說的PAT(Port Address Translation 端口地址轉換)。
這里就有一個問題,多個局域網用戶訪問同一個公網網站,公網網站如何知道應該將數據返回給誰?

舉個例子,客戶端172.18.250.6和百度服務器202.108.22.5通信,172.18.250.6發送數據時,先轉換為219.155.6.240:1723(任意>1024的隨機端口),然后再利用這個身份發送數據給百度服務器,然后百度服務器回應數據並發送給219.155.6.240:1723,NAT網關檢查自己的關聯表,意識到這是自己地私網中172.18.250.6的數據包,然后把這個數據發送給客戶端
三、NAT技術的優缺點
優點:
- 節省了IPv4資源
缺點:
- 無法進行端到端的IP跟蹤(從內網中幾千個主機中,找到攻擊者)
參考文檔
[1]: NAT(地址轉換技術)詳解
[2]: 《深入理解計算機網絡》
[3]: Linux iptables用法與NAT
[4]: iptables概念
