我们尝试实现一个场景,提供从 POP A 到 POP B 的 L2 传输服务,连接三个不同的运营商传输链路。将来,我们可能希望实施 POP C 并有能力在任何 POP 之间提供 L2 服务。
我们努力实现的目标是:
- 可扩展性。将添加更多 POP
- 亚秒收敛
- 流量工程能力,以便根据传输链路的状态建立有条件的业务逻辑。
我们尝试了一种基于 BGP 底层的 VXLAN 方法,使用路由映射来建立本地首选项并通过操纵对等 VTEPS 的可达性来控制传输每个 VNI 的运营商链路,为每个 VLAN/VNI 使用一个环回接口
在为 nve 接口定义源接口时会出现以下配置的问题,因为它必须只有一个。如果定义loopback1为source,则只携带vlan 101。如果定义loopback 2为source,则只携带vlan 102,以此类推。忽略从任何环回(1 到 3)获取流量时每个对等 VTEP 均可访问的事实。
下面的配置是针对 POP A red siwtch,但您可以计算其他 3 个。Eht1/6 和 Eth1/7 是传输链路中的 2 个。蓝色交换机的第三个链接是 Eth1/5。Eth1/53 用于 POP 交换机互连。
这种配置有没有可能起作用?有谁知道实现上述目标的另一种方法?
我也尝试过底层 OSPF + BGP EVP 方法。收敛很棒(低于200ms)并且所有的vlan都被承载了。问题是我们无法找到一种方法来通过不同的传输链接有选择地路由 vlan/vnis。是否可以?有什么线索吗?
提前致谢,
米格尔
nv overlay evpn
feature ospf
feature bgp
feature interface-vlan
feature vn-segment-vlan-based
feature lacp
feature bfd
feature nv overlay
!
vlan 1,101-103
vlan 101
vn-segment 10101
vlan 102
vn-segment 10102
vlan 103
vn-segment 10103
!
spanning-tree port type edge bpduguard default
spanning-tree vlan 101-103 priority 0
!
ip prefix-list REMOTE_TEP_101 seq 5 permit 31.31.31.31/32
ip prefix-list REMOTE_TEP_101 seq 10 permit 41.41.41.31/32
ip prefix-list REMOTE_TEP_102 seq 5 permit 32.32.32.32/32
ip prefix-list REMOTE_TEP_102 seq 10 permit 42.42.42.42/32
ip prefix-list REMOTE_TEP_103 seq 5 permit 33.33.33.33/32
ip prefix-list REMOTE_TEP_103 seq 10 permit 43.43.43.43/32
route-map FROM_LINK1 permit 10
match ip address prefix-list REMOTE_TEP_101
set local-preference 300
route-map FROM_LINK1 permit 20
match ip address prefix-list REMOTE_TEP_102
set local-preference 200
route-map FROM_LINK1 permit 30
match ip address prefix-list REMOTE_TEP_103
set local-preference 100
route-map FROM_LINK1 permit 100
route-map FROM_LINK2 permit 10
match ip address prefix-list REMOTE_TEP_101
set local-preference 100
route-map FROM_LINK2 permit 20
match ip address prefix-list REMOTE_TEP_102
set local-preference 300
route-map FROM_LINK2 permit 30
match ip address prefix-list REMOTE_TEP_103
set local-preference 200
route-map FROM_LINK2 permit 100
route-map FROM_LINK3 permit 10
match ip address prefix-list REMOTE_TEP_101
set local-preference 200
route-map FROM_LINK3 permit 30
match ip address prefix-list REMOTE_TEP_102 REMOTE_TEP_103
set local-preference 300
route-map FROM_LINK3 permit 100
!
vrf context management
!
interface Vlan1
no shutdown
!
interface Vlan101
no shutdown
ip address 91.91.91.1/24
mtu 9216
!
interface Vlan102
no shutdown
ip address 92.92.92.1/24
mtu 9216
!
interface Vlan103
no shutdown
ip address 93.93.93.1/24
mtu 9216
!
interface nve1
no shutdown
source-interface loopback1
member vni 10101
ingress-replication protocol static
peer-ip 31.31.31.31
member vni 10102
ingress-replication protocol static
peer-ip 32.32.32.32
member vni 10103
ingress-replication protocol static
peer-ip 33.33.33.33
!
interface Ethernet1/53
no switchport
mtu 9216
bfd interval 50 min_rx 50 multiplier 3
bfd ipv4 interval 50 min_rx 50 multiplier 3
no ip redirects
ip address 201.201.201.1/24
no ipv6 redirects
no shutdown
!
interface Ethernet1/6
no switchport
mtu 9216
bfd interval 50 min_rx 50 multiplier 3
bfd ipv4 interval 50 min_rx 50 multiplier 3
no ip redirects
ip address 102.102.102.1/24
no ipv6 redirects
no shutdown
!
interface Ethernet1/7
no switchport
mtu 9216
bfd interval 50 min_rx 50 multiplier 3
bfd ipv4 interval 50 min_rx 50 multiplier 3
no ip redirects
ip address 101.101.101.1/24
no ipv6 redirects
no shutdown
!
interface Ethernet1/48
switchport
switchport access vlan 101
spanning-tree port type edge
mtu 9216
no shutdown
!
interface loopback0
description ### VXLAN - ROUTING PURPOSES ###
ip address 1.1.1.1/32
!
interface loopback1
description ### VXLAN - TEP-NVE - VLAN 101 ###
ip address 11.11.11.11/32
ip address 10.101.0.1/32 secondary
!
interface loopback2
description ### VXLAN - TEP-NVE - VLAN 102 ###
ip address 12.12.12.12/32
ip address 10.102.0.1/32 secondary
!
interface loopback3
description ### VXLAN - TEP-NVE - VLAN 103 ###
ip address 13.13.13.13/32
ip address 10.103.0.1/32 secondary
!
router bgp 100
router-id 1.1.1.1
timers bgp 5 15
address-family ipv4 unicast
network 11.11.11.11/32
network 12.12.12.12/32
network 13.13.13.13/32
network 10.101.0.1/32
network 10.102.0.1/32
network 10.103.0.1/32
neighbor 101.101.101.2
remote-as 200
bfd
address-family ipv4 unicast
send-community
send-community extended
route-map FROM_LINK1 in
neighbor 102.102.102.2
remote-as 200
bfd
address-family ipv4 unicast
send-community
send-community extended
route-map FROM_LINK2 in
neighbor 201.201.201.2
remote-as 100
bfd
address-family ipv4 unicast
send-community
send-community extended
next-hop-self
!
end
!