自學思科SD-WAN控制層面連接的建立過程
目錄:
- 章節1:控制層面白名單(三件套認證)
- 章節2:DTLS和TLS基礎結構
- 章節3:控制器身份驗證和信任+++控制平面建立1(三件套之間建立)
- 章節4:vEdge路由器身份驗證和信任+++控制平面建立2(vEdge Appliance ⟺ vBond, vSmart, vManage)
- 章節5:vEdge Cloud身份驗證和信任+++控制平面建立3(vEdge Cloud ⟺ vBond, vSmart, vManage)
- 章節6:控制器部署
- 章節7:端口處理和防火牆
一、控制層面白名單
- vManage、vBand、vSmart應該在同一個網段,管理員在vManage GUI中添加控制器;
- 認證方式:1.買設備提供自帶證書Symantec,導入設備中,再通過Symantec自動進行證書簽名 2.通過企業自有認證方式
- 認證完成后,控制器列表由vManage分發到所有控制器,控制器證書序列號。
二、DTLS和TLS隧道基礎結構
vSmart和vBand之間:
- 建立隧道之前,雙方交換個人證書
- 隧道建立加密AES和哈希算法SHA
- 控制層面的流量建立DTLS隧道(傳送UDP報文),建立成功后數據層面的流量建立TLS隧道(傳送TCP報文);
vEdge和vSmart之間:
- vSmart通過OMP協議推送配置、路由策略等信息給vEdge,這個推送過程稱作Netconf;
- vSmart只需要配置IP、認證信息,上線后配置通過vManage、vSmart下發;
DTLS互聯建立:
三、控制器身份驗證和信任+++++控制平面建立1(三件套之間建立)
身份驗證:控制器身份由Symantec簽名證書提供(壽命1-2年)或者可以使用企業CA。 在所有其他控制器和vEdge路由器上需要Enterprise Root證書
信任:
- Avnet 根證書鏈,可驗證vEdge路由器-----嵌入Viptela軟件
- Viptela 根證書鏈,可對vEdge Cloud路由器進行身份驗證----由vManage提供. 對集群則提供多個Viptela 根證書鏈.
- Symantec 根證書鏈,對其他控制器進行身份驗證-----嵌入Viptela軟件或者可以使用企業根鏈
3.1 控制連接的建立(vSmart ⟺ vBond) 通過 DTLS
- Symantec簽名證書被交換
- vBond驗證:信任針對根的已簽名vSmart證書;針對授權白名單的證書序列號(來自vManage);針對本地配置之一的組織名稱(收到的證書OU)
- vSmart驗證:信任根的vBond證書;針對本地配置的組織名稱(收到的證書OU)
- 持續的DTLS連接出現----vBond是服務器
3.2 控制層面的建立(vManage⟺ vBond) 通過 DTLS
- Symantec簽名證書被交換
- vBond驗證:信任針對根的已簽名vSmart證書;針對授權白名單的證書序列號(來自vManage);針對本地配置之一的組織名稱(收到的證書OU)
- vManage驗證:信任根的vBond證書;針對本地配置的組織名稱(收到的證書OU)
- 持續的DTLS連接出現----vBond是服務器
3.3 控制層面的建立---冗余部署(vSmart⟺ vSmart) 通過TLS / DTLS
- 冗余vSmart部署
- Symantec簽名證書被交換
- 每個vSmart都會驗證:信任根用戶簽署的vSmart證書;針對授權白名單的證書序列號(來自vManage);針對本地配置的組織名稱(收到的證書OU)
- 持續的DTLS / TLS連接出現-具有最高公有IP地址的vSmart是服務器
3.4 控制層面的建立(vManage⟺ vSmart) 通過TLS / DTLS
- 交換Symantec簽名證書
- vSmart驗證:信任根用戶簽署的vManage證書;針對授權白名單的證書序列號(來自vManage);組織名稱(收到的證書OU)針對本地配置的一個
- vManage驗證:信任根的vSmart證書;針對授權白名單的證書序列號(來自vManage);針對本地配置的組織名稱(收到的證書OU)
- 持續的DTLS / TLS連接出現
四、vEdge路由器身份和信任+++++控制平面建立2(vEdge Appliance 端與三件套之間建立)
4.1 vEdge路由器身份和信任
認證:
- 每個物理vEdge路由器由機器ID和證書序列號唯一標識
- 證書存儲在板載防篡改模塊 Tamper Proof Module (TPM)中---在生成過程中安裝 (25 year lifetime)
- 證書由Avnet根CA簽名----受控制平面元素信任
信任:
- Symantec 根證書鏈用於驗證控制平面元素---嵌入Viptela軟件
- 另外,企業根證書鏈可用於驗證控制平面元素,將企業根CA安裝到所有WAN邊緣–能夠驗證控制器證書;可以在ZTP期間自動安裝
4.2 控制平面的建立(vEdge Appliance ⟺ vBond)
1.簽名證書被交換
2.vBond驗證:
- Vedge機器號和序列號(針對白名單)
- 信任已簽名的vEdge證書。針對根
- 針對授權白名單的證書序列號(來自vManage)
- 針對本地配置之一的組織名稱(接收到的OU)
3.vEdge驗證:
- 信任root的vBond證書
- 針對本地配置之一的組織名稱(接收到的OU)
4.vEdge和vBond之間將建立臨時DTLS / TLS連接
- vEdge是客戶端
- vEdge IP已注冊到Vmanage&vSmart
- vSmart和vManage Ips已注冊到vEdge
5.臨時隧道被拆除
4.3 控制平面的建立(vEdge Appliance ⟺ vSmart, vManage)
- 簽名證書被交換
- vSmart和vManage驗證:信任已簽名的vEdge證書,是針對根;針對授權白名單的證書序列號(來自vManage);針對本地配置的組織名稱(收到的證書OU)
- vEdge驗證:針對root用戶信任vSmart和vManage證書;針對本地配置之一的組織名稱(收到的證書OU)
- vEdge和vSmart / vManage之間建立了持久的DTLS / TLS連接;-vEdge是客戶端
五、vEdge Cloud身份驗證和認證+++++控制平面建立3(vEdge Cloud ⟺ vBond, vSmart, vManage)
5.1 vEdge Cloud身份驗證和信任
認證:
- OTP /令牌由vManage生成。上傳的vEdge列表中的每個(機器ID,序列號)一個;在VM部署期間,OTP /令牌通過cloud-init.cfg文件提供給vEdge Cloud
- vManage在OTP /令牌驗證后為vEdge Cloud頒發自簽名證書(25 year lifetime)。vManage刪除OTP以防止重復使用。
信任:
- Symantec 根證書鏈用於驗證控制平面元素。或者,如果使用,則企業根CA信任鏈可用於驗證vEdge-Cloud元素可以在cloud-init.cfg中提供
5.2 控制平面的建立(vEdge Cloud ⟺ vBond, vSmart, vManage)
1.vManage頒發證書身份
2.vBond,vSmart和vManage驗證:
- 針對根信任已簽名的vEdge證書
- 針對授權白名單的證書序列號(來自vManage)
- 針對本地配置之一的組織名稱(接收到的OU)
- vBond根據物理設備流分配vEdge,vManage和vSmart IP
3.vEdge驗證:
- 根目錄信任簽名的vBond,vSmart和vManage證書
- 針對本地配置之一的組織名稱(接收到的
4.vEdge和vSmart / vManage之間建立了持久的DTLS / TLS連接
- vEdge是客戶端
5.3 vEdge控制平面傳輸
- 默認情況下,vEdge路由器將嘗試在所有預配置的傳輸上建立控制連接
- 管理員可以控制vEdge路由器用於建立控制連接的傳輸方式
六、控制器部署
6.1 控制器建設模式(見上節)
6.2 控制器部署模式(見上節)
6.3 控制器連接方式(以下兩種)
6.4 將控制器添加到vManage
- vBond,vSmart控制器IP添加到vManage后
- vManage將使用其VPN0界面登錄vBond和vSmart,以將它們包括在Controller的白名單中。
- (1)vManage UI請求使用帶有用戶憑據的控制器的管理IP,因為默認情況下,為Netconf和ssh啟用了管理接口。 因此,控制器的VPN0子網和VPN512子網之間應該存在路由(AWS,Azure上的默認設置)。
- (2)如果未在VPN0和VPN512之間設計路由,那么我們可以使用Controller的VPN0接口IP將它們添加到vManage上。
- 在這種情況下,臨時在控制器的VPN0接口上啟用Netconf和ssh。
- 驗證控制器,安裝證書並建立控制連接后,應在VPN0上禁用netconf和ssh。
6.4.1 相同的VPC / DC /區域–---相同的站點ID
- (1)(2)vSmart和vManage指向vBond IP地址---NAT公有IP地址
- (3)vBond學習vSmart和vManage的接口私有和NAT公有IP地址----私有是NAT之前的,公有是NAT之后的
- (4)最常見的部署是在同一DC /區域/區域等內的vManage和vSmart上使用相同的site-id。
- 當兩個設備具有相同的站點ID時,我們嘗試使用私有IP進行通信(控制和數據)
- vSmart和vManage使用私有IP地址進行通信
6.4.2 不同的VPC / DC /區域–----不同的站點ID
- (1)(2)vSmart和vManage指向vBond IP地址-----NAT公有IP地址
- (3)vBond學習vSmart和vManage的接口私有和NAT公有IP地址-----私有是NAT之前的,公有是NAT之后的
- (4)vSmart和vManage使用NAT公有IP地址進行通信
七、端口處理和防火牆
7.1 SD-WAN控制/數據平面
7.2 WAN Edge路由器–基本端口
- WAN Edge路由器加入覆蓋網絡時,它將與控制器設備(vBond Orchestrator,vManage NMS和vSmart控制器)建立DTLS控制平面連接。
- 最初建立這些DTLS連接時,WAN Edge路由器使用基本端口UDP:12346。如果無法使用此基本端口建立連接,則它會通過端口12366、12386、12406和12426進行端口跳躍,並在必要時返回, 至12346
- 使用相同的端口號建立與覆蓋網絡中其他vEdge路由器的IPsec連接和BFD會話。
- 命令:show control local-properties
7.3 控制器–基本端口
- vManage NMS和vSmart控制器可以在具有八個虛擬CPU(vCPU)的虛擬機(VM)上運行。 vCPU被指定為Core0至Core7。
- 每個核心分配有單獨的基本端口用於控制連接。 基本端口有所不同,具體取決於連接是通過DTLS隧道(使用UDP)還是通過TLS隧道(使用TCP)進行的。
- vBond編排器不支持多個內核。 vBond協調器始終使用DTLS隧道與其他Viptela設備建立控制連接,因此它們始終使用UDP。 UDP端口為12346。
7.4 端口處理和防火牆
1. 默認情況下,所有SD-WAN設備都使用基本端口12346建立用於處理覆蓋網絡中的控制和流量的連接。 與其他SD-WAN設備建立連接時,每個設備都使用此端口
2. 端口偏移
- 當單個NAT設備后面安裝多個SD-WAN設備時。
- 對於可以在NAT背后的設備之間進行區分的NAT設備,無需配置端口偏移.
- 每個設備使用不同的端口號,以便NAT可以正確識別每個單獨的設備。
- 與基本端口12346的端口偏移。例如,端口偏移為1的設備使用該設備
- 端口12347。端口偏移量可以是0到19之間的值。默認端口偏移量是0。
3. 端口跳躍
- 如果在第一個端口上的連接嘗試失敗,則嘗試彼此建立連接時,設備會嘗試使用不同的端口。
- 發生此類故障后,端口值將增加,並且連接
- 嘗試重試。 該軟件輪流通過總共五個基本端口,每次連接嘗試之間等待的時間越來越長。
- 如果尚未配置端口偏移,則默認基本端口為12346,並在端口12346、12366、12386、12406和12426之間順序進行端口跳躍,然后返回端口12346。
7.5 防火牆端口– DTLS
1. vBond編排器不支持多個內核。
- vBond協調器始終使用DTLS隧道與其他Viptela設備建立控制連接,因此它們始終使用UDP。 UDP端口為12346
2. 紅色表示使用的主要協議或第一個端口
- vBond IP不是彈性的,建議允許UDP / 12346與vEdge之間的任何來回。
- WAN Edge可以通過端口跳建立連接,建議允許所有5個UDP端口入站到所有WAN Edge
3. 默認-未配置端口偏移和DTLS
7.6 防火牆端口– TLS
紅色表示使用的主要協議或第一個端口
- vBond IP不是彈性的,建議允許UDP / 12346與vEdge之間的任何來回。
- WAN Edge可以通過端口跳躍建立連接,建議允許所有5個UDP端口入站到所有WAN Edge