• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 关于我们

09-Segment Routing配置指导

目录

07-EVPN L3VPN over SRv6配置

本章节下载 07-EVPN L3VPN over SRv6配置  (385.06 KB)

07-EVPN L3VPN over SRv6配置


1 EVPN L3VPN over SRv6

1.1  EVPN L3VPN over SRv6简介

EVPN L3VPN over SRv6是指通过SRv6隧道承载EVPN L3VPN业务,通过IPv6网络透明传输用户三层数据,实现属于同一个VPN、位于不同地理位置的用户互通。EVPN L3VPN的详细介绍,请参见“EVPN配置指导”中的“EVPN L3VPN”。

1.1.1  EVPN L3VPN over SRv6基本原理

图1-1所示,通过MP-BGP在IPv6骨干网上使用EVPN的IP前缀路由发布用户站点的IPv4/IPv6私网路由,使用PE间的单跳SRv6隧道承载私网报文,在骨干网上根据IGP计算的最优路径转发私网报文,从而实现通过IPv6骨干网连接属于同一个VPN、位于不同地理位置的用户。

图1-1 EVPN L3VPN over SRv6组网示意图

 

1.1.2  路由信息发布

IPv4 EVPN L3VPN over SRv6和IPv6 EVPN L3VPN over SRv6的路由发布过程类似,以IPv4 EVPN L3VPN over SRv6为例,如上图所示,CE 1路由发布到CE 2的过程为:

(1)     CE 1使用静态路由、RIP、OSPF、IS-IS、EBGP或IBGP,将本站点的私网路由发布给PE 1。

(2)     PE 1从CE 1学习到私网路由信息后,将其存放到相应的VPN实例1的路由表中。PE 1为私网路由增加RD和RT属性,并按VPN实例分配私网标签End.DT4 SID、End.DT46 SID(即同一VPN实例的所有私网路由分配相同的End.DT4 SID、End.DT46 SID),或按下一跳分配End.DX4 SID(即VPN实例中相同下一跳的私网路由分配相同的End.DX4 SID),形成EVPN的IP前缀路由。PE 1通过MP-BGP把EVPN的IP前缀路由发布给PE 2。

(3)     PE 2收到EVPN的IP前缀路由后,将该路由加入到VPN实例1的路由表中并将EVPN的IP前缀路由转换成IPv4路由发布给CE 2。

(4)     CE 2收到路由后,学习到路由表中,即CE 2学习到CE 1的路由。

1.1.3  报文转发

目前,EVPN L3VPN over SRv6仅支持SRv6 BE方式,又称为基于SID的转发方式。该方式根据封装的SRv6 SID查找IPv6路由表进行转发。

IPv4 EVPN L3VPN over SRv6和IPv6 EVPN L3VPN over SRv6的报文转发过程类似,以IPv4 EVPN L3VPN over SRv6为例,完成路由发布后,报文从CE 2到CE 1的转发过程为:

(1)     CE 2发送IPv4报文给PE 2。

(2)     PE 2从绑定了VPN实例的接口上收到私网报文后,在VPN实例1的路由表中查找匹配IPv4目的地址的路由,找到对应的End.DT4 SID、End.DT46 SID或End.DX4 SID。然后为报文封装IPv6报文头,在IPv6报文头中End.DT4 SID、End.DT46 SID或End.DX4 SID作为其目的地址。

(3)     PE 2根据End.DT4 SID、End.DT46 SID或End.DX4 SID查找IPv6路由表,通过最优IGP路由将报文转发给P。

(4)     P根据End.DT4 SID、End.DT46 SID或End.DX4 SID查找IPv6路由表,通过最优IGP路由将报文转发给PE 1。

(5)     根据报文头携带的SID类型,PE1的处理方式不同:

¡     如果报文头携带的是End.DT4 SID或End.DT46 SID,PE 1根据End.DT4 SID或End.DT46 SID查找Local SID表,执行End.DT4 SID或End.DT46 SID对应的转发动作,即解封装报文去掉IPv6报文头,并根据End.DT4 SID或End.DT46 SID匹配VPN实例1,在VPN实例1的路由表中,查表转发,将报文发送给CE 1。

¡     如果报文头携带的是End.DX4 SID,PE 1执行End.DX4 SID对应的转发动作,即解封装报文去掉IPv6报文头,并按照End.DX4 SID绑定的下一跳和出接口将报文发送给CE 1。

1.2  EVPN L3VPN over SRv6与硬件适配关系

对于S12500G-AF系列交换机,设备必须满足如下条件才支持配置EVPN L3VPN over SRv6:

·     主控板丝印前缀不为LSXM1。

·     接口板为SF系列接口板或SG系列接口板。

·     系统工作模式为专家模式。有关专家模式的详细介绍,请参见“基础配置指导”中的“设备管理”。

1.3  EVPN L3VPN over SRv6配置限制和指导

