超越SR-MPLS!SRv6实测:基于纯IPv6数据面承载IPv4 VPN业务,体验协议简化之美

经过前面简单的测试(验证成功!翼航仿真实训平台完美支持SR-MPLS L3VPN等前沿技术,网络学习利器),我们验证了使用华为NE40E模拟器设备,在翼航仿真实训平台上,确实可以测试Segment Routing组网实验,SR技术的巨大潜力让我们意犹未尽。
整体L3VPN over IS-IS SR-MPLS BE配置流程跟使用H3C的VSR设备配置相比(Segment Routing之static-sr-mpls:静态配置Segment配置),可以说是如出一辙,熟悉的配方,熟悉的味道。
那我们今天更进一步,测试一下是否支持SRv6组网实验。参考之前用H3C的VSR配置的SRv6,依照华为官方配置手册,验证一下L3VPNv4 over IS-IS SRv6 BE配置示例。
验证实验采用5台华为NE40E模拟器设备,组网示意图如下所示:

其实,整个组网中,只有PE1设备和PE2设备需要支持SRv6功能,P3设备需要支持IPv6功能,CE4设备和CE5设备只要支持BGP即可。配置时,我们需要遵循以下思路:
1、使能骨干网设备(PE1、PE2和P3)各接口的IPv6转发能力,配置各接口的IPv6地址。并使能IS-IS,配置Leve-l级别,指定网络实体;

2、在PE设备上配置VPN实例,接入CE设备,并建立EBGP对等体关系;
3、在PE设备之间建立MP-IBGP对等体关系;
4、在PE设备上配置SRv6,并配置IS-IS的SRv6能力。
首先,我们使能骨干网设备各接口的IPv6转发能力,配置IPv6地址,并使用IS-IS作为IGP协议,完成骨干网设备PE设备和P设备之间的互联互通。
PE1

#
isis 1
is-level level-1
cost-style wide
network-entity 10.0000.0000.0001.00
ipv6 enable topology ipv6
#
interface LoopBack0
ipv6 enable
ipv6 address 10::1/128
isis ipv6 enable 1
#
interface GigabitEthernet3/0/2
undo shutdown
ipv6 enable
ipv6 address 13::1/64
isis ipv6 enable 1
PE2
#
isis 1
is-level level-1
cost-style wide
network-entity 10.0000.0000.0002.00
ipv6 enable topology ipv6
#
interface LoopBack0
ipv6 enable
ipv6 address 10::2/128
isis ipv6 enable 1
#
interface GigabitEthernet3/0/2
undo shutdown
ipv6 enable
ipv6 address 23::2/64
isis ipv6 enable 1
P3
#
isis 1
is-level level-1
cost-style wide
network-entity 10.0000.0000.0003.00
ipv6 enable topology ipv6
#
interface LoopBack0
ipv6 enable
ipv6 address 10::3/128
isis ipv6 enable 1
#
interface GigabitEthernet3/0/1
undo shutdown
ipv6 enable
ipv6 address 13::3/64
isis ipv6 enable 1
#
interface GigabitEthernet3/0/2
undo shutdown
ipv6 enable
ipv6 address 23::3/64
isis ipv6 enable 1
在P3设备上,查看IS-IS邻居信息,可以看到P3设备与两台PE设备建立了IS-IS邻居。
display isis peer

在PE1设备上,查看IS-IS路由表信息,可以看到PE1设备成功学习到了PE3设备的网段信息。
display isis route

接下来,我们先在PE设备上创建IPv4地址族的VPN实例,并应用到PE设备连接CE设备的接口上。同时,配置CE设备与PE设备之间建立EBGP对等体关系。
PE1

#
ip vpn-instance vpn1
ipv4-family
route-distinguisher 100:1
apply-label per-instance
vpn-target 12:1 export-extcommunity
vpn-target 12:1 import-extcommunity
#
interface GigabitEthernet3/0/1
ip binding vpn-instance vpn1
ip address 10.14.1.1 255.255.255.0
#
interface LoopBack0
ip address 10.1.1.1 255.255.255.255
#
router id 10.1.1.1
#
bgp 100
private-4-byte-as enable
ipv4-family vpn-instance vpn1
import-route direct
peer 10.14.1.4 as-number 65410
在PE1设备上,查看VPN实例详细信息。
display ip vpn-instance verbose

PE2

