NAT穿越(一) NAT型別

2022-09-16 03:54:11 字數 1756 閱讀 6639

nat分為四種型別:

(1)完全透明nat(full cone nat):

從內部主機      (in ip ipa) +埠(in port porta)  

傳送的資料對映為    ip(out ip ipa)和埠(out port porta) 傳送到外網

從伺服器直連到對映的  ip(out ip ipa)和埠(out port porta)上,資料將會被**到內部主機(in ip ipa), (in port porta)上。

舉例來說:內部的機器client1(ipa:porta)連線server1,經過nat後,nat會開啟乙個埠(ipa:porta)。

外網任何發到這個開啟的埠(ipa:porta)的udp資料報都可到達client1(ipa:porta),不管是不是server1發過來的。

(2)ip受限nat(restricted cone):

從相同內部主機    (in ip ipa) +埠(in port porta) 傳送的資料經過nat後,對映為相同的ip(outip ipa)和埠(out port porta)傳送到外網裝置y。

和完全nat不同的是,只有從外部機器y發過來的請求可以被**到內部主機(in ip ipa) +埠(in port porta) ,其他機器發過來的資料不能**到內部機器。

也就是說進內部網的資料報的port不受限制, ip受限制。

舉例來說:這種nat內部的機器client1(ipa:porta)連線server1,經過nat後,nat會開啟乙個埠(ipa:porta)。

然後server1可以用任何埠和client1(ipa:porta)通訊,其他的外網ip不行。

(3)埠(和ip)受限nat(port restricted cone)

與ip受限nat不同的是,只有當外部主動請求的的源ip和埠 和 內部網傳送請求的目的ip和埠相同時才能通訊。

舉例:這種nat內部的機器client1(ipa:porta)連線server1,經過nat後,nat會開啟乙個埠(ipa:porta)。

然後server1可以用原來的埠和client1(ipa:porta)通訊。其它埠和外網ip傳送給(ipa:porta)的資料報會被nat丟棄。

(4)對稱nat

如果傳送的包的目的ip 和 port相同,那麼對映 ip 和 port將相同。內部的同一臺機器,同乙個埠如果目的位址不同,那麼對映的埠也不同,所以只有他主動連的伺服器才可能知道他的對映後埠,別的伺服器如果想連他只能靠猜測埠。

對於這種nat,連線不同的外部目標(ip或埠不同),原來nat開啟的對映埠會變化。

舉例:這種nat內部的機器client1(ipa:porta)連線server1,經過nat後,nat會開啟乙個埠(ipa:porta)。

然後server1只有在當前連線上才能與client1(ipa:porta)通訊。因為內部機器client1(ipa:porta)再次連線server1時,經過nat後,nat會開啟另乙個埠(ipa:portb),導致其它外部ip發給(ipa:porta)的資料報被nat丟棄。

總結:前面3種nat,對映 port 和 ip,是根據傳送包的的內部網的ip和埠決定的。如果內網ip和埠相同,那麼對映後的埠和位址是固定。這個功能為我們的穿透nat提供了條件,可以實現p2p。

對於對稱型nat,打洞後的對映 位址和埠變得不可靠,難穿透。需借助turn服務進行**。

NAT型別及穿越

1.nat簡介 nat network address translation,網路位址轉換 是一種廣泛應用的解決ip短缺的 有效方法,nat將內網位址轉和埠號換成合法的公網位址和埠號,建立乙個會話,與公網主機進行通訊。1.1.nat分類 從實現的技術角度,又可以將nat分成如下幾類 全錐nat f...

NAT 原理與NAT穿越

最近在看負載均衡方面的東西中很多都提到了nat穿越,特意在此總結一下 先做乙個約定 內網a中有 a1 192.168.30.112 a2 192.168.30.114 兩個使用者 閘道器x1 乙個nat裝置 有公網ip222.225.80.51 內網b中有 b1 192.168.40.112 b2 ...

NAT 原理與NAT穿越

最近在看負載均衡方面的東西中很多都提到了nat穿越,特意在此總結一下 先做乙個約定 內網a中有 a1 192.168.30.112 a2 192.168.30.114 兩個使用者 閘道器x1 乙個nat裝置 有公網ip222.225.80.51 內網b中有 b1 192.168.40.112 b2 ...