本文章內(nèi)容過長,上篇請移步主頁進(jìn)行觀看。
書接上文,我們繼續(xù)來說說NAT在SDWAN中的技術(shù)實現(xiàn)。
穿越NAT建立SDWAN隧道
在SDWAN網(wǎng)絡(luò)中,通常將CPE部署為STUN客戶端,將RR部署為STUN服務(wù)器??蛻舳送ㄟ^與服務(wù)器進(jìn)行報文交互,能夠發(fā)現(xiàn)網(wǎng)絡(luò)中是否存在NAT設(shè)備,并確定經(jīng)過NAT設(shè)備轉(zhuǎn)換后的IP地址和端口號。STUN客戶端探測到轉(zhuǎn)換后的IP地址和端口號后,采用該IP地址與其他CPE建立SDWAN隧道;若CPE之間無法直接建立數(shù)據(jù)通道,則需要通過在公網(wǎng)中部署Nat transfer(NAT傳輸)設(shè)備來實現(xiàn)互通。
穿越NAT建立SDWAN隧道示意圖
部署Nat transfer的SDWAN隧道示意圖
部署Nat transfer的SDWAN組網(wǎng)如上圖所示。下面以該組網(wǎng)為例,說明穿越NAT建立SDWAN隧道的過程。
控制通道建立
(1)STUN client與STUN server之間交互STUN協(xié)議報文,STUN client探測到本端NAT類型、Public IP地址(即訪問STUN server時NAT轉(zhuǎn)換后的Public IP)和端口號。
(2) SDWAN client與SDWAN server之間建立SSL連接,然后互相發(fā)送TTE信息(包含STUN探測到的NAT類型、Public IP等)。
(3) CPE 1、CPE 2和Nat transfer收到RR的TTE信息后,比較TTE信息中的路由域與本地是否相同。若路由域相同,則建立到達(dá)RR的SDWAN隧道,使用RR的TTE信息中Public IP作為隧道的目的IP;若路由域不同,則不建立SDWAN隧道。
(4) RR收到CPE 1、CPE 2和Nat transfer的TTE信息后,比較TTE信息中的路由域與本地是否相同。若路由域相同,則分別建立到達(dá)CPE 1、CPE 2和Nat transfer的SDWAN隧道。
由于NATtransfer部署在公網(wǎng)中,RR只需建立到達(dá)Public IP地址的SDWAN隧道。該Public IP地址為Nat transfer的TTE信息中的Public IP。
若CPE 1、CPE 2的TTE信息中NAT類型為完全錐型NAT,則RR建立到達(dá)Public IP地址的SDWAN隧道。該Public IP地址為CPE的TTE信息中的Public IP。
若CPE 1、CPE 2的TTE信息中NAT類型為對端口限制錐型NAT、限制錐型NAT或?qū)ΨQNAT,則RR無法通過TTE信息中的Public IP訪問CPE 1、CPE 2,所以RR無法按照當(dāng)前獲取的信息建立到達(dá)CPE 1、CPE 2的SDWAN隧道。需要按照如下步驟建立SDWAN隧道。
a. CPE 1、CPE 2設(shè)備通過CPE到RR的SDWAN隧道周期性地發(fā)送SDWAN控制報文。
b. RR將接收到的SDWAN控制報文的外層源IP地址作為Public IP地址,建立到達(dá)CPE 1、CPE 2的Public IP地址的SDWAN隧道。
(5)完成SDWAN隧道建立后,CPE 1、CPE 2、Nat transfer和RR在設(shè)備上添加到達(dá)對端Systerm IP的UNR(User network route,用戶網(wǎng)絡(luò)路由)路由。路由的出接口為SDWAN隧道接口,下一跳為遠(yuǎn)端TTE ID。
(6) CPE 1、CPE 2、Nat transfer和RR之間基于Systerm IP建立IPv4 Tnl-Encap-Ext地址族下的BGP連接(控制通道)。
數(shù)據(jù)通道建立
(1) CPE 1、CPE 2、Nat transfer與RR建立BGP連接(控制通道)后,CPE 1、CPE 2、Nat transfer通過IPv4 Tnl-encap-ext路由向RR發(fā)送TTE信息,由RR將TTE信息反射到其他BGP鄰居。
(2) CPE之間能否建立數(shù)據(jù)通道,除了比較路由域是否相同外,還會比較NAT類型,如下表所示。
a.若CPE之間可以直接建立數(shù)據(jù)通道,建立過程請參見步驟控制通道建立(4)。
b.若CPE之間無法直接建立數(shù)據(jù)通道,則需要通過在網(wǎng)絡(luò)中部署Nat transfer設(shè)備來實現(xiàn)互通。CPE與Nat transfer之間建立數(shù)據(jù)通道,CPE之間的數(shù)據(jù)轉(zhuǎn)發(fā)需要先通過數(shù)據(jù)通道轉(zhuǎn)發(fā)到Nat transfer設(shè)備,再由Nat transfer設(shè)備通過數(shù)據(jù)通道轉(zhuǎn)發(fā)到其他CPE,從而實現(xiàn)CPE之間的互通。CPE與Nat transfer之間建立數(shù)據(jù)通道的過程與CPE與RR之間建立SDWAN隧道的過程相同,具體參見步驟控制通道建立(4)。
SDWAN網(wǎng)絡(luò)中的NAT類型組合表
CPE 1的NAT類型 | CPE 2的NAT類型 | CPE之間是否可以直接建立隧道 | 是否需要部署Nat transfer實現(xiàn)CPE互通 |
---|---|---|---|
無NAT | 完全錐型NAT | √ | × |
無NAT | 端口限制錐型NAT/限制錐型NAT | √ | × |
無NAT | 對稱NAT | √ | × |
無NAT | 未知類型NAT | √ | × |
無NAT | 靜態(tài)NAT | √ | × |
完全錐型NAT | 完全錐型NAT | √ | × |
完全錐型NAT | 端口限制錐型NAT/限制錐型NAT | √ | × |
完全錐型NAT | 對稱NAT | √ | × |
完全錐型NAT | 未知類型NAT | √ | × |
完全錐型NAT | 靜態(tài)NAT | √ | × |
端口限制錐型NAT/限制錐型NAT | 端口限制錐型NAT/限制錐型NAT | √ | × |
端口限制錐型NAT/限制錐型NAT | 對稱NAT | × | √ |
端口限制錐型NAT/限制錐型NAT | 未知類型NAT | × | √ |
端口限制錐型NAT/限制錐型NAT | 靜態(tài)NAT | √ | × |
對稱NAT | 對稱NAT | × | √ |
對稱NAT | 未知類型NAT | × | √ |
對稱NAT | 靜態(tài)NAT | √ | × |
未知類型NAT | 未知類型NAT | × | √ |
審核編輯 黃昊宇
-
NAT
+關(guān)注
關(guān)注
0文章
141瀏覽量
16205 -
sdwan
+關(guān)注
關(guān)注
2文章
124瀏覽量
7210
發(fā)布評論請先 登錄
相關(guān)推薦
評論