仅三层以太网接口、三层聚合接口和VLAN接口支持作为SRv6网络的公网接口,三层以太网子接口、三层聚合子接口不支持作为公网接口。

SRv6 L3VPN业务流量无法从VXLAN网络的AC转发出去。

1.4  EVPN L3VPN over SRv6配置任务简介

EVPN L3VPN over SRv6配置任务如下:

(1)     配置VPN实例并绑定PE连接CE的接口

在PE设备上执行本配置,配置方法请参见“MPLS配置指导”中的“MPLS L3VPN”。

(2)     配置PE-CE间的路由交换

在PE-CE间配置IPv4路由协议(包括静态路由、RIP、OSPF、IS-IS、EBGP或IBGP)或IPv6路由协议(包括IPv6静态路由、RIPng、OSPFv3、IPv6 IS-IS、EBGP或IBGP)

CE使用IPv4路由协议/IPv6路由协议,将本站点的VPN路由发布给PE。在PE上需要为路由协议关联指定VPN实例,在CE上配置普通路由协议即可。关于各个路由协议的具体配置,请参见“三层技术-IP路由配置指导”。

(3)     配置PE-PE间的路由交换

a.     配置SRv6 SID

本功能用来静态配置End.DT4 SID、End.DT6 SID、End.DT46 SID、End.DX4 SID或End.DX6 SID。

b.     配置BGP引用Locator段

通过引用Locator段后,BGP路由才可以通告Locator段内的SRv6 SID。

c.     配置向对等体/对等体组发布SRv6封装的EVPN路由

只有配置本功能后,VPN路由才能作为EVPN路由发布到对等体/对等体组。

d.     配置PE-PE间交互BGP EVPN路由

e.     (可选)配置为私网路由按下一跳分配End.DX4 SID/End.DX6 SID

配置本功能后,PE设备可以为BGP私网路由按下一跳分配End.DX4 SID/End.DX6 SID。

f.     (可选)配置BGP EVPN路由

(4)     配置路由迭代方式

(5)     配置EVPN L3VPN over SRv6封装的IPv6报文头的源地址

本功能用来指定EVPN L3VPN over SRv6骨干网中报文封装的IPv6报文头的源地址。

1.5  配置SRv6 SID

1.5.1  配置普通的SRv6 SID

(1)     进入系统视图。

system-view

(2)     开启SRv6功能,并进入SRv6视图。

segment-routing ipv6

(3)     配置Locator段,并进入SRv6 Locator视图。

locator locator-name [ ipv6-prefix ipv6-address prefix-length [ args args-length | static static-length ] * ]

(4)     配置Opcode段。

¡     配置End.DT4 SID。

opcode { opcode | hex hex-opcode } end-dt4 vpn-instance vpn-instance-name evpn

指定的VPN实例必须已经存在。不同VPN实例不能配置相同End.DT4 SID。

¡     配置End.DT6 SID。

opcode { opcode | hex hex-opcode } end-dt6 vpn-instance vpn-instance-name evpn

指定的VPN实例必须已经存在。不同VPN实例不能配置相同End.DT6 SID。

¡     配置End.DT46 SID。

opcode { opcode | hex hex-opcode } end-dt46 vpn-instance vpn-instance-name evpn

指定的VPN实例必须已经存在。不同VPN实例不能配置相同End.DT46 SID。

¡     配置End.DX4 SID。

opcode { opcode | hex hex-opcode } end-dx4 interface interface-type interface-number nexthop nexthop-ipv4-address vpn-instance vpn-instance-name evpn

指定的VPN实例必须已经存在。不同下一跳和出接口不能配置相同End.DX4 SID。

¡     配置End.DX6 SID。

opcode { opcode | hex hex-opcode } end-dx6 interface interface-type interface-number nexthop nexthop-ipv6-address vpn-instance vpn-instance-name evpn

指定的VPN实例必须已经存在。不同下一跳和出接口不能配置相同End.DX6 SID。

1.6  配置BGP引用Locator段

1. 功能简介

在EVPN L3VPN over SRv6组网场景中,在指定VPN实例的BGP-VPN IPv4/IPv6单播地址族视图下配置本功能后,PE设备将为指定VPN实例的私网路由在引用的Locator段内申请SRv6 SID。

使用End.DT4 SID/End.DT6 SID/End.DT46 SID/End.DX4 SID/End.DX6 SID时,都需要执行本配置,并可以使指定地址族下的BGP路由携带Prefix SID路由属性,达到通告Locator段内的SRv6 SID的效果。

2. 配置限制和指导

配置本功能前,必须满足以下条件:

·     指定的Locator必须存在。

·     End.DT4 SID/End.DT6 SID所在VPN实例与私网的VPN实例必须相同。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入BGP实例视图。

bgp as-number [ instance instance-name ]

(3)     进入BGP-VPN实例视图。

