• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      NAT穿越技術(shù)在IPSec VPN中的意義與實(shí)現(xiàn)

      2019-12-23 09:28:13張韜
      電腦知識(shí)與技術(shù) 2019年31期

      張韜

      摘要:網(wǎng)絡(luò)中使用NAT技術(shù)實(shí)現(xiàn)企業(yè)和Internet連接是一種非常普遍的應(yīng)用,此時(shí)通過NAT的數(shù)據(jù)包報(bào)頭都將會(huì)被改寫,而一旦企業(yè)內(nèi)又有IPSec VPN系統(tǒng)部署的需求,由于IPSec從安全性方面不允許改變數(shù)據(jù)包內(nèi)容,所以數(shù)據(jù)包在穿越NAT網(wǎng)絡(luò)時(shí),就會(huì)存在著困難。實(shí)踐證明,在網(wǎng)絡(luò)出口設(shè)備上使用NAT穿越技術(shù)可以很好解決以上問題。

      關(guān)鍵詞:NAT;IPSec VPN;NAT穿越;udp;esp

      中圖分類號(hào):TP393

      文獻(xiàn)標(biāo)識(shí)碼:A

      文章編號(hào):1009-3044(2019)31-0017-02

      1概述

      在企業(yè)VPN網(wǎng)絡(luò)的部署實(shí)施中,NAT和IPSec兩種技術(shù)經(jīng)常存在著矛盾。主要原因是NAT進(jìn)行地址轉(zhuǎn)換的時(shí)候,需要修改數(shù)據(jù)包報(bào)頭中的源lP地址和源端口號(hào)部分,此時(shí)數(shù)據(jù)包將被改寫。而經(jīng)過IPSec保護(hù)后的數(shù)據(jù)包在中途傳輸時(shí),如果使用傳輸模式,因?yàn)镮PSec會(huì)將IP包頭進(jìn)行加密保護(hù)起來,并生成hash值,要更改IP包頭是不可行的,如果隨意改動(dòng)IP包頭,將使該數(shù)據(jù)包作廢,所以普通IPSec數(shù)據(jù)包無法穿越NAT設(shè)備,這勢必就會(huì)影響到企業(yè)IPSec VPN之間的正常通信。而使用隧道模式時(shí),可以避免這樣共存的問題,后面涉及的IPSec VPN場景都是基于隧道模式。

      2解決方案

      目前,為了解決NAT和IPSec VPN之間的共存問題,已形成了較為成熟的解決方案,主要有以下幾種。

      (1)基于特定域IP(Realm Specific IP,RSIP)的穿越技術(shù)嘲

      因?yàn)樵谧畛踉O(shè)計(jì)的時(shí)候就沒有考慮到NAT與IPSec兩種技術(shù)之間的兼容性,對于IPSec可以更改其協(xié)議設(shè)計(jì)從而在根源上解決沖突或者對于NAT則可以使用替代的RSIP協(xié)議,這種解決方案雖然能夠全面解決兼容問題,但是實(shí)現(xiàn)相對復(fù)雜,需要對原有設(shè)備做較大改動(dòng)。

      (2)基于NAT-T的穿越技術(shù)

      路由器探測網(wǎng)絡(luò)路徑中是否存在NAT的功能,稱為NATTraversal(NAT穿越),簡稱NAT-T。它使用UDP協(xié)議封裝ESP載荷,在ESP頭部之前插入8個(gè)字節(jié)的UDP報(bào)頭,由于這個(gè)新的傳輸層頭部擁有未被加密的端口信息且被存放在PAT表中,因而可以成功地進(jìn)行PAT轉(zhuǎn)換。這種方式不需要對Internet密鑰交換協(xié)議或者IPSec協(xié)議做修改,實(shí)現(xiàn)最為方便。

      (3)基于NAT前置的穿越技術(shù)

      對于在Site-to-Site中建立IPSec VPN的場景,可以在同一設(shè)備中實(shí)現(xiàn)IPSec和NAT,并且先進(jìn)行NAT處理,后實(shí)現(xiàn)IPSec,就可以避免它們兩者之間的矛盾。但是,這種解決方案有它的局限性,如果超出了它的適用范圍,則這種方案就不再適用了。

      在上述現(xiàn)有三種主流IPSec VPN的NAT穿越技術(shù)中,NAT-T技術(shù)由于實(shí)現(xiàn)相對簡單因而得到廣泛應(yīng)用。本文基于NAT-T方式進(jìn)行網(wǎng)絡(luò)設(shè)計(jì)及實(shí)現(xiàn)。

      2.1 NAT-T穿越技術(shù)原理概述

      NAT-T技術(shù)首先在VPN中IKE協(xié)商的第一階段時(shí)就通過雙方發(fā)送Vendor ID載荷探測是否支持NAT穿越,通過檢測雙方地址和端口的變化探測網(wǎng)絡(luò)路徑中是否存在NAT,檢測的方法是發(fā)送測試數(shù)據(jù)包,對數(shù)據(jù)包做Hash,如果收到的數(shù)據(jù)包的Hash沒變化,就認(rèn)為路徑中沒有NAT。測試時(shí)發(fā)送的數(shù)據(jù)包稱為NAT discovery(NAT-D)包,源地址和端口與目標(biāo)地址和端口是分開的,如果有多個(gè),那么數(shù)據(jù)包也就有多個(gè)包。

      當(dāng)?shù)谝浑A段發(fā)現(xiàn)存在NAT之后,IKE的第二階段才會(huì)采用NAT-T,在ISAKMP中使用目的端口號(hào)為UDP4500來協(xié)商N(yùn)AT-T,而源端口則使用下一個(gè)可用更高的端口號(hào),如4501,在選擇端口時(shí),如果端口已經(jīng)被占用了,則使用4501,4502,一直到可用為止。此時(shí)IPSec的數(shù)據(jù)包會(huì)被作為數(shù)據(jù)部分,再次封裝在UDP包中進(jìn)行傳輸,NAT技術(shù)也就影響不到IPSec數(shù)據(jù)包。

      NAT-T只能使用ESP協(xié)議封裝來穿越NAT,不能使用AH協(xié)議封裝,因?yàn)锳H頭部不允許發(fā)生一點(diǎn)變化,不允許出現(xiàn)檢驗(yàn)錯(cuò)誤。當(dāng)NAT-T將ESP協(xié)議頭封裝到UDP包中時(shí),在ESP協(xié)議的IP報(bào)頭外不僅會(huì)添加新的IP報(bào)頭,還要添加新的UDP頭部(源端口和目的端口均為UDP500),使之可以在NAT環(huán)境下被使用,NAT-T隧道封裝格式見圖1所示。

      2.2 NAT-T技術(shù)設(shè)計(jì)與實(shí)現(xiàn)

      當(dāng)企業(yè)某個(gè)分支機(jī)構(gòu)只有一個(gè)或很少的公網(wǎng)IP時(shí),同時(shí)又要考慮安全性,會(huì)將VPN路由器放置在內(nèi)網(wǎng)中,配置內(nèi)網(wǎng)IP地址后,再通過出口路由器或防火墻等設(shè)備進(jìn)行NAT地址轉(zhuǎn)換后和總部建立VPN連接,如圖2所示。但是建立VPN必須使用公網(wǎng)IP地址才可以和遠(yuǎn)端設(shè)備建立VPN隧道,這時(shí)就需要使用到NAT-T技術(shù),使得IPSec數(shù)據(jù)包能夠穿越NAT環(huán)境。

      這里在GNS3模擬器上來進(jìn)行驗(yàn)證。在以上所有路由器上配置好接口地址和到達(dá)Internet的默認(rèn)路由,并在NAT路由器上開啟NAT功能,將分部內(nèi)網(wǎng)數(shù)據(jù)包源地址192.168.1.2轉(zhuǎn)換為NAT路由器公網(wǎng)fa0/0口lP地址后,此時(shí)VPN設(shè)備之間可以實(shí)現(xiàn)互連,但無法訪問對方的內(nèi)網(wǎng)環(huán)回口地址,需要在路由器上配置IPSec VPN來保證內(nèi)網(wǎng)環(huán)回口之間數(shù)據(jù)的安全傳輸,并驗(yàn)證NAT-T的效果。在當(dāng)前大部分路由器中,NAT-T功能默認(rèn)自動(dòng)開啟。

      此時(shí)發(fā)現(xiàn)從NAT端本地路由器VPN-2的環(huán)回口可以ping通VPN-1的環(huán)回口,VPN連接建立成功。但如果首先從NAT遠(yuǎn)端路由器VPN-1上的環(huán)回口發(fā)起連接,測試到達(dá)VPN-2路由器環(huán)回口IP地址,卻發(fā)現(xiàn)無法ping通。

      2.2.3 NAT穿越實(shí)現(xiàn)和驗(yàn)證

      當(dāng)在VPN設(shè)備支持NAT-T時(shí),如果IPSec VPN連接是從NAT本端設(shè)備發(fā)起的,不需要做任何配置,但如果IPSec VPN連接是從NAT遠(yuǎn)端設(shè)備發(fā)起的,由于VPN使用UDP端口500在對等體之間協(xié)商交換IKE信息,在連接一個(gè)安全網(wǎng)關(guān)對等體所涉及的所有IP接口上都必須允許UDP端口500的報(bào)文通過,就需要在NAT路由器上增加相關(guān)配置,將公網(wǎng)接口lP地址的UDP500和4500端口映射到內(nèi)網(wǎng)VPN地址的500和4500端口,否則IPSec VPN無法通信,例如在上面的應(yīng)用場景中,在NAT路由器上增加如下命令:

      雖然IPSec不能穿越PAT,但靜態(tài)地址NAT映射是可以的。此時(shí)可以看到路由器之間VPN連接已經(jīng)建立成功,使用UDP500和4500端口來協(xié)商IKE的建立和NAT-T,如圖3和圖4所示。NAT遠(yuǎn)端路由器VPN-1上的環(huán)回口也可以ping通VPN-2路由器環(huán)回口lP地址。

      3結(jié)論

      NAT穿越技術(shù)解決了IPSec和NAT技術(shù)共存的問題,可以實(shí)現(xiàn)內(nèi)網(wǎng)路由器和遠(yuǎn)端公網(wǎng)設(shè)備之間在穿越NAT的環(huán)境中建立VPN的要求,使得符合感興趣流的數(shù)據(jù)包使用IPSec機(jī)制進(jìn)行VPN隧道安全傳輸,不符合感興趣流的只做NAT,從而滿足更多的實(shí)際場景需求。

      西乡县| 澳门| 阳原县| 霍城县| 伽师县| 稷山县| 怀安县| 夏津县| 冕宁县| 云梦县| 监利县| 策勒县| 确山县| 洛浦县| 弥渡县| 仁怀市| 长治县| 高平市| 融水| 长垣县| 正宁县| 井研县| 泉州市| 仁布县| 开平市| 防城港市| 平谷区| 武隆县| 永川市| 桦南县| 普兰店市| 霍林郭勒市| 门源| 江都市| 西平县| 大姚县| 红河县| 新龙县| 张北县| 武功县| 武山县|