0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

穿越NAT的SDWAN技術(shù)實現(xiàn)(中)

夽谷科技組網(wǎng)服務(wù) ? 來源:夽谷科技組網(wǎng)服務(wù) ? 作者:夽谷科技組網(wǎng)服務(wù) ? 2022-10-11 12:11 ? 次閱讀

本文章內(nèi)容過長,上篇請移步主頁進行觀看。

書接上文,我們繼續(xù)來說說NAT在SDWAN中的技術(shù)實現(xiàn)。

STUN報文結(jié)構(gòu)

STUN基于UDP傳輸協(xié)議報文,協(xié)議報文的封裝格式如下圖所示。

圖STUN報文結(jié)構(gòu)

pYYBAGNE5LeAJBbvAAAhdnbPw6g657.png

如下圖所示,STUN消息(STUN Message)包括STUN消息頭和STUN消息屬性兩部分。STUN消息頭的長度為20字節(jié),后面跟著零個或多個屬性。

圖STUN消息結(jié)構(gòu)

pYYBAGNE5MOATci8AAB3V-qIyrE949.png

STUN消息頭包含如下字段:

STUN Message Type:STUN消息類型,長度為14比特。當(dāng)前僅支持STUN捆綁請求和STUN捆綁響應(yīng)兩種類型的消息。

Message Length:STUN消息長度,長度為16比特(不包括消息頭長度)。

Magic Cookie:魔術(shù)字,長度為32比特。魔術(shù)字包含固定值0x2112A442,用于STUN服務(wù)器檢測STUN客戶端是否可以識別特定屬性。此外,當(dāng)STUN與其他協(xié)議使用相同的端口號時,通過魔術(shù)字可以將STUN和其他協(xié)議區(qū)分開。

Transaction ID:事務(wù)ID,長度為96比特,用于唯一標(biāo)識一次STUN探測。事務(wù)ID由STUN客戶端來選擇。在一次STUN探測中,STUN服務(wù)器收到STUN客戶端發(fā)送的STUN捆綁請求消息后,回復(fù)的STUN捆綁響應(yīng)消息的事務(wù)ID與STUN捆綁請求消息的事務(wù)ID相同。同時,STUN服務(wù)器根據(jù)事務(wù)ID來唯一標(biāo)識STUN客戶端的不同探測請求。

STUN消息屬性采用TLV(Type/Length/Value,類型/長度/值)格式,結(jié)構(gòu)如圖所示。其中,Type和Length字段的長度均為16比特,Value字段的長度可變。

圖STUN消息屬性結(jié)構(gòu)

poYBAGNE5NKAFBXZAAAvleS-63Q480.png

常見的STUN消息屬性包括如下幾種:

CHANGE-REQUEST:捆綁請求中攜帶的消息屬性,STUN客戶端使用此屬性來請求STUN服務(wù)器改變發(fā)送捆綁響應(yīng)報文的IP地址、端口號。

MAPPED-ADDRESS:捆綁響應(yīng)中攜帶的消息屬性,表示經(jīng)過地址轉(zhuǎn)換后的STUN客戶端的IP地址和端口。

XOR-MAPPED-ADDRESS:捆綁響應(yīng)中攜帶的消息屬性,表示經(jīng)過地址轉(zhuǎn)換后的STUN客戶端的IP地址和端口。與MAPPED-ADDRESS不同的是,XOR-MAPPED-ADDRESS屬性中攜帶的IP地址經(jīng)過了異或(XOR)處理。

RESPONSE-ORIGIN:捆綁響應(yīng)中攜帶的消息屬性,表示STUN服務(wù)器發(fā)送數(shù)據(jù)的IP地址和端口。

OTHER-ADDRESS:捆綁響應(yīng)中攜帶的消息屬性,表示STUN服務(wù)器的另一個IP地址和端口號。假設(shè)STUN服務(wù)器的IP地址為Y1,替代IP地址為Y2,端口號為YP1,替代端口號為YP2。Da表示STUN客戶端發(fā)送捆綁請求的目的IP地址,Dp表示STUN客戶端發(fā)送捆綁請求的目的端口號。如果Da為Y1,那么OTHER-ADDRESS中的IP地址為Y2;如果Da為Y2,那么OTHER-ADDRESS中的IP地址為Y1。如果Dp為YP1,那么OTHER-ADDRESS中的端口號為YP2;如果Dp為YP2,那么OTHER-ADDRESS中的端口號為YP1。當(dāng)STUN客戶端要求STUN服務(wù)器使用不同的IP地址發(fā)送捆綁響應(yīng)時,如果Da為Y1,則捆綁響應(yīng)報文OTHER-ADDRESS中的IP地址為Y2;如果Da為Y2,則OTHER-ADDRESS中的IP地址為Y1。類似地,當(dāng)STUN客戶端要求STUN服務(wù)器使用不同的端口號發(fā)送捆綁響應(yīng)時,如果Dp為YP1,那么OTHER-ADDRESS中的端口號為YP2;如果Dp為YP2,那么OTHER-ADDRESS中的端口號為YP1。