ip vpn-instance vpn-instance-name

(4)     进入BGP-VPN IPv4单播地址族视图或BGP-VPN IPv6单播地址族视图。

¡     进入BGP-VPN IPv4单播地址族视图。

address-family ipv4 [ unicast ]

¡     进入BGP-VPN IPv6单播地址族视图。

address-family ipv6 [ unicast ]

(5)     配置BGP引用Locator段。

segment-routing ipv6 locator locator-name evpn [ auto-sid-disable | auto-sid-dt46 ]

缺省情况下,未引用Locator。

1.7  配置向对等体/对等体组发布SRv6封装的EVPN路由

1. 功能简介

在EVPN L3VPN over SRv6组网环境中需要配置本功能,否则VPN路由无法作为EVPN路由发布到对等体/对等体组。

2. 配置限制和指导

本功能通常配置在EVPN承载的L3VPN网络的边缘节点和RR(Route Reflector,路由反射器)设备上。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入BGP实例视图。

bgp as-number [ instance instance-name ]

(3)     进入BGP EVPN地址族视图。

address-family l2vpn evpn

(4)     配置向对等体/对等体组发布SRv6封装的EVPN路由。

peer { group-name | ipv6-address [ prefix-length ] } advertise encap-type srv6

缺省情况下,向对等体/对等体组发布VXLAN封装的IP前缀路由。

1.8  配置PE-PE间交互BGP EVPN路由

1. 配置限制和指导

PE之间不能同时建立IPv4和IPv6对等体,否则影响路由优选,无法通过SRv6隧道转发流量。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入BGP实例视图。

bgp as-number [ instance instance-name ]

(3)     将对端PE配置为IPv6对等体。

peer { group-name | ipv6-address [ prefix-length ] } as-number as-number

(4)     指定与IPv6对等体/对等体组创建BGP会话时建立TCP连接使用的源接口。

peer { group-name | ipv6-address [ prefix-length ] } connect-interface interface-type interface-number

缺省情况下,BGP使用到达BGP对等体的最佳路由的出接口作为与对等体/对等体组创建BGP会话时建立TCP连接的源接口。

(5)     创建BGP EVPN地址族,并进入BGP EVPN地址族视图。

address-family l2vpn evpn

(6)     使能本地路由器与指定IPv6对等体交换EVPN路由信息的能力。

peer { group-name | ipv6-address [ prefix-length ] } enable

缺省情况下,本地路由器不能与对等体交换EVPN路由信息。

1.9  配置为私网路由按下一跳分配End.DX4 SID/End.DX6 SID

1. 功能简介

在EVPN L3VPN over SRv6组网场景中,如果配置了End.DT4 SID、End.DT6 SID或End.DT46 SID,则PE根据VPN实例为BGP EVPN私网路由分配相同SID。PE对接收到的报文解封装后,会在SID标识的VPN实例内查找路由表,将报文转发给CE。如果希望不查路由表,直接快速地将报文转发给下一跳,则可以基于下一跳地址为BGP路由分配End.DX4/End.DX6 SID。

2. 配置限制和指导

配置本功能前,必须先在BGP-VPN IPv4单播地址族视图或BGP-VPN IPv6单播地址族引用Locator段。

本功能不会为直连路由分配End.DX4 SID或者End.DX6 SID。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入BGP实例视图。

bgp as-number [ instance instance-name ]

(3)     进入BGP-VPN实例视图。

ip vpn-instance vpn-instance-name

(4)     进入BGP-VPN IPv4单播地址族视图或BGP-VPN IPv6单播地址族视图。

¡     进入BGP-VPN IPv4单播地址族视图。

address-family ipv4 [ unicast ]

¡     进入BGP-VPN IPv6单播地址族视图。

address-family ipv6 [ unicast ]

(5)     配置根据下一跳分配End.DX4 SID或End.DX6 SID。请选择其中一项进行配置。

¡     配置BGP EVPN路由为所有下一跳分配End.DX4/End.DX6 SID。

segment-routing ipv6 apply-sid all-nexthop evpn

¡     依次执行以下命令,配置BGP EVPN路由为指定下一跳分配End.DX4/End.DX6 SID。

segment-routing ipv6 apply-sid specify-nexthop evpn

nexthop nexthop-address interface interface-type interface-number

缺省情况下,根据VPN实例为私网路由分配SID。

1.10  配置BGP EVPN路由

1.10.1  配置限制和指导

本节所有命令的详细介绍,请参见“三层技术-IP路由命令参考”中的“BGP”。

1.10.2  配置BGP EVPN路由反射

(1)     进入系统视图。

system-view

(2)     进入BGP实例视图。

bgp as-number [ instance instance-name ]

(3)     进入BGP EVPN地址族视图。

address-family l2vpn evpn

(4)     配置将本机作为路由反射器,并将对等体或对等体组作为路由反射器的客户机。

