網絡地址轉換
前言
由於IPV4地址的數量最大為2的32次方,也就是42億多個IP地址,目前IPv4地址已經用盡。IPv6雖然可以從根本上解決IP地址不足的問題,但是目前眾多的網絡設備和網絡應用是基於IPv4的,因此在IPv6廣泛應用之前,一些過渡技術的使用是解決這個問題的主要技術手段。
網絡轉換技術(Network Address Translation)主要用於實現內部網絡的主機訪問外部網絡的功能。當局域網內的主機需要訪問外部網絡時,通過NAT技術可以將其私網地址轉換為公網地址,並且多個私網地址可以共用一個公網地址,這樣既可保證網絡互通,又節省了公網地址。
NAT應用場景

NAT是將IP報文頭部的IP地址轉換為另一個IP地址的過程。NAT一般部署在連接內網和外網的網關設備上。當收到的報文源地址為私網地址、目的地址為公網地址時,NAT可將源私網地址轉換成一個公網地址,並作出相應。網關上還會創建一個NAT映射表,以便判斷從公網收到的報文應該發往的私網目的地址。
NAT種類
NAT的實現方式有多種,適用於不同的場景。
靜態NAT

靜態NAT實現了私有地址和公網地址一對一的映射。如果希望一台主機優先使用某個關聯地址,或者想要外部網絡使用一個指定的公網地址訪問內部服務器時,可以使用靜態NAT。但是在大型網絡中,這種一對一的IP地址映射無法緩解公用地址短缺的問題。
在示例中,源地址為192.168.1.1的報文需要發往公網地址100.1.1.1。在網關RTA上配置了一個私網地址192.168.1.1到公網地址200.10.10.1的映射,當網關收到主機A發送的數據包后,會首先將報文中的源IP地址轉換成200.10.10.1,然后轉發報文到目的設備。目的設備恢復的報文目的地址是200.10.10.1。當網關收到回復報文后,也會執行靜態地址轉換,將200.10.10.1轉換成192.168.1.1,然后轉發報文到主機A。其他主機訪問外部也需地址轉換。
動態NAT

動態NAT通過使用地址池來實現。
本示例中,當內部主機A和B需要訪問公網IP時,網關RTA會從配置的公網地址池中選取一個未使用的公網ip作為映射。每台主機都會分配到地址池中的一個唯一地址。當不需要此連接時,對應的地址映射會被刪除,公網地址也恢復到地址池待用。網關收到回復報文后,也會執行靜態地址轉換。
動態NAT中的地址池用盡后,只能等待被占用的公用IP被釋放后,其他主機才能使用它訪問公網。
NAPT

網絡地址端口轉換(NAPT)允許多個內部地址映射到同一個公網IP地址的不同端口。

Easy Ip


NAT服務器