#
ip vpn-instance vpn2
ipv4-family
route-distinguisher 100:1
apply-label per-instance
vpn-target 12:1 export-extcommunity
vpn-target 12:1 import-extcommunity
#
interface GigabitEthernet3/0/1
ip binding vpn-instance vpn2
ip address 10.25.1.2 255.255.255.0
#
interface LoopBack0
ip address 10.2.2.2 255.255.255.255
#
router id 10.2.2.2
#
bgp 100
private-4-byte-as enable
ipv4-family vpn-instance vpn2
import-route direct
peer 10.25.1.5 as-number 65420
CE4
#
interface LoopBack0
ip address 10.4.4.4 255.255.255.255
#
router id 10.4.4.4
#
interface GigabitEthernet3/0/1
ip address 10.14.1.4 255.255.255.0
#
bgp 65410
private-4-byte-as enable
peer 10.14.1.1 as-number 100
ipv4-family unicast
undo synchronization
network 10.4.4.4 255.255.255.255
peer 10.14.1.1 enable
CE5
#
interface LoopBack0
ip address 10.5.5.5 255.255.255.255
#
router id 10.5.5.5
#
interface GigabitEthernet3/0/1
ip address 10.25.1.5 255.255.255.0
#
bgp 65420
private-4-byte-as enable
peer 10.25.1.2 as-number 100
ipv4-family unicast
undo synchronization
network 10.5.5.5 255.255.255.255
peer 10.25.1.2 enable
配置完成后,在PE1设备上检查与CE4设备之间的BGP对等体关系状态,显示为Established表示BGP邻居已建立。
dis bgp vpnv4 all peer

或者,可以通过指定VPN实例,查看对应的对等体邻居。
display bgp vpnv4 vpn-instance vpn2 peer

接下来,我们在两台PE之间,建立MP-IBGP对等体关系。
PE1

#
bgp 100
private-4-byte-as enable
peer 10::2 as-number 100
peer 10::2 connect-interface LoopBack0
ipv4-family vpnv4
policy vpn-target
peer 10::2 enable
PE2
#
bgp 100
private-4-byte-as enable
peer 10::1 as-number 100
peer 10::1 connect-interface LoopBack0
ipv4-family vpnv4
policy vpn-target
peer 10::1 enable
配置完成后,在PE2设备上执行命令,检查与PE1设备之间的BGP对等体关系状态,显示为Established表示BGP邻居已建立。
display bgp vpnv4 all peer

完事具备,只欠东风。最后,我们在PE设备之间建立SRv6 BE路径。
PE1

#
segment-routing ipv6
encapsulation source-address 10::1
locator as1 ipv6-prefix 10:1:: 64 static 32
#
bgp 100
ipv4-family vpnv4
peer 10::2 prefix-sid
ipv4-family vpn-instance vpn1
segment-routing ipv6 locator as1
segment-routing ipv6 best-effort
#
isis 1
segment-routing ipv6 locator as1
PE2
#
segment-routing ipv6
encapsulation source-address 10::2
locator as1 ipv6-prefix 10:2:: 64 static 32
#
bgp 100
ipv4-family vpnv4
peer 10::1 prefix-sid
ipv4-family vpn-instance vpn2
segment-routing ipv6 locator as1
segment-routing ipv6 best-effort
#
isis 1
segment-routing ipv6 locator as1
配置完成之后,在PE2设备上执行命令检查SRv6的Locator信息。
display segment-routing ipv6 locator verbose

如果存在多个SRv6 Locator,还可以通过指定名称查看对应Locator的详细信息。
display segment-routing ipv6 locator as1 verbose

在PE1设备上,执行命令查看IPv4表中SRv6的Local SID表信息。
display segment-routing ipv6 local-sid end-dt4 forwarding

在PE1设备上,检查看到BGP VPNv4路由信息。
display bgp vpnv4 all routing-table

在PE1设备上,检查VPN实例vpn1中的IPv4路由表信息。
display ip routing-table vpn-instance vpn1

这里看到了前所未有的景象,IPv4路由的下一跳竟然是IPv6地址。
如果我们指定具体的目的地址,还可以查看VPN实例路由的详细信息。
display ip routing-table vpn-instance vpn1 10.5.5.5 verbose

当然,最重要的,我们在CE4设备上,测试一下两台CE设备之间的连通性。

如果我们使用tracert命令检查转发路径,我们可以发现,全程都是IPv4节点,用户对中间的传输网络完全无感知。

通过这次成功的实践,我们不仅再次验证了翼航平台对前沿技术的完美支持,更亲身感受到了SRv6的巨大潜力。它摒弃了MPLS的标签栈,直接利用IPv6扩展头实现源路由,简化了网络协议栈,为未来网络与计算的深度融合打开了新的大门。SRv6代表了IP网络演进的未来方向,而今天,我们已在仿真环境中抢先体验了这份未来。
你对SRv6的哪些特性最感兴趣?欢迎在评论区探讨!

声明:来自铁军哥,仅代表创作者观点。链接:https://eyangzhen.com/5126.html

铁军哥的头像铁军哥

相关推荐

关注我们
关注我们
购买服务
购买服务
返回顶部