peer { group-name | ipv6-address [ prefix-length ] } reflect-client

缺省情况下,未配置路由反射器及其客户机。

(5)     (可选)允许路由反射器在客户机之间反射路由。

reflect between-clients

缺省情况下,允许路由反射器在客户机之间反射路由。

(6)     (可选)配置路由反射器的集群ID。

reflector cluster-id { cluster-id | ip-address }

缺省情况下,每个路由反射器都使用自己的Router ID作为集群ID。

(7)     (可选)创建路由反射器的反射策略。

rr-filter ext-comm-list-number

缺省情况下,路由反射器不会对反射的路由进行过滤。

(8)     (可选)允许路由反射器反射路由时修改路由属性。

reflect change-path-attribute

缺省情况下,不允许路由反射器反射路由时修改路由属性。

 

1.10.3  配置BGP EVPN路由属性

(1)     进入系统视图。

system-view

(2)     进入BGP实例视图。

bgp as-number [ instance instance-name ]

(3)     进入BGP EVPN地址族视图。

address-family l2vpn evpn

(4)     配置NEXT_HOP属性,向对等体/对等体组发布路由时,将下一跳属性修改为自身的地址。

peer { group-name | ipv6-address [ prefix-length ] } next-hop-local

缺省情况下,向对等体/对等体组发布路由时,将下一跳属性修改为自身的地址。

(5)     配置对于从对等体/对等体组接收的路由,允许本地AS号在接收路由的AS_PATH属性中出现,并配置允许出现的次数。

peer { group-name | ipv6-address [ prefix-length ] } allow-as-loop [ number ]

缺省情况下,不允许本地AS号在接收路由的AS_PATH属性中出现。

(6)     配置向对等体/对等体组发布团体属性。

peer { group-name | ipv6-address [ prefix-length ] } advertise-community

缺省情况下,不向对等体/对等体组发布团体属性。

 

1.10.4  配置BGP EVPN路由过滤

(1)     进入系统视图。

system-view

(2)     进入BGP实例视图。

bgp as-number [ instance instance-name ]

(3)     进入BGP EVPN地址族视图。

address-family l2vpn evpn

(4)     配置对发布的路由信息进行过滤。

filter-policy { mac-acl-number | name mac-acl-name } export

缺省情况下,不对发布的路由信息进行过滤。

(5)     配置对接收的路由信息进行过滤。

filter-policy { mac-acl-number | name mac-acl-name } import

缺省情况下,不对接收的路由信息进行过滤。

(6)     对来自对等体/对等体组的路由或发布给对等体/对等体组的路由应用路由策略。

peer { group-name | ipv6-address [ prefix-length ] } route-policy route-policy-name { export | import }

缺省情况下,没有为对等体/对等体组指定路由策略。

(7)     配置对接收到的EVPN路由进行Route Target过滤。

policy vpn-target

缺省情况下,对接收到的EVPN路由进行Route Target过滤,即只将Export Route Target属性与本地Import Route Target属性匹配的EVPN路由加入到路由表。

1.10.5  配置BGP EVPN路由的下一跳地址类型影响路由优选

1. 功能简介

在多种网络共存的场景中,设备可能同时学习到同一目的网络地址、下一跳分别为IPv4地址和IPv6地址的BGP路由。例如,设备通过SRv6网络和MPLS网络均可以到达同一个目的地址时,设备从SRv6网络学习到下一跳地址为IPv6地址的路由,从MPLS网络学习到下一跳地址为IPv4地址的路由。缺省情况下,来自MPLS网络的路由将作为优选路由。用户需要优选来自SRv6网络的路由时,需要额外配置其他路由属性来影响优选结果。配置本命令后,BGP可以选择优选下一跳地址为IPv4或IPv6地址的路由,以帮助用户更灵活便捷地规划BGP选路。

本功能在BGP选路规则中的具体优先级顺序,请参见“三层技术-IP路由配置指导”中的“BGP概述”。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入BGP实例视图。

bgp as-number [ instance instance-name ]

(3)     进入BGP EVPN地址族视图。

address-family l2vpn evpn

(4)     配置BGP优选下一跳地址为IPv6地址的路由。

bestroute nexthop-priority ipv6 [ preferred ]

缺省情况下,BGP优选下一跳地址为IPv4地址的路由。

1.10.6  配置BGP Add-Path

(1)     进入系统视图。

system-view

(2)     进入BGP实例视图。

bgp as-number [ instance instance-name ]

(3)     进入BGP EVPN地址族视图。

address-family l2vpn evpn

(4)     配置Add-Path功能。

peer { group-name | ipv6-address [ prefix-length ] } additional-paths { receive | send } *

缺省情况下,未配置Add-Path功能。

(5)     配置向指定对等体/对等体组发送的Add-Path优选路由的最大条数。

