REF
http://jncie.tech/2017/08/07/evpn-lab-evpn-vxlan-to-evpn-mpls-stitching/
https://www.linkedin.com/pulse/evpn-stitching-graziano-g-rodegari-1/
https://www.wxzhi.com/archives/100/q4xp1u8rcva674sl/
我的例子里,左侧采用的是vxlan VNI100,右侧采用的是VNI1000
vqfx1-vmx1使用uderlay ebgp+policy export为lo0.0-lo0.0提供ip可达性,在lo0.0-lo0.0可达的基础上,vqfx1-vmx1建立overlay mp-ibgp evpn邻居
vmx1或vmx2内部有两个routing-instace,mpls-evpn和vxlan-evpn,使用隧道lt-0/0/10互联
vqfx2-vmx2的情况与vqfx1-vmx1的情况类似,略去
MGMT为管理ubuntu,vqfx,vmx用(ssh)
两台测试机host-1(ubuntu17.04-1)和host-2(ubuntu17.04-2)的ip及mac为
vqfx1的配置如下
root@vqfx1> show configuration | display set | except dhcp
set version 15.1X53-D63.9
set system host-name vqfx1
set interfaces xe-0/0/3 description "DEV=TOR-SW1 IF=3"
set interfaces xe-0/0/3 unit 0 family ethernet-switching interface-mode trunk
set interfaces xe-0/0/3 unit 0 family ethernet-switching vlan members v100
set interfaces et-0/0/4 unit 0 family inet
set interfaces xe-0/0/4 unit 0 family inet address 192.168.13.1/24
set interfaces em0 unit 0 family inet address 10.5.39.241/24
set interfaces em1 unit 0 family inet address 169.254.0.2/24
set interfaces lo0 unit 0 family inet address 1.1.1.1/32
set forwarding-options storm-control-profiles default all
set routing-options static route 10.5.0.0/16 next-hop 10.5.39.254
set routing-options router-id 1.1.1.1
set routing-options autonomous-system 64512
set protocols bgp group underlay type external
set protocols bgp group underlay advertise-peer-as
set protocols bgp group underlay export POLICY_EXPORT_LO0
set protocols bgp group underlay local-as 65001
set protocols bgp group underlay neighbor 192.168.13.3 peer-as 65003
set protocols bgp group overlay type internal
set protocols bgp group overlay local-address 1.1.1.1
set protocols bgp group overlay family evpn signaling
set protocols bgp group overlay neighbor 3.3.3.3
set protocols evpn encapsulation vxlan
set protocols evpn extended-vni-list 100
set protocols evpn multicast-mode ingress-replication
set protocols evpn vni-options vni 100 vrf-target export target:64512:100
set protocols igmp-snooping vlan default
set policy-options policy-statement POLICY_EXPORT_LO0 from family inet
set policy-options policy-statement POLICY_EXPORT_LO0 from protocol direct
set policy-options policy-statement POLICY_EXPORT_LO0 from route-filter 0.0.0.0/0 prefix-length-range /32-/32
set policy-options policy-statement POLICY_EXPORT_LO0 then accept
set policy-options policy-statement POLICY_VRF_IMPORT term T_100 from community COM_100
set policy-options policy-statement POLICY_VRF_IMPORT term T_100 then accept
set policy-options policy-statement POLICY_VRF_IMPORT term T_999 then reject
set policy-options community COM_100 members target:64512:100
set switch-options service-id 1
set switch-options vtep-source-interface lo0.0
set switch-options route-distinguisher 1.1.1.1:1
set switch-options vrf-import POLICY_VRF_IMPORT
set switch-options vrf-target target:64512:1002
set switch-options vrf-target auto
set vlans default vlan-id 1
set vlans v100 vlan-id 100
set vlans v100 vxlan vni 100
set vlans v100 vxlan ingress-node-replication
vqfx2的配置如下
root@vqfx2> show configuration | display set | except dhcp
set version 15.1X53-D63.9
set system host-name vqfx2
set interfaces xe-0/0/3 description "DEV=TOR-SW2 IF=3"
set interfaces xe-0/0/3 unit 0 family ethernet-switching interface-mode trunk
set interfaces xe-0/0/3 unit 0 family ethernet-switching vlan members v100
set interfaces xe-0/0/4 unit 0 family inet address 192.168.24.2/24
set interfaces em0 unit 0 family inet address 10.5.39.242/24
set interfaces em1 unit 0 family inet address 169.254.0.2/24
set interfaces lo0 unit 0 family inet address 2.2.2.2/32
set forwarding-options storm-control-profiles default all
set routing-options static route 10.5.0.0/16 next-hop 10.5.39.254
set routing-options router-id 2.2.2.2
set routing-options autonomous-system 64512
set protocols bgp group underlay type external
set protocols bgp group underlay advertise-peer-as
set protocols bgp group underlay export POLICY_EXPORT_LO0
set protocols bgp group underlay local-as 65002
set protocols bgp group underlay neighbor 192.168.24.4 peer-as 65004
set protocols bgp group overlay type internal
set protocols bgp group overlay local-address 2.2.2.2
set protocols bgp group overlay family evpn signaling
set protocols bgp group overlay neighbor 4.4.4.4
set protocols evpn encapsulation vxlan
set protocols evpn extended-vni-list 1000
set protocols evpn multicast-mode ingress-replication
set protocols evpn vni-options vni 1000 vrf-target export target:64512:1000
set protocols igmp-snooping vlan default
set policy-options policy-statement POLICY_EXPORT_LO0 from family inet
set policy-options policy-statement POLICY_EXPORT_LO0 from protocol direct
set policy-options policy-statement POLICY_EXPORT_LO0 from route-filter 0.0.0.0/0 prefix-length-range /32-/32
set policy-options policy-statement POLICY_EXPORT_LO0 then accept
set policy-options policy-statement POLICY_VRF_IMPORT term T_100 from community COM_100
set policy-options policy-statement POLICY_VRF_IMPORT term T_100 then accept
set policy-options policy-statement POLICY_VRF_IMPORT term T_999 then reject
set policy-options community COM_100 members target:64512:1000
set switch-options service-id 2
set switch-options vtep-source-interface lo0.0
set switch-options route-distinguisher 2.2.2.2:1
set switch-options vrf-import POLICY_VRF_IMPORT
set switch-options vrf-target target:64512:1001
set switch-options vrf-target auto
set vlans default vlan-id 1
set vlans v100 vlan-id 100
set vlans v100 vxlan vni 1000
set vlans v100 vxlan ingress-node-replication
vmx1的配置(注意斜体2行)
root@vmx1> show configuration | display set
set version 17.2R1.13
set system host-name vmx1
set chassis fpc 0 pic 0 tunnel-services bandwidth 1g
set chassis network-services enhanced-ip
set interfaces ge-0/0/8 unit 0 family inet address 192.168.13.3/24
set interfaces ge-0/0/9 unit 0 family inet address 192.168.34.3/24
set interfaces ge-0/0/9 unit 0 family mpls
set interfaces lt-0/0/10 unit 1 encapsulation ethernet-bridge
set interfaces lt-0/0/10 unit 1 peer-unit 2
set interfaces lt-0/0/10 unit 1 family bridge interface-mode trunk
set interfaces lt-0/0/10 unit 1 family bridge vlan-id-list 100
set interfaces lt-0/0/10 unit 2 encapsulation ethernet-bridge
set interfaces lt-0/0/10 unit 2 peer-unit 1
set interfaces lt-0/0/10 unit 2 family bridge interface-mode trunk
set interfaces lt-0/0/10 unit 2 family bridge vlan-id-list 100
set interfaces fxp0 unit 0 family inet address 10.5.39.243/24
set interfaces lo0 unit 0 family inet address 3.3.3.3/32
set routing-options static route 10.5.0.0/16 next-hop 10.5.39.254
set routing-options router-id 3.3.3.3
set routing-options autonomous-system 64512
set protocols mpls interface ge-0/0/9.0
set protocols bgp group overlay type internal
set protocols bgp group overlay local-address 3.3.3.3
set protocols bgp group overlay family evpn signaling
set protocols bgp group overlay neighbor 1.1.1.1
set protocols bgp group core type internal
set protocols bgp group core local-address 3.3.3.3
set protocols bgp group core family evpn signaling
set protocols bgp group core local-as 64512
set protocols bgp group core neighbor 4.4.4.4
set protocols bgp group underlay type external
set protocols bgp group underlay advertise-peer-as
set protocols bgp group underlay export POLICY_EXPORT_LO0
set protocols bgp group underlay local-as 65003
set protocols bgp group underlay neighbor 192.168.13.1 peer-as 65001
set protocols ospf area 0.0.0.0 interface lo0.0 passive
set protocols ospf area 0.0.0.0 interface ge-0/0/9.0
set protocols ldp interface ge-0/0/9.0
set policy-options policy-statement POLICY_EXPORT_LO0 from family inet
set policy-options policy-statement POLICY_EXPORT_LO0 from protocol direct
set policy-options policy-statement POLICY_EXPORT_LO0 from route-filter 0.0.0.0/0 prefix-length-range /32-/32
set policy-options policy-statement POLICY_EXPORT_LO0 then accept
set policy-options policy-statement POLICY_VRF_IMPORT term T_100 from community COM_100
set policy-options policy-statement POLICY_VRF_IMPORT term T_100 then accept
set policy-options policy-statement POLICY_VRF_IMPORT term T_999 then reject
set policy-options community COM_100 members target:64512:100
set routing-instances mpls-evpn instance-type virtual-switch
set routing-instances mpls-evpn interface lt-0/0/10.2
set routing-instances mpls-evpn route-distinguisher 3.3.3.3:11
set routing-instances mpls-evpn vrf-target target:64512:666
set routing-instances mpls-evpn protocols evpn extended-vlan-list 100
set routing-instances mpls-evpn bridge-domains bd100 vlan-id 100
set routing-instances vxlan-evpn vtep-source-interface lo0.0
set routing-instances vxlan-evpn instance-type virtual-switch
set routing-instances vxlan-evpn interface lt-0/0/10.1
set routing-instances vxlan-evpn route-distinguisher 3.3.3.3:1
set routing-instances vxlan-evpn vrf-import POLICY_VRF_IMPORT
set routing-instances vxlan-evpn vrf-target target:64512:1002
set routing-instances vxlan-evpn vrf-target auto
set routing-instances vxlan-evpn protocols evpn encapsulation vxlan
set routing-instances vxlan-evpn protocols evpn extended-vni-list 100
set routing-instances vxlan-evpn protocols evpn vni-options vni 100 vrf-target target:64512:100
set routing-instances vxlan-evpn bridge-domains v100 vlan-id 100
set routing-instances vxlan-evpn bridge-domains v100 vxlan vni 100
set routing-instances vxlan-evpn bridge-domains v100 vxlan ingress-node-replication
set routing-instances vxlan-evpn switch-options mac-table-aging-time 30
vmx2的配置
root@vmx2> show configuration | display set
set version 17.2R1.13
set system host-name vmx2
set chassis fpc 0 pic 0 tunnel-services bandwidth 1g
set chassis network-services enhanced-ip
set interfaces ge-0/0/8 unit 0 family inet address 192.168.24.4/24
set interfaces ge-0/0/9 unit 0 family inet address 192.168.34.4/24
set interfaces ge-0/0/9 unit 0 family mpls
set interfaces lt-0/0/10 unit 1 encapsulation ethernet-bridge
set interfaces lt-0/0/10 unit 1 peer-unit 2
set interfaces lt-0/0/10 unit 1 family bridge interface-mode trunk
set interfaces lt-0/0/10 unit 1 family bridge vlan-id-list 100
set interfaces lt-0/0/10 unit 2 encapsulation ethernet-bridge
set interfaces lt-0/0/10 unit 2 peer-unit 1
set interfaces lt-0/0/10 unit 2 family bridge interface-mode trunk
set interfaces lt-0/0/10 unit 2 family bridge vlan-id-list 100
set interfaces fxp0 unit 0 family inet address 10.5.39.244/24
set interfaces lo0 unit 0 family inet address 4.4.4.4/32
set routing-options static route 10.5.0.0/16 next-hop 10.5.39.254
set routing-options router-id 4.4.4.4
set routing-options autonomous-system 64512
set protocols mpls interface ge-0/0/9.0
set protocols bgp group overlay type internal
set protocols bgp group overlay local-address 4.4.4.4
set protocols bgp group overlay family evpn signaling
set protocols bgp group overlay neighbor 2.2.2.2
set protocols bgp group core type internal
set protocols bgp group core local-address 4.4.4.4
set protocols bgp group core family evpn signaling
set protocols bgp group core local-as 64512
set protocols bgp group core neighbor 3.3.3.3
set protocols bgp group underlay type external
set protocols bgp group underlay export POLICY_EXPORT_LO0
set protocols bgp group underlay local-as 65004
set protocols bgp group underlay neighbor 192.168.24.2 peer-as 65002
set protocols ospf area 0.0.0.0 interface lo0.0 passive
set protocols ospf area 0.0.0.0 interface ge-0/0/9.0
set protocols ldp interface ge-0/0/9.0
set policy-options policy-statement POLICY_EXPORT_LO0 from family inet
set policy-options policy-statement POLICY_EXPORT_LO0 from protocol direct
set policy-options policy-statement POLICY_EXPORT_LO0 from route-filter 0.0.0.0/0 prefix-length-range /32-/32
set policy-options policy-statement POLICY_EXPORT_LO0 then accept
set policy-options policy-statement POLICY_VRF_IMPORT term T_100 from community COM_100
set policy-options policy-statement POLICY_VRF_IMPORT term T_100 then accept
set policy-options policy-statement POLICY_VRF_IMPORT term T_999 then reject
set policy-options community COM_100 members target:64512:1000
set routing-instances mpls-evpn instance-type virtual-switch
set routing-instances mpls-evpn interface lt-0/0/10.2
set routing-instances mpls-evpn route-distinguisher 4.4.4.4:11
set routing-instances mpls-evpn vrf-target target:64512:666
set routing-instances mpls-evpn protocols evpn extended-vlan-list 100
set routing-instances mpls-evpn bridge-domains bd100 vlan-id 100
set routing-instances vxlan-evpn vtep-source-interface lo0.0
set routing-instances vxlan-evpn instance-type virtual-switch
set routing-instances vxlan-evpn interface lt-0/0/10.1
set routing-instances vxlan-evpn route-distinguisher 4.4.4.4:1
set routing-instances vxlan-evpn vrf-import POLICY_VRF_IMPORT
set routing-instances vxlan-evpn vrf-target target:64512:1001
set routing-instances vxlan-evpn vrf-target auto
set routing-instances vxlan-evpn protocols evpn encapsulation vxlan
set routing-instances vxlan-evpn protocols evpn extended-vni-list 1000
set routing-instances vxlan-evpn protocols evpn vni-options vni 1000 vrf-target target:64512:1000
set routing-instances vxlan-evpn bridge-domains v100 vlan-id 100
set routing-instances vxlan-evpn bridge-domains v100 vxlan vni 1000
set routing-instances vxlan-evpn bridge-domains v100 vxlan ingress-node-replication
set routing-instances vxlan-evpn switch-options mac-table-aging-time 30
验证
查看evpn的type 2和type 3路由
mpls label截图
在capture-sw2上的截图(这里采用的是VNI 1000不是VNI100了)