​点击返回:思科SD-WAN实战课

自学思科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分发到所有控制器,控制器证书序列号。

 

自学思科SD-WAN控制层面_序列号

二、DTLS和TLS隧道基础结构

vSmart和vBand之间:

  • 建立隧道之前,双方交换个人证书
  • 隧道建立加密AES和哈希算法SHA
  • 控制层面的流量建立DTLS隧道(传送UDP报文),建立成功后数据层面的流量建立TLS隧道(传送TCP报文);

自学思科SD-WAN控制层面_身份验证_02

vEdge和vSmart之间:

  • vSmart通过OMP协议推送配置、路由策略等信息给vEdge,这个推送过程称作Netconf;
  • vSmart只需要配置IP、认证信息,上线后配置通过vManage、vSmart下发;

自学思科SD-WAN控制层面_身份验证_03

DTLS互联建立: 

自学思科SD-WAN控制层面_白名单_04

自学思科SD-WAN控制层面_序列号_05

自学思科SD-WAN控制层面_序列号_06

三、控制器身份验证和信任+++++控制平面建立1(三件套之间建立)

 

自学思科SD-WAN控制层面_白名单_07

身份验证:控制器身份由Symantec签名证书提供(寿命1-2年)或者可以使用企业CA。 在所有其他控制器和vEdge路由器上需要Enterprise Root证书

信任:

  • Avnet 根证书链,可验证vEdge路由器-----嵌入Viptela软件
  • Viptela 根证书链,可对vEdge Cloud路由器进行身份验证----由vManage提供. 对集群则提供多个Viptela 根证书链.
  • Symantec 根证书链,对其他控制器进行身份验证-----嵌入Viptela软件或者可以使用企业根链

3.1 控制连接的建立(vSmart ⟺ vBond)  通过 DTLS

 

自学思科SD-WAN控制层面_身份验证_08

  • Symantec签名证书被交换
  • vBond验证:信任针对根的已签名vSmart证书;针对授权白名单的证书序列号(来自vManage);针对本地配置之一的组织名称(收到的证书OU)
  • vSmart验证:信任根的vBond证书;针对本地配置的组织名称(收到的证书OU)
  • 持续的DTLS连接出现----vBond是服务器

自学思科SD-WAN控制层面_白名单_09

3.2 控制层面的建立(vManage⟺ vBond)   通过 DTLS

 

自学思科SD-WAN控制层面_序列号_10

  • Symantec签名证书被交换
  • vBond验证:信任针对根的已签名vSmart证书;针对授权白名单的证书序列号(来自vManage);针对本地配置之一的组织名称(收到的证书OU)
  • vManage验证:信任根的vBond证书;针对本地配置的组织名称(收到的证书OU)
  • 持续的DTLS连接出现----vBond是服务器

3.3 控制层面的建立---冗余部署(vSmart⟺ vSmart)   通过TLS / DTLS

自学思科SD-WAN控制层面_白名单_11

  • 冗余vSmart部署
  • Symantec签名证书被交换
  • 每个vSmart都会验证:信任根用户签署的vSmart证书;针对授权白名单的证书序列号(来自vManage);针对本地配置的组织名称(收到的证书OU)
  • 持续的DTLS / TLS连接出现-具有最高公有IP地址的vSmart是服务器

3.4 控制层面的建立(vManage⟺ vSmart)  通过TLS / DTLS

 

自学思科SD-WAN控制层面_身份验证_12

  • 交换Symantec签名证书
  • vSmart验证:信任根用户签署的vManage证书;针对授权白名单的证书序列号(来自vManage);组织名称(收到的证书OU)针对本地配置的一个
  • vManage验证:信任根的vSmart证书;针对授权白名单的证书序列号(来自vManage);针对本地配置的组织名称(收到的证书OU)
  • 持续的DTLS / TLS连接出现

四、vEdge路由器身份和信任+++++控制平面建立2(vEdge Appliance 端与三件套之间建立)

自学思科SD-WAN控制层面_序列号_13

4.1 vEdge路由器身份和信任

认证:

  • 每个物理vEdge路由器由机器ID和证书序列号唯一标识
  • 证书存储在板载防篡改模块 Tamper Proof Module (TPM)中---在生成过程中安装 (25 year lifetime)
  • 证书由Avnet根CA签名----受控制平面元素信任

信任:

  • Symantec 根证书链用于验证控制平面元素---嵌入Viptela软件
  • 另外,企业根证书链可用于验证控制平面元素,将企业根CA安装到所有WAN边缘–能够验证控制器证书;可以在ZTP期间自动安装

4.2 控制平面的建立(vEdge Appliance ⟺ vBond)

自学思科SD-WAN控制层面_白名单_14

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) 

 

自学思科SD-WAN控制层面_身份验证_15

  • 签名证书被交换
  • vSmart和vManage验证:信任已签名的vEdge证书,是针对根;针对授权白名单的证书序列号(来自vManage);针对本地配置的组织名称(收到的证书OU)
  • vEdge验证:针对root用户信任vSmart和vManage证书;针对本地配置之一的组织名称(收到的证书OU)
  • vEdge和vSmart / vManage之间建立了持久的DTLS / TLS连接;-vEdge是客户端

五、vEdge Cloud身份验证和认证+++++控制平面建立3(vEdge Cloud ⟺ vBond, vSmart, vManage)

自学思科SD-WAN控制层面_白名单_16

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)

 

自学思科SD-WAN控制层面_白名单_17

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控制平面传输

自学思科SD-WAN控制层面_序列号_18

  • 默认情况下,vEdge路由器将尝试在所有预配置的传输上建立控制连接
  • 管理员可以控制vEdge路由器用于建立控制连接的传输方式

六、控制器部署

6.1 控制器建设模式(见上节)

6.2 控制器部署模式(见上节)

6.3 控制器连接方式(以下两种)

自学思科SD-WAN控制层面_序列号_19

6.4 将控制器添加到vManage

 

自学思科SD-WAN控制层面_身份验证_20

  • 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

 

自学思科SD-WAN控制层面_身份验证_21

  • (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

 

自学思科SD-WAN控制层面_白名单_22

  • (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控制/数据平面

 

自学思科SD-WAN控制层面_身份验证_23

  7.2 WAN Edge路由器–基本端口

 

自学思科SD-WAN控制层面_白名单_24

  • 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 控制器–基本端口

自学思科SD-WAN控制层面_序列号_25

  • 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。

自学思科SD-WAN控制层面_身份验证_26

3. 端口跳跃

  • 如果在第一个端口上的连接尝试失败,则尝试彼此建立连接时,设备会尝试使用不同的端口。
  • 发生此类故障后,端口值将增加,并且连接
  • 尝试重试。 该软件轮流通过总共五个基本端口,每次连接尝试之间等待的时间越来越长。
  • 如果尚未配置端口偏移,则默认基本端口为12346,并在端口12346、12366、12386、12406和12426之间顺序进行端口跳跃,然后返回端口12346。

 

自学思科SD-WAN控制层面_序列号_27

7.5 防火墙端口– DTLS

 

自学思科SD-WAN控制层面_序列号_28

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

自学思科SD-WAN控制层面_序列号_29

红色表示使用的主要协议或第一个端口

  • vBond IP不是弹性的,建议允许UDP / 12346与vEdge之间的任何来回。
  • WAN Edge可以通过端口跳跃建立连接,建议允许所有5个UDP端口入站到所有WAN Edge