peer { group-name | ipv6-address [ prefix-length ] } advertise additional-paths best number

缺省情况下,向指定对等体/对等体组发送的Add-Path优选路由的最大条数为1。

(6)     配置Add-Path优选路由的最大条数。

additional-paths select-best best-number

缺省情况下,Add-Path优选路由的最大条数为1。

(7)     (可选)配置路由延迟优选时间。

route-select delay delay-value

缺省情况下,延迟时间为0秒,即路由优选不延迟。

1.11  配置路由迭代方式

1. 功能简介

EVPN L3VPN over SRv6网络中,设备为用户流量封装SRv6 SID后,可以根据SRv6 BE方式为封装后的报文查找转发路径。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入BGP实例视图。

bgp as-number [ instance instance-name ]

(3)     进入BGP-VPN实例视图。

ip vpn-instance vpn-instance-name

(4)     进入BGP-VPN IPv4单播地址族视图或BGP-VPN IPv6单播地址族视图。

¡     进入BGP-VPN IPv4单播地址族视图。

address-family ipv4 [ unicast ]

¡     进入BGP-VPN IPv6单播地址族视图。

address-family ipv6 [ unicast ]

(5)     配置路由迭代方式

segment-routing ipv6 best-effort evpn

缺省情况下,根据路由的下一跳地址查找IPv6路由表进行转发。

1.12  配置EVPN L3VPN over SRv6封装的IPv6报文头的源地址

1. 配置限制和指导

在EVPN L3VPN over SRv6组网环境中,必须指定封装的IPv6报文头的源地址。否则,无法通过EVPN L3VPN over SRv6转发数据流量。

配置源地址时,不能为环回地址、链路本地地址、组播地址和未指定地址。指定的源地址必须为本机地址,且已经由路由协议发布,建议指定本设备的Loopback接口地址。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入SRv6视图。

segment-routing ipv6

(3)     配置EVPN L3VPN over SRv6封装的IPv6报文头的源地址。

encapsulation source-address ipv6-address [ ip-ttl ttl-value ]

缺省情况下,未指定EVPN L3VPN over SRv6封装的IPv6报文头的源地址。

当一个端口作为VXLAN或SRv6隧道的公网口,存在多种封装形式时,不支持配置ip-ttl ttl-value参数为1,否则会导致设备无法转发该SRv6报文。

1.13  EVPN L3VPN over SRv6显示和维护

1.13.1  复位BGP会话

当BGP配置变化后,可以通过软复位或复位BGP会话使新的配置生效。软复位BGP会话是指在不断开BGP邻居关系的情况下,更新BGP路由信息;复位BGP会话是指断开并重新建立BGP邻居关系的情况下,更新BGP路由信息。软复位需要BGP对等体具备路由刷新能力(支持ROUTE-REFRESH消息)。

请在用户视图下进行下列操作。下表中各命令的详细介绍,请参见“三层技术-IP路由命令参考”中的“BGP”。

表1-1 复位BGP会话

操作

命令

手工对VPNv4地址族下的BGP会话进行软复位

refresh bgp [ instance instance-name ] ipv6-address [ prefix-length ] { export | import } l2vpn evpn

复位VPNv4地址族下的BGP会话

reset bgp [ instance instance-name ] ipv6-address [ prefix-length ] l2vpn evpn

 

1.13.2  显示和维护EVPN L3VPN over SRv6的运行状态

在完成上述配置后,在任意视图下执行display命令可以显示配置后EVPN L3VPN over SRv6的运行情况,通过查看显示信息验证配置的效果。

表1-2 显示和维护EVPN L3VPN over SRv6的运行状态

操作

命令

显示BGP EVPN路由信息

display bgp [ instance instance-name ] l2vpn evpn [ peer ipv4-address { advertised-routes | received-routes } [ statistics ] | route-distinguisher route-distinguisher [ route-type ip-prefix ] [ evpn-route route-length [ advertise-info ] ] | route-type { auto-discovery | es | imet | ip-prefix | mac-ip } | statistics ]

1.14  EVPN L3VPN over SRv6配置举例‌

1.14.1  IPv4 EVPN L3VPN over SRv6 BE配置举例

1. 组网需求

图1-2所示,核心网为IPv6网络,私网为IPv4网络,在IPv6网络中PE设备之间部署EVPN L3VPN over SRv6 BE,通过SRv6隧道传递EVPN数据。

·     CE 1和CE 2均属于VPN 1。

·     CE与PE之间配置EBGP交换VPN路由信息。

·     同一自治系统内的PE设备之间运行IS-IS实现IPv6网络互通,配置MP-IBGP交换EVPN路由信息。

2. 组网图

图1-2 IPv4 EVPN L3VPN over SRv6配置组网图

 

设备

接口

IP地址

设备

接口

IP地址

CE 1

Vlan-int12

10.1.1.2/24

PE 2

