实验拓扑
实验需求
- 部署 L3VPN over SR-MPLS TE (Inter-AS) 环境,实现 PC1 与 PC2 互通;
实验过程
该实验开始前,需要预先完成如下配置:
- 完成设备接口 IP Adress 及 OSPF 配置,实现网络互通; ⇒ 略过
- 完成 SR MPLS BE 配置,实现隧道的建立; ⇒ 略过
- 完成 SR MPLS TE 配置,通过显式路径或 CSPF 算路皆可; ⇒ 略过
配置过程:
# ----------------------------------------------------------------------------------- # BGP VPNv4 [CX1]bgp 100 [CX1-bgp]peer 5.5.5.5 as-number 100 [CX1-bgp]peer 5.5.5.5 connect-interface LoopBack 0 [CX1-bgp]ipv4-family vpnv4 unicast [CX1-bgp-af-vpnv4]peer 5.5.5.5 enable [CX5]bgp 100 [CX5-bgp]peer 1.1.1.1 as-number 100 [CX5-bgp]peer 1.1.1.1 connect-interface LoopBack 0 [CX5-bgp]ipv4-family vpnv4 unicast [CX5-bgp-af-vpnv4]peer 1.1.1.1 enable # ----------------------------------------------------------------------------------- # 接入 CE 设备 [CX1]ip vpn-instance SiteA [CX1-vpn-instance-SiteA]ipv4-family unicast [CX1-vpn-instance-SiteA-af-ipv4]route-distinguisher 100:1 [CX1-vpn-instance-SiteA-af-ipv4]vpn-target 100:1 [CX1]interface Ethernet 1/0/1 [CX1-Ethernet1/0/1]ip binding vpn-instance SiteA [CX1-Ethernet1/0/1]ip address 192.168.10.254 24 [CX1]bgp 100 [CX1-bgp]ipv4-family vpn-instance SiteA [CX1-bgp-SiteA]network 192.168.10.0 24 [CX5]ip vpn-instance SiteB [CX5-vpn-instance-SiteB]ipv4-family unicast [CX5-vpn-instance-SiteB-af-ipv4]route-distinguisher 100:1 [CX5-vpn-instance-SiteB-af-ipv4]vpn-target 100:1 [CX5]interface Ethernet 1/0/1 [CX5-Ethernet1/0/1]ip binding vpn-instance SiteB [CX5-Ethernet1/0/1]ip address 192.168.20.254 24 [CX5]bgp 100 [CX5-bgp]ipv4-family vpn-instance SiteB [CX5-bgp-SiteB]network 192.168.20.0 24 # ----------------------------------------------------------------------------------- # 配置隧道策略,优选 TE 隧道 [CX1]tunnel-policy tp1 [CX1-tunnel-policy-tp1]tunnel select-seq sr-te sr-lsp load-balance-number 1 [CX1]ip vpn-instance SiteA [CX1-vpn-instance-SiteA]tnl-policy tp1 [CX5]tunnel-policy p1 [CX5-tunnel-policy-p1]tunnel select-seq sr-te sr-lsp load-balance-number 1 [CX5]ip vpn-instance SiteB [CX5-vpn-instance-SiteB]tnl-policy p1
测试方法:
- [CX5]display ip routing-table vpn-instance SiteB 192.168.10.1 verbose 输出
- Label 为 BGP 为该路由分配的标签;
- TunnelID 显示其已迭代到 SR-TE 隧道;
- PC1 ping PC5 能够成功,且抓包能够看到两层标签,内层 BGP 分配,外层 SR 分配;
补充说明
配置 Adjacency SID(可选)
- Adjacency SID 在 OSPF 使能 SR 能力后动态生成,可以配置 segment-routing auto-adj-sid disable 命令关闭动态邻接标签。动态 Adjacency SID 在设备重启后可能会发生变化,如果显式路径使用动态邻接标签,则在设备重启之后就需要重新配置。为了方便使用显式路径,用户也可以手工配置 Adjacency SID;
- 执行命令 segment-routing,进入 Segment Routing 视图;
- 执行命令 ipv4 adjacency local-ip-addr local-ip-address remote-ip-addr remote-ip-address sid sid-value,静态配置 SR 的 Adjacency SID;
SR-MPLS TE 隧道是通过 Tunnel 接口来建立和管理的,因此需要在隧道的入节点上配置 SR-MPLS TE 隧道接口;
- 执行命令 system-view,进入系统视图;
- 执行命令 interface tunnel tunnel-number,创建 Tunnel 接口,并进入 Tunnel 接口视图;
- 配置隧道接口的 IP 地址:
- 执行命令 ip address unnumbered interface interface-type interface-number,配置隧道接口借用其他接口的 IP 地址;
- SR-MPLS TE 隧道是单向的,不存在对端地址的问题,不建议为 Tunnel 接口单独配置 IP 地址,通常的做法是 Tunnel 接口借用 Ingress 节点的 LSR ID 作为地址;
- 执行命令 tunnel-protocol mpls te,配置隧道协议为 MPLS TE;
- 执行命令 destination ip-address,配置隧道的目的地址,一般配置为出节点的 LSR ID;
- 由于不同类型的隧道对于目的地址要求不同,当隧道协议从其他类型改变为 MPLS TE 时,原先配置的 destination 将被自动删除,需要重新配置;
- 执行命令 mpls te tunnel-id tunnel-id,配置隧道 ID;
- 执行命令 mpls te signal-protocol segment-routing,配置 TE 隧道的信令协议为 Segment Routing;
- 执行命令 mpls te path explicit-path path-name [ secondary ],配置隧道应用的显式路径;
- path-name 需要与命令 explicit-path path-name 里创建的显式路径保持一致;
显式路径由一系列节点构成,按配置的先后顺序组成一条向量路径。既可以通过显式路径中指定下一跳标签来规划 SR-MPLS TE LSP 途径的路径,也可以通过显式路径中指定下一跳 IP 地址来规划 SR-MPLS TE LSP 途径的路径。显式路径中的 IP 地址一般使用接口的 IP 地址。使用中的显式路径支持更新;