STUN工作機制

STUN客戶端通過和STUN服務(wù)器交互STUN協(xié)議報文,探測網(wǎng)絡(luò)中NAT設(shè)備上的NAT映射的類型和NAT過濾的方式,并根據(jù)探測結(jié)果判斷NAT類型。

1.NAT映射類型探測

假設(shè)STUN服務(wù)器進行STUN探測使用的IP地址為Y1、Y2,端口號為YP1、YP2。STUN客戶端的IP地址和端口號為(X,XP)。STUN進行NAT映射探測的流程如下圖所示,具體步驟為:

(1)STUN客戶端以Endpoint(X,XP)為源地址和源端口向STUN服務(wù)器的外網(wǎng)Endpoint(Y1,YP1)發(fā)送捆綁請求。STUN服務(wù)器使用Endpoint(Y1,YP1)給STUN客戶端發(fā)送捆綁響應(yīng),響應(yīng)內(nèi)容包括:STUN客戶端經(jīng)過NAT映射后的外網(wǎng)Endpoint(X1,XP1),以及STUN服務(wù)器的另一個外網(wǎng)Endpoint(Y2,YP2)。

(2)STUN客戶端收到STUN服務(wù)器發(fā)送的捆綁響應(yīng)報文后,判斷NAT映射后的Endpoint(X1,XP1)是否與內(nèi)網(wǎng)Endpoint(X,XP)相同:

a. 如果Endpoint(X1,XP1)與Endpoint(X,XP)相同,則SUTN客戶端認(rèn)為不存在NAT映射。

b. 如果Endpoint(X1,XP1)與Endpoint(X,XP)不同,則STUN客戶端使用第(3)步進行探測。

(3)STUN客戶端以Endpoint(X,XP)向STUN服務(wù)器的外網(wǎng)Endpoint(Y2,YP1)發(fā)送捆綁請求。STUN服務(wù)器使用Endpoint(Y2,YP1)向STUN客戶端發(fā)送捆綁響應(yīng),響應(yīng)內(nèi)容包括:STUN客戶端經(jīng)過NAT映射后的外網(wǎng)Endpoint(X2,XP2)。

(4)STUN客戶端收到STUN服務(wù)器發(fā)送的捆綁響應(yīng)報文后,判斷NAT映射后的Endpoint(X2,XP2)是否與第(1)步中NAT映射后的Endpoint(X1,XP1)相同:

a. 如果Endpoint(X2,XP2)與Endpoint(X1,XP1)相同,則STUN客戶認(rèn)為NAT映射類型為EIM。

b. 如果Endpoint(X2,XP2)與Endpoint(X1,XP1)不同,則STUN客戶端使用第(5)步進行探測。

(5)STUN客戶端以Endpoint(X,XP)向STUN服務(wù)器的外網(wǎng)Endpoint(Y2,YP2)發(fā)送捆綁請求。STUN服務(wù)器使用Endpoint(Y2,YP2)向STUN客戶端發(fā)送捆綁響應(yīng),響應(yīng)內(nèi)容包括:STUN客戶端經(jīng)過NAT映射后的外網(wǎng)Endpoint(X3,XP3)。

(6)STUN客戶端收到STUN服務(wù)器發(fā)送的捆綁響應(yīng)報文后,判斷NAT映射后的Endpoint(X3,XP3)是否與第(3)步中NAT映射后的Endpoint(X2,XP2)相同:

a. 如果Endpoint(X3,XP3)與Endpoint(X2,XP2)相同,則STUN客戶認(rèn)為NAT映射類型為ADM。

b. 如果Endpoint(X3,XP3)與Endpoint(X2,XP2)不同,則STUN客戶認(rèn)為NAT映射類型為APDM。

NAT映射類型探測流程圖