Loop0

3::3/128

PE 1

Loop0

1::1/128

 

Vlan-int13

10.2.1.1/24

 

Vlan-int12

10.1.1.1/24

 

Vlan-int12

2002::1/96

 

Vlan-int13

2001::1/96

CE 2

Vlan-int13

10.2.1.2/24

P

Loop0

2::2/128

 

 

 

 

Vlan-int13

2001::2/96

 

 

 

 

Vlan-int12

2002::2/96

 

 

 

 

3. 配置步骤

(1)     在PE和P设备上配置IPv6 IS-IS,实现骨干网PE和P的互通

# 配置PE 1。

<PE1> system-view

[PE1] isis 1

[PE1-isis-1] is-level level-1

[PE1-isis-1] cost-style wide

[PE1-isis-1] network-entity 10.1111.1111.1111.00

[PE1-isis-1] address-family ipv6 unicast

[PE1-isis-1-ipv6] quit

[PE1-isis-1] quit

[PE1] interface loopback 0

[PE1-LoopBack0] ipv6 address 1::1 128

[PE1-LoopBack0] isis ipv6 enable 1

[PE1-LoopBack0] quit

[PE1] interface vlan-interface 13

[PE1-Vlan-interface13] ipv6 address 2001::1 96

[PE1-Vlan-interface13] isis ipv6 enable

[PE1-Vlan-interface13] quit

# 配置P。

<P> system-view

[P] isis

[P-isis-1] is-level level-1

[P-isis-1] cost-style wide

[P-isis-1] network-entity 10.2222.2222.2222.00

[P-isis-1] address-family ipv6 unicast

[P-isis-1-ipv6] quit

[P-isis-1] quit

[P] interface loopback 0

[P-LoopBack0] ipv6 address 2::2 128

[P-LoopBack0] isis ipv6 enable

[P-LoopBack0] quit

[P] interface vlan-interface 13

[P-Vlan-interface13] ipv6 address 2001::2 96

[P-Vlan-interface13] isis ipv6 enable

[P-Vlan-interface13] quit

[P] interface vlan-interface 12

[P-Vlan-interface12] ipv6 address 2002::2 96

[P-Vlan-interface12] isis ipv6 enable

[P-Vlan-interface12] quit

# 配置PE 2。

<PE2> system-view

[PE2] isis

[PE2-isis-1] is-level level-1

[PE2-isis-1] cost-style wide

[PE2-isis-1] network-entity 10.3333.3333.3333.00

[PE2-isis-1] address-family ipv6 unicast

[PE2-isis-1-ipv6] quit

[PE2-isis-1] quit

[PE2] interface loopback 0

[PE2-LoopBack0] ipv6 address 3::3 128

[PE2-LoopBack0] isis ipv6 enable

[PE2-LoopBack0] quit

[PE2] interface vlan-interface 12

[PE2-Vlan-interface12] ipv6 address 2002::1 96

[PE2-Vlan-interface12] isis ipv6 enable

[PE2-Vlan-interface12] quit

配置完成后,PE 1、P、PE 2之间应能建立IPv6 IS-IS邻居,执行display isis peer命令可以看到邻居达到Up状态。执行display isis route ipv6命令可以看到PE之间学习到对方的Loopback接口的路由。

(2)     在PE设备上配置VPN实例,将CE接入PE

# 配置PE 1。

[PE1] ip vpn-instance vpn1

[PE1-vpn-instance-vpn1] route-distinguisher 100:1

[PE1-vpn-instance-vpn1] vpn-target 111:1

[PE1-vpn-instance-vpn1] quit

[PE1] interface vlan-interface 12

[PE1-Vlan-interface12] ip binding vpn-instance vpn1

[PE1-Vlan-interface12] ip address 10.1.1.1 24

[PE1-Vlan-interface12] quit

# 配置PE 2。

[PE2] ip vpn-instance vpn1

[PE2-vpn-instance-vpn1] route-distinguisher 100:1

[PE2-vpn-instance-vpn1] vpn-target 111:1

[PE2-vpn-instance-vpn1] quit

[PE2] interface vlan-interface 13

[PE2-Vlan-interface13] ip binding vpn-instance vpn1

[PE2-Vlan-interface13] ip address 10.2.1.1 24

[PE2-Vlan-interface13] quit

# 按图1-2配置各CE的接口IP地址,配置过程略。

配置完成后,在PE设备上执行display ip vpn-instance命令可以看到VPN实例的配置情况。各PE能ping通自己接入的CE。

以PE 1和CE 1为例:

[PE1] display ip vpn-instance

  Total VPN-Instances configured : 1

  Total IPv4 VPN-Instances configured : 1

  Total IPv6 VPN-Instances configured : 1

  VPN-Instance Name     RD              Address family      Create time

  vpn1                  100:1           N/A                 2019/08/12 13:59:39

