动态 VxLAN 浅析及配置示例

前言:  

        为了解决静态 VxLAN的配置量大、mac表项学习仅能通过泛洪学习的这种低端方式的缺点,我们引入了控制层面,通过bgp evpn来构建VxLAN,起到自动建立隧道 (type 3) 、自动构建BUM转发层面 (type 3) 、自动学习mac路由(type2)的效果

一、拓朴图如下:

        要求:AR1 能通过 ISP 对 AR2 进行动态方式的大二层互访;AR3 和 AR4 同样

二、配置过程:
运营商内部侧:
1、配网络侧底层互通(underlayer)

leaf之间loopback接口互访(以后的VTEP地址:VxLAN隧道IP地址)

2、配置运营商网络侧 overlayer:

  a、在PE之间建立mp-bgp evpn peer邻居关系,并全局下使能 evpn
   evpn-overlay enable
   bgp 234
     undo default ipv4-unicast
     peer x.x.x.x as-number 123
     peer x.x.x.x connect loopback 0
     l2vpn-family evpn
       peer x.x.x.x enable
  b、创建nve接口,绑定二层vni,配置控制层面使用evpn bgp协议、学习方式
    int nve1
      source 10.1.2.2
      vni 5010 head-end peer-list protocol bgp
        这一步,将产生3类bgp evpn路由,自动产生vxlan tunnel,自动产生bum头端复制的转发表项,2类路由模拟器里看不到表项

3、配置运营商用户侧 overlayer

  a、创建BD,关联 vni,将 BD 引入到 evpn,配置RD、RT,用于evpn的区分:
    bridge-domain 10
      vxlan vni 5010    #针对 vlan10关联二层vni(1:1绑定,只能关联一个VNI)
      evpn
        route-distinguisher 5010:1
        vpn-target 5010:1
  b、配置VAP,关联BD
    int G1/0/0.10 mode l2    #只有CE系列有此命令,S系列没有此条命令
      encapsulation dot1q vid 10    #
      bridge-doain 10

4、真正用户侧:

  a、AR1和AR2向交换机接口侧配置IP
  b、S1和S2交换机起vlan10,向运营商侧配置trunk,允许vlan10通过

三、名词解释:

PMSI:Provider Multicast Service ID 运营商组播服务ID,包括二层vni(wireshark显示为MPLS Label,实则为 vni 值)、tunnel-id end point(出口)
NVE:Network Virtualization Edge(接口,用于连接网络侧,转发VxLAN的封装)
VTEP:Virtual Tunnel EndPoint    #虚拟隧道终节点Leap loopback地址

四、常用命令:

dis port vlan 10 G1/0/1 active    #展示完整的该端口的vlan 列表
dis bridge-domain 10 verbose     #查看BD10的详细信息
dis bgp evpn all routing-table mac-route | inclusive-route 0:32:10.1.3.3     #显示bgp evpn 的mac、arp路由
evpn-overlayer enable    #全局使能evpn
l2vpn-family evpn    #bgp下,起二层vpn地址簇
dis bgp evpn peer    #查看bgp evpn 邻居是否建立 
dis bgp evpn all routing-table peer 10.1.1.1 advertised #查看向peer发送的路由列表
dis bgp evpn all routing-table inclusive-route 0:32:10.1.3.3    #查看bgp evpn的inclusive-multist-route,用于构建
refresh bgp evpn all export | import    #软清一下bgp evpn发送|收取的路由
reset bgp all    #重置一下bgp进程
dis vxlan peer    #查看VxLAN对端列表
dis vxlan tunnel | verbose   #查看VxLAN隧道
dis vxlan vni    #查看 VxLAN 的vni列表
dis bridge-domain  x |verbose  #查看BD
dis mac-address bridge-domain 10 | verbose    #查看BD10的MAC表
dis port vlan 10 G0/0/1    #查看某个端口属于哪个vlan
dis interface nve | main | 1-2    #查看nve接口信息

[leaf1]:
evpn-overlay enable
#
bridge-domain 10
 vxlan vni 5010
 evpn
  route-distinguisher 5010:1
  vpn-target 5010:1 export-extcommunity
  vpn-target 5010:1 import-extcommunity
#
bridge-domain 20
 vxlan vni 5020
 evpn
  route-distinguisher 5020:1
  vpn-target 5020:1 export-extcommunity
  vpn-target 5020:1 import-extcommunity
#
interface GE1/0/0.10 mode l2
 encapsulation dot1q vid 10
 bridge-domain 10
#
interface GE1/0/0.20 mode l2
 encapsulation dot1q vid 20
 bridge-domain 20
#
interface GE1/0/1
 undo portswitch
 undo shutdown
 ip address 10.1.12.1 255.255.255.0
#
interface LoopBack0
 ip address 10.1.1.1 255.255.255.255
#
interface Nve1
 source 10.1.1.1
 vni 5010 head-end peer-list protocol bgp
 vni 5020 head-end peer-list protocol bgp
#
bgp 123
 router-id 1.1.1.1
 undo default ipv4-unicast
 peer 10.1.3.3 as-number 123
 peer 10.1.3.3 connect-interface LoopBack0
 #
 ipv4-family unicast
  undo peer 10.1.3.3 enable
 #
 l2vpn-family evpn
  policy vpn-target
  peer 10.1.3.3 enable
五、验证:
        ping包过去,有回应:

        抓包看包结构:

        看一下  bgp evpn 的包结构:
        看动态学习到的 BD 10 mac表:

        看下evpn路由表:

相关推荐

  1. VLAN配置原理

    2024-06-10 06:02:02       14 阅读
  2. VLAN配置

    2024-06-10 06:02:02       31 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-10 06:02:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-10 06:02:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-10 06:02:02       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-10 06:02:02       20 阅读

热门阅读

  1. spdlog源码解析

    2024-06-10 06:02:02       9 阅读
  2. Spring Boot集成thymeleaf快速入门demo

    2024-06-10 06:02:02       9 阅读
  3. 排查服务器cpu运行过高

    2024-06-10 06:02:02       7 阅读
  4. go语言切片去重的3种方式总结

    2024-06-10 06:02:02       9 阅读
  5. SpringMVC的执行流程

    2024-06-10 06:02:02       9 阅读
  6. mysql数据库安装_修改密码_忘记密码(修改)

    2024-06-10 06:02:02       10 阅读
  7. Android基础-binder机制

    2024-06-10 06:02:02       8 阅读
  8. Python中的上下文管理器(contextlib)模块

    2024-06-10 06:02:02       12 阅读
  9. ipc-test.bk and mmap is also similar.

    2024-06-10 06:02:02       10 阅读
  10. 补篇协程:susend 挂起函数的深入理解

    2024-06-10 06:02:02       13 阅读