poYBAGNE5PCAaR6YAAEsY5Xg6qU978.png

2.NAT過濾方式探測

假設(shè)STUN服務(wù)器的IP地址為Y1,替代IP地址為Y2,端口號為YP1,替代端口號為YP2。STUN客戶端的IP地址和端口號為(X,XP)。STUN進行NAT映射探測的流程如下圖所示,具體步驟為:

(1)STUN客戶端以Endpoint(X,XP)為源地址和源端口向STUN服務(wù)器的外網(wǎng)Endpoint(Y1,YP1)發(fā)送捆綁請求,請求報文中攜帶CHANGE-REQUEST屬性,要求STUN服務(wù)器改變IP地址和端口號來發(fā)送捆綁響應(yīng)。STUN服務(wù)器使用Endpoint(Y2,YP2)向STUN客戶端發(fā)送捆綁響應(yīng)。

(2)STUN客戶端根據(jù)是否能收到響應(yīng)報文進行如下判斷:

a. 如果STUN客戶端收到了捆綁響應(yīng)報文,則STUN客戶端認(rèn)為NAT過濾類型為EIF。

b. 如果STUN客戶端未收到捆綁響應(yīng)報文,則STUN客戶端使用第(3)步進行探測。

(3)STUN客戶端以Endpoint(X,XP)向STUN服務(wù)器的外網(wǎng)Endpoint(Y1,YP1)發(fā)送捆綁請求,請求報文中攜帶CHANGE-REQUEST屬性,要求STUN服務(wù)器改變端口號來發(fā)送捆綁響應(yīng)。STUN服務(wù)器使用Endpoint(Y1,YP2)給STUN客戶端發(fā)送捆綁響應(yīng)。

(4)STUN客戶端根據(jù)是否能收到響應(yīng)報文進行如下判斷:

a. 如果STUN客戶端收到了捆綁響應(yīng)報文,則STUN客戶端認(rèn)為NAT過濾類型為ADF。

b. 如果STUN客戶端未收到捆綁響應(yīng)報文,則STUN客戶端認(rèn)為NAT過濾類型為APDF。

圖NAT過濾方式探測流程圖

poYBAGNE5QaASicyAAEnWNrydBQ833.png

STUN客戶端重傳機制

STUN基于UDP傳輸協(xié)議報文,STUN協(xié)議報文有可能在傳輸過程中被丟棄。通過STUN客戶端的重傳機制可以提高STUN協(xié)議報文傳輸?shù)目煽啃?。具體機制如下:

(1)STUN客戶端發(fā)送捆綁請求報文后,如果在一定時間沒有收到捆綁響應(yīng)報文,STUN客戶端會以一定的時間間隔重傳捆綁請求報文。

(2) 當(dāng)STUN客戶端收到捆綁響應(yīng)報文,或者STUN報文的重傳次數(shù)達到最大,STUN客戶端將停止重傳。

(3) 如果STUN客戶端重傳STUN報文的次數(shù)達到最大后,還未收到捆綁響應(yīng)報文,則STUN客戶端認(rèn)為捆綁請求報文傳輸失敗,無法進行STUN探測。

(部分內(nèi)容素材來源網(wǎng)絡(luò),侵權(quán)請聯(lián)系刪除)

審核編輯 黃昊宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • NAT
    NAT
    +關(guān)注

    關(guān)注

    0

    文章

    141

    瀏覽量

    16205
  • sdwan
    +關(guān)注

    關(guān)注

    2

    文章

    124

    瀏覽量

    7210