[PE1] ping -vpn-instance vpn1 10.1.1.2

Ping 10.1.1.2 (10.1.1.2): 56 data bytes, press CTRL+C to break

56 bytes from 10.1.1.2: icmp_seq=0 ttl=255 time=2.000 ms

56 bytes from 10.1.1.2: icmp_seq=1 ttl=255 time=0.000 ms

56 bytes from 10.1.1.2: icmp_seq=2 ttl=255 time=1.000 ms

56 bytes from 10.1.1.2: icmp_seq=3 ttl=255 time=0.000 ms

56 bytes from 10.1.1.2: icmp_seq=4 ttl=255 time=0.000 ms

 

--- Ping statistics for 10.1.1.2 in VPN instance vpn1 ---

5 packet(s) transmitted, 5 packet(s) received, 0.0% packet loss

round-trip min/avg/max/std-dev = 0.000/0.600/2.000/0.800 ms

(3)     在PE与CE之间建立EBGP对等体,引入VPN路由

# 配置CE 1。

<CE1> system-view

[CE1] bgp 65410

[CE1-bgp-default] peer 10.1.1.1 as-number 100

[CE1-bgp-default] address-family ipv4 unicast

[CE1-bgp-default-ipv4] peer 10.1.1.1 enable

[CE1-bgp-default-ipv4] import-route direct

[CE1-bgp-default-ipv4] quit

[CE1-bgp-default] quit

# CE 2配置与CE 1设备配置类似,配置过程省略。

# 配置PE 1。

[PE1] bgp 100

[PE1-bgp-default] router-id 1.1.1.1

[PE1-bgp-default] ip vpn-instance vpn1

[PE1-bgp-default-vpn1] peer 10.1.1.2 as-number 65410

[PE1-bgp-default-vpn1] address-family ipv4 unicast

[PE1-bgp-default-ipv4-vpn1] peer 10.1.1.2 enable

[PE1-bgp-default-ipv4-vpn1] quit

[PE1-bgp-default-vpn1] quit

# PE 2配置与PE 1设备配置类似,配置过程省略。

配置完成后,在PE设备上执行display bgp peer ipv4 vpn-instance命令,可以看到PE与CE之间的BGP对等体关系已建立,并达到Established状态。

(4)     在PE之间建立MP-IBGP对等体

# 配置PE 1。

[PE1] bgp 100

[PE1-bgp-default] peer 3::3 as-number 100

[PE1-bgp-default] peer 3::3 connect-interface loopback 0

[PE1-bgp-default] address-family l2vpn evpn

[PE1-bgp-default-evpn] peer 3::3 enable

[PE1-bgp-default-evpn] quit

[PE1-bgp-default] quit

# 配置PE 2。

[PE2] bgp 100

[PE2-bgp-default] peer 1::1 as-number 100

[PE2-bgp-default] peer 1::1 connect-interface loopback 0

[PE2-bgp-default] address-family l2vpn evpn

[PE2-bgp-default-evpn] peer 1::1 enable

[PE2-bgp-default-evpn] quit

[PE2-bgp-default] quit

配置完成后,在PE设备上执行display bgp peer l2vpn evpn命令,可以看到PE之间的BGP对等体关系已建立,并达到Established状态。

(5)     在PE设备上配置EVPN IPv4 L3VPN over SRv6封装的IPv6报文头的源地址

# 配置PE 1。

[PE1] segment-routing ipv6

[PE1-segment-routing-ipv6] encapsulation source-address 1::1

# 配置PE 2。

[PE2] segment-routing ipv6

[PE2-segment-routing-ipv6] encapsulation source-address 3::3

(6)     在PE设备上配置SRv6 Locator,由IGP通告该Locator

# 配置PE 1。

[PE1-segment-routing-ipv6] locator aaa ipv6-prefix 1:2::1:0 96 static 8

[PE1-segment-routing-ipv6-locator-aaa] quit

[PE1-segment-routing-ipv6] quit

[PE1] isis 1

[PE1-isis-1] address-family ipv6 unicast

[PE1-isis-1-ipv6] segment-routing ipv6 locator aaa

[PE1-isis-1-ipv6] quit

[PE1-isis-1] quit

# 配置PE 2。

[PE2-segment-routing-ipv6] locator bbb ipv6-prefix 6:5::1:0 96 static 8

[PE2-segment-routing-ipv6-locator-bbb] quit

[PE2-segment-routing-ipv6] quit

[PE2] isis 1

[PE2-isis-1] address-family ipv6 unicast

[PE2-isis-1-ipv6] segment-routing ipv6 locator bbb

[PE2-isis-1-ipv6] quit

[PE2-isis-1] quit

(7)     在PE设备上配置为私网路由添加End.DT4 SID

# 配置PE 1。

[PE1] bgp 100

[PE1-bgp-default] ip vpn-instance vpn1

