NAT 原理與NAT穿越

2021-07-15 10:26:56 字數 3828 閱讀 9963

最近在看負載均衡方面的東西中很多都提到了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(192.168.40.114)兩個使用者

閘道器y1(乙個nat裝置)有公網ip222.225.50,34;.

簡介nat即network address translation,它可以讓那些使用私有位址的內部網路連線到internet或其它ip網路上.nat路由在將內部網路的資料報傳送到公用網路時,在ip包的報頭把私有位址轉換成合法的ip位址.

原理:當內部網路中的一台主機想傳輸資料到外部網路時,它先將資料報傳輸到nat路由器上,路由器檢查資料報的報頭,獲取該資料報的源ip資訊,並從它的nat對映表中找出與該ip匹配的轉換條目,用所選的內部全域性位址(全域性唯一ip位址)來替換內部區域性位址,並**資料報.

當外部網路對內部主機進行應答時,資料報被送到nat路由器上,路由器接收到目的位址為內部全域性位址(外網ip)的資料報,它將用內部全域性位址通過nat對映表查詢內部區域性位址,然後將資料報的目的位址替換成內部區域性位址(內網私有ip),並將資料報**到內部主機. 優點

缺點 nat的三種型別

靜態nat (一對一)

在客戶機

192.168

.30.112

:4000

--> 180.97

.33.107

:4000

在閘道器:

222.225

.50.81

:4000

--> 180.97

.33.107

:4000

閘道器上的靜態對映表:

192.168

.30.112

:4000

-->222.225

.80.51

:4000

根據公網ip,改請求包的源ip.

回應過程180.97

.33.107

:4000

--->222.25

.50.81

:4000

在閘道器:

180.97

.33.107

:4000

--->192.168

.30.112

:4000

根據閘道器上的靜態對映表,改變目的ip; 總結

在a網中,閘道器中只有乙個合法的公網ip,在a網中的內網中,就只能有一台pc能通過這個閘道器訪問外網,它們之間是一一對應關係,乙個內網ip對應閘道器的乙個公網ip,再進行配置時就已經指定.如果想讓內網中的其它pc也能訪問外網,那麼閘道器就必須有多個公網ip,並對每台系想訪問外網的pc進行靜態配置.

動態nat (多對多)

在客戶機

192.

168.30.

112:4000

--> 180.97

.33.107:4000

在閘道器:

222.

225.80.

51:4000

--> 180.97

.33.107:4000 //這個公網ip是從配置時指定的公網ip中隨機選擇的

.也有可能會是222

.225.80

.52或222

.225.80

.53;

閘道器上的靜態對映表:

192.

168.30.

112:4000

-->222

.225.80

.51:4000

根據公網ip

,改請求包的源ip

.

回應過程

180.97

.33.107

:4000

--->222.25

.50.81

:4000

在閘道器:

180.97

.33.107

:4000

--->192.168

.30.112

:4000

根據閘道器上的靜態對映表,改變目的ip;

埠多路復用(多對一,目前使用最多的)

通過使用埠多路復用,可以達到乙個公網位址對應多個私有位址的一對多轉換。在這種工作方式下,內部網路的所有主機均可共享乙個合法外部ip地 址實現對internet的訪問,來自不同內部主機的流量用不同的隨機埠進行標示,從而可以最大限度地節約ip位址資源。同時,又可隱藏網路內部的所有 主機,有效避免來自internet的攻擊。因此,目前網路中應用最多的就是埠多路復用方式。

在客戶機

192.168

.30.112

:4000

---> 180.97

.33.107

:4000

192.168

.30.114

:4000

---> 180.97

.33.107

:4000

在閘道器222.225

.80.51

:2223

---> 180.97

.33.107

:4000

222.225

.80.51

:2345

--->180.97

.33.107

:4000

閘道器的對映:

192.168

.30.112

:4000

---> 222.225

.80.51

:2223

192.168

.30.114

:4000

---> 222.225

.80.51

:2345

場景

a網中的a1(192.168.30.112)想訪問b網中的b1(192.168.40.112);

假設1:假設a網中a1首先訪問b網的閘道器(222.225.50.34),那麼a1又怎麼能知道b1的閘道器是222.225.50.34.好,暫且假設a1知道b1的閘道器為222.225.50.34,現在請求到了b1的閘道器,那麼它又怎麼知道發給a網中的哪個主機pc呢.

向外部固定的伺服器註冊外部位址和埠號.

a1 192.168

.30.112

:4000

-- > 180.34

.56.12

:5687

b1 192.168

.40.112

:4000

-- > 180.34

.56.12

:5678

a1的閘道器對映表: 192.168

.30.112

:4000

--> 222.225

.80.51

:2345

b1的閘道器對映表:192

.168

.40.112

:4000

--> 222.225

.50.34

:3245

在180.34.56.12儲存一張表

使用者名稱閘道器ip

埠a1

222.225.80.51

2345

b1222.225.50.34

3245|

現在假設a1訪問b1,先去180.34.56.12檢索b1的閘道器的ip和埠,檢索到向其傳送連線. 

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是為了節省ip位址而設計的,但它隱藏了內網機器的位址,意外 起到了安全的作用,由於客戶端是主動登入p2p網路才可穿越,所以p2p的方式也沒有違背企業的內部管理原則 穿越nat的意義 nat是為了節省ip位址而設計的,但它隱藏了內網機器的位址,意外 起到了安全的作用。對外不可見,不透明的內部網路...

NAT穿越(一) NAT型別

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 ...