收藏 人收藏

    評論

    相關(guān)推薦

    Nat server技術(shù)原理和配置過程

    Nat server:指定公有地址:端口和私有地址:端口形成一對一映射關(guān)系——映射表。這也是Nat server與其他nat的區(qū)別之一,Nat server可以指定端口進行映射。
    的頭像 發(fā)表于 10-10 14:38 ?493次閱讀
    <b class='flag-5'>Nat</b> server<b class='flag-5'>技術(shù)</b>原理和配置過程

    IP地址與NAT技術(shù)的結(jié)合與應(yīng)用

    ,并通過NAT設(shè)備將私有IP地址轉(zhuǎn)換為公網(wǎng)IP地址,從而實現(xiàn)內(nèi)部網(wǎng)絡(luò)與外部網(wǎng)絡(luò)的通信。 在了解NAT技術(shù)之前,我們先對IP地址有一個大概的了解。根據(jù)用途和可訪問性,IP地址可以劃分為公
    的頭像 發(fā)表于 08-28 17:30 ?298次閱讀

    NAT設(shè)備實現(xiàn)內(nèi)外網(wǎng)設(shè)備訪問的優(yōu)勢

    內(nèi)網(wǎng)服務(wù)器的需求愈發(fā)迫切。為實現(xiàn)這一目標(biāo),網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)設(shè)備成為了不可或缺的技術(shù)手段之一。本文將探討外網(wǎng)用戶通過NAT設(shè)備訪問內(nèi)網(wǎng)服務(wù)器方案的優(yōu)勢,揭示其在安全性、靈活性、成本
    的頭像 發(fā)表于 08-23 13:57 ?288次閱讀
    <b class='flag-5'>NAT</b>設(shè)備<b class='flag-5'>實現(xiàn)</b>內(nèi)外網(wǎng)設(shè)備訪問的優(yōu)勢

    工業(yè)以太網(wǎng)的網(wǎng)段隔離NAT如何實現(xiàn)

    的基礎(chǔ)。但因IP沖突帶來的網(wǎng)絡(luò)問題,嚴(yán)重影響生產(chǎn)業(yè)務(wù)正常開展。 對此,物通博聯(lián)提供網(wǎng)段隔離器(NAT網(wǎng)關(guān))的解決方案,可以將PLC、HMI、CNC等設(shè)備的重復(fù)IP地址轉(zhuǎn)換為不同IP地址,從而實現(xiàn)跨網(wǎng)段訪問與網(wǎng)絡(luò)隔離。它可以實現(xiàn)
    的頭像 發(fā)表于 08-16 16:16 ?271次閱讀
    工業(yè)以太網(wǎng)<b class='flag-5'>中</b>的網(wǎng)段隔離<b class='flag-5'>NAT</b>如何<b class='flag-5'>實現(xiàn)</b>

    NAT技術(shù)及其應(yīng)用

    網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT,Network Address Translation)是一種廣泛應(yīng)用于現(xiàn)代網(wǎng)絡(luò)技術(shù),旨在解決IP地址短缺問題,同時增強網(wǎng)絡(luò)的安全性和靈活性。本文將詳細解釋NAT
    的頭像 發(fā)表于 07-09 16:43 ?494次閱讀
    <b class='flag-5'>NAT</b><b class='flag-5'>技術(shù)</b>及其應(yīng)用

    NAT網(wǎng)關(guān)實現(xiàn)工業(yè)設(shè)備網(wǎng)段隔離,解決IP沖突問題

    在制造業(yè)工廠,存在大量已經(jīng)提前布設(shè)好的通信網(wǎng)絡(luò),通過實現(xiàn)設(shè)備聯(lián)網(wǎng)數(shù)據(jù)采集,可以實現(xiàn)設(shè)備的遠程監(jiān)控與遠程控制,從而為高效率生產(chǎn)帶來各種智能應(yīng)用。但在新設(shè)備聯(lián)網(wǎng)時,往往會遇見IP地址段沖突
    的頭像 發(fā)表于 06-20 14:11 ?491次閱讀
    <b class='flag-5'>NAT</b>網(wǎng)關(guān)<b class='flag-5'>實現(xiàn)</b>工業(yè)設(shè)備網(wǎng)段隔離,解決IP沖突問題

    sdwan云間互聯(lián)方案是怎樣的?sdwan如何實現(xiàn)多云平臺互聯(lián)?

    度慢、連接不穩(wěn)定等問題。SDWAN通過智能路由和負載均衡技術(shù),優(yōu)化數(shù)據(jù)傳輸路徑,提高帶寬利用率,降低延遲,解決了云間互聯(lián)的延遲和帶寬瓶頸問題。 2、安全性隱患與數(shù)據(jù)傳輸風(fēng)險 多個云平臺之間的互聯(lián)存在安全隱患和數(shù)據(jù)傳輸風(fēng)險。未
    的頭像 發(fā)表于 03-19 17:05 ?534次閱讀

    網(wǎng)段隔離NAT網(wǎng)關(guān)的功能和作用

    隨著網(wǎng)絡(luò)的發(fā)展,越來越多設(shè)備接入到網(wǎng)絡(luò)實現(xiàn)實時通信與遠程訪問。其中網(wǎng)絡(luò)地址轉(zhuǎn)換NAT技術(shù)發(fā)揮著重要作用。NAT可以緩解lP地址不足的問題
    的頭像 發(fā)表于 03-02 14:26 ?930次閱讀
    網(wǎng)段隔離<b class='flag-5'>NAT</b>網(wǎng)關(guān)的功能和作用

    什么是NAT?NAT類型有哪些?NAT是如何工作的?NAT解決了什么問題?

    的方式來連接多個設(shè)備,而不需要為每個設(shè)備都分配一個公共IP地址。通過將源IP地址和端口號映射到公共IP地址和端口號,NAT充當(dāng)了一個中間人,使得設(shè)備可以通過一個公共IP地址與外部網(wǎng)絡(luò)進行通信。 根據(jù)不同的應(yīng)用場景和實現(xiàn)方式,有幾種常見的
    的頭像 發(fā)表于 02-04 11:03 ?4026次閱讀

    淺談NAT網(wǎng)關(guān)

    NAT網(wǎng)關(guān)應(yīng)用
    的頭像 發(fā)表于 02-02 16:26 ?501次閱讀
    淺談<b class='flag-5'>NAT</b>網(wǎng)關(guān)

    PLC網(wǎng)段IP轉(zhuǎn)換器(NAT網(wǎng)關(guān))有什么功能

    的情況,通過接入物通博聯(lián)PLC網(wǎng)段IP轉(zhuǎn)換器(NAT網(wǎng)關(guān)),能夠自動實現(xiàn)到不同應(yīng)用端口的地址轉(zhuǎn)換,從而在內(nèi)部網(wǎng)絡(luò)實現(xiàn)
    的頭像 發(fā)表于 01-22 17:21 ?631次閱讀
    PLC網(wǎng)段IP轉(zhuǎn)換器(<b class='flag-5'>NAT</b>網(wǎng)關(guān))有什么功能

    移動sdwan專線是什么?移動sdwan專線怎么樣?

    移動sdwan專線是什么?移動sdwan專線怎么樣? 移動SD-WAN專線是指基于軟件定義廣域網(wǎng)技術(shù)的移動專線服務(wù)。SD-WAN是一種創(chuàng)新的網(wǎng)絡(luò)架構(gòu),旨在優(yōu)化廣域網(wǎng)連接和管理,通過利用軟件定義和虛擬
    的頭像 發(fā)表于 01-17 15:37 ?7233次閱讀

    NAT網(wǎng)關(guān)實現(xiàn)IP地址轉(zhuǎn)換與端口映射

    。 當(dāng)需要實現(xiàn)內(nèi)外網(wǎng)的跨網(wǎng)段訪問時,可以通過NAT技術(shù)實現(xiàn)。NAT完成將IP報文報頭中的IP地址轉(zhuǎn)換為另一個IP地址的過程,主要用于
    的頭像 發(fā)表于 12-27 17:27 ?651次閱讀
    <b class='flag-5'>NAT</b>網(wǎng)關(guān)<b class='flag-5'>實現(xiàn)</b>IP地址轉(zhuǎn)換與端口映射

    NAT網(wǎng)關(guān)是什么?NAT網(wǎng)關(guān)的作用

    NAT網(wǎng)關(guān)(Network Address Translation Gateway)是一種網(wǎng)絡(luò)設(shè)備,它能夠?qū)?nèi)部網(wǎng)絡(luò)的私有IP地址轉(zhuǎn)換為合法的公網(wǎng)IP地址,使得內(nèi)部網(wǎng)絡(luò)的主機可以通過NAT網(wǎng)關(guān)訪問外部網(wǎng)絡(luò)。
    的頭像 發(fā)表于 12-25 16:00 ?1158次閱讀

    不同品牌的PLC之間如何實現(xiàn)NAT轉(zhuǎn)換與網(wǎng)段隔離

    要求修改IP,付出更多的時間精力與成本,影響到其他生產(chǎn)工作的開展。隨著工廠規(guī)模越來越大,這類問題帶來越來越大的困擾。 ? 對此,物通博聯(lián)提供NAT網(wǎng)關(guān)實現(xiàn)不同品牌PLC的NAT轉(zhuǎn)換與網(wǎng)段隔離,它適用于生產(chǎn)網(wǎng)絡(luò)對 PLC、HMI、
    的頭像 發(fā)表于 11-23 17:19 ?468次閱讀
    不同品牌的PLC之間如何<b class='flag-5'>實現(xiàn)</b><b class='flag-5'>NAT</b>轉(zhuǎn)換與網(wǎng)段隔離