SRv6 BE
IPv4 VPN over SRv6 BE简介
IPv4 VPN over SRv6 BE实现过程
IPv4 VPN over SRv6 BE的关键实现步骤包括SRv6 BE路径建立,VPN路由互通,数据转发等。
- PE配置SRv6和SRv6 VPN,中间节点设备需要支持IPv6。
- PE2发布SRv6 Locator路由给PE1。
CE到PE的路由信息交换
CE2把本站点的IPv4路由发布给PE2。CE与PE之间可以使用静态路由、RIP、OSPF、IS-IS或BGP。
- PE2从CE2学习到VPN路由信息后,存放到VPN实例路由表中。同时,转换成VPNv4路由。
PE之间路由发布
PE2通过MP-BGP把VPNv4路由发布给出口PE1。Update报文中还携带RT属性及SRv6 VPN SID属性。
PE1接收VPNv4路由
PE1收到VPNv4路由后,在下一跳可达并且通过BGP的入口策略的情况下,进行私网路由交叉、路由迭代SRv6 BE路径、路由优选等动作,决定是否将该路由加入到VPN实例路由表。VPN路由下发同时关联SRv6 VPN SID。
PE到CE的路由信息交换
CE1有多种方式可以从PE1学习VPN路由,包括静态路由、RIP、OSPF、IS-IS和BGP,与CE2到PE2的路由信息交换相同。
- PE2上配置END SID,然后通过IGP协议发布给PE1。
- PE1通过IGP协议学习到SRv6 SID对应的网段路由A2:1::/64。
- PE2在Locator范围内自动生成VPN实例的END.DT4 SID A2:1::B100,生成Local SID表。
- PE2收到CE2发布的私网IPv4路由后,PE2将私网IPv4路由转换成BGP VPNv4路由,通过BGP邻居关系发布给PE1。此路由携带SRv6 VPN SID属性,也就是VPN实例的END.DT4 SID A2:1::B100。
- PE1接收到VPNv4路由后,将其交叉到对应的VPN实例路由表,然后转换成普通IPv4路由,对CE1发布。
CE1向PE1发送一个普通IPv4报文。
PE1从绑定了VPN实例的接口上收到私网报文以后,查找对应VPN实例的路由转发表,匹配目的IPv4前缀,查找到关联的SRv6 VPN SID以及下一跳信息。然后直接使用SRv6 VPN SID A2:1::B100作为目的地址封装成IPv6报文。
PE1然后按照最长匹配原则,匹配到路由A2:1::/64,按最短路径转发到P设备。
P设备按照最长匹配原则,匹配到路由A2:1::/64,按最短路径转发到PE2。
PE2使用A2:1::B100查找Local SID表,匹配到END.DT4 SID对应的转发动作,将IPv6报文头去除,然后根据END.DT4 SID匹配VPN实例,查找VPN实例路由表进行转发。此时报文恢复成普通IPv4报文。