NAT(網路地址轉換,Network Address Translation)與端口轉發
NAT 是一種網路技術,用於在多台設備共享一個公共 IP 位址的情況下,將私有網路中的設備與外部網路(如互聯網)進行通信。它的主要功能是將內部私有 IP 位址轉換為公共 IP 位址,從而讓私有網路中的設備能夠訪問外部資源。同時,端口轉發(Port Forwarding) 則是一種 NAT 功能,允許外部設備通過指定的端口號訪問內部網路的特定設備或服務。
NAT 的工作原理
NAT 主要用於解決 IPv4 位址短缺的問題。內部網路(如家庭或企業網路)中的每台設備通常都有一個私有 IP 位址,這些位址不能直接用於互聯網通信。為了讓內部網路中的設備能夠連接到外部網路,路由器或 NAT 伺服器會將內部的私有 IP 位址轉換為公共 IP 位址,並根據不同的應用場景使用不同類型的 NAT。
NAT 類型
1.靜態 NAT(Static NAT):
•靜態 NAT 將一個內部私有 IP 位址映射到一個公共 IP 位址。這通常用於內部設備需要固定公共 IP 位址來提供服務的場景,例如內部伺服器對外提供服務。
•例子:內部網路中的伺服器 192.168.1.10 被映射為公共 IP 203.0.113.5,每次外部訪問這個公共 IP 都會轉發到該內部伺服器。
2.動態 NAT(Dynamic NAT):
•動態 NAT 使用一個公共 IP 位址池,將內部網路中的私有 IP 動態映射到可用的公共 IP 位址。每次內部設備發出請求時,系統會為其分配一個公共 IP 位址。
•這種方法適用於有大量內部設備需要臨時使用公共 IP 位址的情況,但同一時間內能訪問外部網路的設備數量受到公共 IP 位址數量的限制。
3.PAT(Port Address Translation,端口地址轉換)/NAT Overload:
•PAT 也是一種動態 NAT,但它允許多台內部設備共享同一個公共 IP 位址,通過為每個連接分配不同的端口號來區分設備。
•這是家用和企業路由器中最常見的 NAT 形式,能有效地節省公共 IP 位址,允許大規模內部設備同時訪問外部網路。
•例子:多台設備 192.168.1.10、192.168.1.11 都可經由公共 IP 203.0.113.5 進行通信,但它們的不同連接被分配了不同的端口號。
端口轉發(Port Forwarding)
端口轉發 是 NAT 的一種擴展功能,允許外部網路上的用戶通過特定的端口號訪問內部網路中的特定設備或服務。這通常用於將外部請求轉發到內部伺服器或設備上,允許外部用戶連接到內部網路中的服務。
端口轉發的工作方式:
當一個外部設備試圖通過指定的公共 IP 位址和端口號連接到內部設備時,路由器會根據事先設置的規則,將這些請求轉發到內部設備的對應私有 IP 位址和端口。
•例子:如果你在內部網路中有一個伺服器,位址是 192.168.1.100,提供 HTTP 服務(默認使用端口 80),你可以設置端口轉發規則,將外部對 203.0.113.5:8080 的請求轉發到內部網路中的 192.168.1.100:80。
•這樣,外部用戶通過訪問 http://203.0.113.5:8080 就可以訪問內部伺服器上的網頁服務。
NAT 和端口轉發的應用場景