首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用ECMP在两个路径之间分配通信量,一个路径由eBGP学习,另一个路径由iBGP在Cisco OS交换机上学习。

使用ECMP在两个路径之间分配通信量,一个路径由eBGP学习,另一个路径由iBGP在Cisco OS交换机上学习。
EN

Network Engineering用户
提问于 2020-07-10 17:57:22
回答 1查看 591关注 0票数 0

我维护两个交叉连接的交换机,R1和R2,它们都有到外部交换机R3的链接。R1和R2都使用eBGP接收到R3后面各种子网的路由。此外,R1和R2使用iBGP在彼此之间交换路由。R1和R2之间的交叉连接比到R3的链接要大得多,如果流量被适当地路由,就有足够的流量来完全利用到R3的两个链接。

我想使用ECMP来划分R1->R3通信量,这样它的一部分直接跟随R1->R3,一部分遵循R1->R2->R3。我希望R2->R3交通同样被分割。

R1和R2是思科NX交换机.R1看到了通向192.168.240.0/24 (在R3后面)的两条潜在路径,并正确地确定了一条是eBGP接收的,另一条是iBGP接收的。

代码语言:javascript
复制
R1# show ip bgp vrf vrf-100
BGP routing table information for VRF vrf-100, address family IPv4 Unicast
BGP table version is 49, Local Router ID is 10.10.100.2
Status: s-suppressed, x-deleted, S-stale, d-dampened, h-history, *-valid, >-best
Path type: i-internal, e-external, c-confed, l-local, a-aggregate, r-redist, I-injected
Origin codes: i - IGP, e - EGP, ? - incomplete, | - multipath, & - backup, 2 - best2

   Network            Next Hop            Metric     LocPrf     Weight Path
* i10.10.100.0/24     10.10.100.3                       100          0 i
*>l                   0.0.0.0                           100      32768 i
* i192.168.240.0/24   10.10.100.3                       100          0 YYYYY i
*>e                   169.254.159.2                                  0 YYYYY i

我试着将最大路径设置为2,但Cisco NX交换机(据我理解,大多数/所有交换机)并不认为路径是这样的。eBGP路径总是优先于iBGP路径,并且ECMP不会在路由表中同时安装这两个路径。

代码语言:javascript
复制
R1# show run bgp
router bgp XXXXX
  vrf vrf-100
    address-family ipv4 unicast
      network 10.10.100.0/24
      maximum-paths 2
    neighbor 10.10.100.3
      remote-as XXXXX
      password 3 b6d56a77617af8e3
      address-family ipv4 unicast
    neighbor 169.254.159.2
      remote-as YYYYY
      password 3 b6d56a77617af8e3
      address-family ipv4 unicast

我尝试使用“最大路径混合”,因为我的理解是这将允许eBGP和iBGP路径被认为是相等的。

代码语言:javascript
复制
R1# show run bgp
router bgp XXXXX
  vrf vrf-100
    address-family ipv4 unicast
      network 10.10.100.0/24
      maximum-paths mixed 2
    neighbor 10.10.100.3
      remote-as XXXXX
      password 3 b6d56a77617af8e3
      address-family ipv4 unicast
    neighbor 169.254.159.2
      remote-as YYYYY
      password 3 b6d56a77617af8e3
      address-family ipv4 unicast

在这两种情况下,路由表中只安装了eBGP路由。

代码语言:javascript
复制
R1# show ip route vrf vrf-100
IP Route Table for VRF "vrf-100"
'*' denotes best ucast next-hop
'**' denotes best mcast next-hop
'[x/y]' denotes [preference/metric]
'%<string>' in via output denotes VRF <string>

10.10.100.0/24, ubest/mbest: 1/0, attached
    *via 10.10.100.2, Vlan100, [0/0], 6w2d, direct
10.10.100.1/32, ubest/mbest: 1/0, attached
    *via 10.10.100.1, Vlan100, [0/0], 6w2d, vrrp_engine
10.10.100.2/32, ubest/mbest: 1/0, attached
    *via 10.10.100.2, Vlan100, [0/0], 6w2d, local
169.254.159.0/30, ubest/mbest: 1/0, attached
    *via 169.254.159.1, Po2.100, [0/0], 1w5d, direct
169.254.159.1/32, ubest/mbest: 1/0, attached
    *via 169.254.159.1, Po2.100, [0/0], 1w5d, local
192.168.240.0/24, ubest/mbest: 1/0, all-best (0x0)
    *via 169.254.159.2, [20/0], 00:31:48, bgp-XXXXXX, external, tag YYYYYY

我怎样才能:

  1. 说服R1通过eBGP和iBGP路由的组合实现多路径,或者
  2. 改变我正在做的,允许通过其他机制进行多路径操作吗?
EN

回答 1

Network Engineering用户

发布于 2020-07-11 14:00:17

想象一下,如果您有以下网络拓扑,R1和R2都配置为您所描述的不等成本多路径类型。

绑定到因特网的数据包可以由R1发送到ISP1,也可以发送到R2。但是R2也有50%的机会将这些数据包从R1发送回R1。有些数据包会在R1和R2之间循环,直到TTL达到零为止。换句话说,您将经历一些目的地的连接中断。

代码语言:javascript
复制
ISP1     ISP2
 |        |
 R1------R2

这种循环行为就是为什么BGP没有给出考虑eBGP学习路径与iBGP学习路径相等的选项。

您可能知道,标记为-unicast的MPLS确实为解决这个问题提供了一个可能的解决办法,但我认为这不在当前讨论的范围之内。

票数 1
EN
页面原文内容由Network Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://networkengineering.stackexchange.com/questions/68938

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档