在網(wǎng)絡(luò)通信過程中,很多時候需要通過公網(wǎng)(Internet)通信,雙方都需要通過公網(wǎng)可以識別的馬甲進行識別和通信,由于“產(chǎn)能”不足,可用馬甲越來越少。
盡管IPv6可以從根本上解決IPv4地址數(shù)量不足的問題,但當前眾多網(wǎng)絡(luò)設(shè)備和網(wǎng)絡(luò)應(yīng)用大多是基于IPv4的。為了在有限的資源下保證雙方正常通信,隨之引入了NAT地址轉(zhuǎn)換技術(shù),利用公共馬甲(公網(wǎng)IP地址)進行通信,從而緩解馬甲庫存不足的問題。
1、什么是NAT地址轉(zhuǎn)換
NAT(Network Address Translation,網(wǎng)絡(luò)地址轉(zhuǎn)換)是一種在公網(wǎng)和私網(wǎng)之間進行IP地址轉(zhuǎn)換的技術(shù),它允許將一個網(wǎng)絡(luò)地址映射到另一個網(wǎng)絡(luò)地址。NAT技術(shù)通過IP數(shù)據(jù)報文頭中的IP地址轉(zhuǎn)換或者端口號轉(zhuǎn)換,來達到地址重用的目的,可以有效地節(jié)約Internet公網(wǎng)地址,所有內(nèi)部主機使用有限的合法地址都可以連接到Internet網(wǎng)絡(luò)。
02、NAT是如何工作的
在連接內(nèi)部網(wǎng)絡(luò)與外部網(wǎng)絡(luò)的路由器上,NAT將主機的私網(wǎng)地址轉(zhuǎn)換為公網(wǎng)地址,通過公網(wǎng)地址響應(yīng)外部網(wǎng)絡(luò)尋址。
NAT工作方式主要包括:一對一地址轉(zhuǎn)換、一對多地址轉(zhuǎn)換。
一對一地址轉(zhuǎn)換
前面提到,在網(wǎng)絡(luò)通信過程中的通信雙方通過馬甲相互識別和通信,一對一地址轉(zhuǎn)換是在內(nèi)部主機對外訪問時,經(jīng)過路由器“包裝”,將內(nèi)部主機的馬甲(IP地址)變?yōu)榭梢栽谕獠烤W(wǎng)絡(luò)上自由通行的公共馬甲,不要以為內(nèi)部主機換了個馬甲就不認識了,其實內(nèi)部主機的IP地址與一個外部合法的IP地址對應(yīng),保持一對一的關(guān)系。如果內(nèi)部主機馬甲過多,當所有的公共馬甲都被占用后,其他內(nèi)部主機就無馬甲可換,將無法對外訪問。
當內(nèi)部網(wǎng)絡(luò)主機想要訪問外部主機時,私網(wǎng)地址和公網(wǎng)地址是一一對應(yīng)的,通信過程如下:
- 內(nèi)部主機發(fā)送通信請求到外部網(wǎng)絡(luò),NAT設(shè)備檢查內(nèi)部主機發(fā)送的數(shù)據(jù)包,獲取私網(wǎng)地址(源IP地址)。通過NAT地址表查詢與私網(wǎng)地址對應(yīng)的公網(wǎng)地址,并將數(shù)據(jù)包內(nèi)的源IP地址替換為公網(wǎng)地址。NAT設(shè)備將替換后的數(shù)據(jù)包根據(jù)目的地址發(fā)送至外部網(wǎng)絡(luò)。外部網(wǎng)絡(luò)對其所接收的數(shù)據(jù)包進行響應(yīng),將響應(yīng)數(shù)據(jù)包返回至NAT設(shè)備。NAT設(shè)備根據(jù)NAT地址表將目的地址還原為內(nèi)部主機的私網(wǎng)地址,并將響應(yīng)數(shù)據(jù)包返回至對應(yīng)的內(nèi)部主機。
一對多地址轉(zhuǎn)換
一對多地址轉(zhuǎn)換是在內(nèi)部主機對外訪問時,將內(nèi)部主機的帶標識的馬甲變?yōu)橥獠烤W(wǎng)絡(luò)上的帶標識的公共馬甲,即內(nèi)部主機地址及端口號與一個外部合法的IP地址及某個傳輸層的端口號相對應(yīng)。這樣當公共馬甲資源不夠,無法實現(xiàn)和內(nèi)部主機的馬甲一一對應(yīng)時,多臺內(nèi)部主機可以共用一個公共馬甲對外訪問。一對多地址轉(zhuǎn)換使內(nèi)部主機通過路由器外連接口上的合法外部IP地址進行地址轉(zhuǎn)換,提供內(nèi)部主機對Internet的訪問能力,最大限度節(jié)省IP地址資源。
當內(nèi)部網(wǎng)絡(luò)主機想要訪問外部主機時,通信過程如下:
內(nèi)部主機發(fā)送通信請求到外部網(wǎng)絡(luò),NAT設(shè)備檢查內(nèi)部主機發(fā)送的數(shù)據(jù)包,獲取私網(wǎng)地址(源IP地址)。
NAT設(shè)備通過NAT地址表中選擇一個可用的公共IP地址和端口號替換數(shù)據(jù)包中的源IP地址。
NAT設(shè)備將替換后的數(shù)據(jù)包根據(jù)目的地址發(fā)送至外部網(wǎng)絡(luò)。
外部網(wǎng)絡(luò)對其所接收的數(shù)據(jù)包進行響應(yīng),將響應(yīng)數(shù)據(jù)包返回至NAT設(shè)備。
NAT設(shè)備根據(jù)NAT地址表將目的地址和端口號還原為內(nèi)部主機的私網(wǎng)地址,并將響應(yīng)數(shù)據(jù)包返回至對應(yīng)的內(nèi)部主機。
03、NAT有什么優(yōu)勢
NAT主要有以下三個優(yōu)勢:
節(jié)省資源
NAT地址轉(zhuǎn)換可以顯著地節(jié)省公網(wǎng)IP地址,緩解IPv4地址資源匱乏的問題,減少和消除地址沖突發(fā)生的可能性。
NAT地址轉(zhuǎn)換技術(shù)可以有效的隱藏內(nèi)部局域網(wǎng)中的主機,對外界隱藏內(nèi)部網(wǎng)絡(luò)的結(jié)構(gòu),維持局域網(wǎng)的私密性。
靈活接入外部服務(wù)
NAT地址轉(zhuǎn)換可以按照用戶的需要,在內(nèi)部局域網(wǎng)內(nèi)部提供給外部FTP、WWW、Telnet服務(wù)。小型網(wǎng)絡(luò)也可以通過NAT的方式,使得私有網(wǎng)絡(luò)靈活的接入Internet。
結(jié)語
到這里,NAT地址轉(zhuǎn)換的介紹就結(jié)束了,您是否已經(jīng)了解馬甲庫存不足該如何解決了呢?歡迎評論區(qū)留言討論。