[PE1-bgp-default-vpn1] address-family ipv4 unicast

[PE1-bgp-default-ipv4-vpn1] segment-routing ipv6 locator aaa evpn

[PE1-bgp-default-ipv4-vpn1] quit

[PE1-bgp-default-vpn1] quit

[PE1-bgp-default] quit

# 配置PE 2。

[PE2] bgp 100

[PE2-bgp-default] ip vpn-instance vpn1

[PE2-bgp-default-vpn1] address-family ipv4 unicast

[PE2-bgp-default-ipv4-vpn1] segment-routing ipv6 locator bbb evpn

[PE2-bgp-default-ipv4-vpn1] quit

[PE2-bgp-default-vpn1] quit

[PE2-bgp-default] quit

配置完成后,在PE设备上执行display ipv6 routing-table命令,可以看到已经将End.DT4 SID引入路由表中,并生成SRv6路由。

以PE 1为例:

[PE1] display ipv6 routing-table protocol srv6

 

Summary count : 1

 

SRv6 Routing table status : <Active>

Summary count : 1

 

Destination: 1:2::101/128                                Protocol  : SRv6

NextHop    : ::1                                         Preference: 4

Interface  : InLoop0                                     Cost      : 0

 

SRv6 Routing table status : <Inactive>

Summary count : 0

(8)     在PE设备上配置IPv6对等体之间交换End.DT4 SID,同时允许将私网路由迭代到End.DT4 SID的路由条目上

# 配置PE 1。

[PE1] bgp 100

[PE1-bgp-default] address-family l2vpn evpn

[PE1-bgp-default-evpn] peer 3::3 advertise encap-type srv6

[PE1-bgp-default-evpn] quit

[PE1-bgp-default] ip vpn-instance vpn1

[PE1-bgp-default-vpn1] address-family ipv4 unicast

[PE1-bgp-default-ipv4-vpn1] segment-routing ipv6 best-effort evpn

[PE1-bgp-default-ipv4-vpn1] quit

[PE1-bgp-default-vpn1] quit

[PE1-bgp-default] quit

# 配置PE 2。

[PE2] bgp 100

[PE2-bgp-default] address-family l2vpn evpn

[PE2-bgp-default-evpn] peer 1::1 advertise encap-type srv6

[PE2-bgp-default-evpn] quit

[PE2-bgp-default] ip vpn-instance vpn1

[PE2-bgp-default-vpn1] address-family ipv4 unicast

[PE2-bgp-default-ipv4-vpn1] segment-routing ipv6 best-effort evpn

[PE2-bgp-default-ipv4-vpn1] quit

[PE2-bgp-default-vpn1] quit

[PE2-bgp-default] quit

配置完成后,在PE设备上执行display bgp l2vpn evpn命令查看对端PE发送的路由详细信息,可以看到对端PE发送的路由携带SID属性数据。

以PE 1为例:

[PE1] display bgp l2vpn evpn [5][0][24][10.2.1.0]/80

 

 BGP local router ID: 1.1.1.1

 Local AS number: 100

 

 

 Route distinguisher: 100:1(vpn1)

 Total number of routes: 1

 Paths:   1 available, 1 best

 

 BGP routing table information of [5][0][24][10.2.1.0]/80:

 From            : 3::3 (3.3.3.3)

 Rely nexthop    : FE80::2A96:34FF:FE9D:216

 Original nexthop: 3::3

 Out interface   : Vlan-interface13

 Route age       : 00h14m23s

 OutLabel        : NULL

 Ext-Community   : <RT: 111:1>

 RxPathID        : 0x0

 TxPathID        : 0x0

 PrefixSID       : End.DT4 SID <6:5::101>

4. 验证配置

# 在PE设备上执行display ip routing-table vpn-instance命令,可以看到去往对端CE的路由,并且路由下一跳值为End.DT4 SID的Locator。

以PE 1为例:

[PE1] display ip routing-table vpn-instance vpn1

 

Destinations : 11       Routes : 11

 

Destination/Mask   Proto   Pre Cost        NextHop         Interface

0.0.0.0/32         Direct  0   0           127.0.0.1       InLoop0

10.1.1.0/24        Direct  0   0           10.1.1.1        Vlan12

10.1.1.0/32        Direct  0   0           10.1.1.1        Vlan12

10.1.1.1/32        Direct  0   0           127.0.0.1       InLoop0

10.1.1.255/32      Direct  0   0           10.1.1.1        Vlan12

10.2.1.0/24        BGP     255 0           6:5::           Vlan13

127.0.0.0/8        Direct  0   0           127.0.0.1       InLoop0

127.0.0.0/32       Direct  0   0           127.0.0.1       InLoop0

127.0.0.1/32       Direct  0   0           127.0.0.1       InLoop0

127.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

255.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

CE 1和CE 2之间能够ping通。

 

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!

新华三官网
联系我们