C1与B1建立直连EBGP(A2上起VPLS),A1与B1建立IBGP、A1与C1建立EBGP
最初B1去C1下连的私网路由是通过A1学过来的(IBGP),既走B1-A1-C1,现网在C1与B1之间新增一条EBGP,当将C1与A1之间链路中断之后,区域汇聚路由器B1无法学到EBGP学习过来的路由,业务中断,此后过6min后,路由学习正常,业务恢复。
1. B1无法学习到从EBGP(10.23.16.193)过来的路由10.22.11.0。
[DQQY-SR8808X-B]display ip routing-table 10.22.11.21
Summary count : 5
Destination/Mask Proto Pre Cost NextHop Interface
0.0.0.0/0 Static 60 0 10.23.15.193 XGE0/1/1.299
Static 60 0 10.23.15.201 XGE0/1/1.300
10.0.0.0/8 BGP 255 0 10.33.5.81 Pos8/1/1
10.0.0.0/9 BGP 255 0 10.33.5.81 Pos8/1/1
10.22.11.0/24 BGP 255 0 10.33.20.1 Vlan300
2. 如下可以发现从10.23.16.193已经收到此路由,但是由于此时未加表,且学过来路由的MED值为4294967295,有点异常。
[DQQY-SR8808X-B]display bgp routing-table ipv4 peer 10.23.16.193 received-routes
Total number of routes: 5
BGP local router ID is 10.33.20.2
Status codes: * - valid, > - best, d - dampened, h - history
s - suppressed, S - stale, i - internal, e - external
a - additional-path
Origin: i - IGP, e - EGP, ? - incomplete
Network NextHop MED LocPrf PrefVal Path/Ogn
* e 10.22.10.0/24 10.23.16.193 4294967295 0 65317?
* e 10.22.11.0/24 10.23.16.193 4294967295 0 65317?
* e 10.22.13.0/24 10.23.16.193 4294967295 0 65317?
* e 10.22.15.0/24 10.23.16.193 4294967295 0 65317?
* e 10.23.16.0/24 10.23.16.193 4294967295 0 65317i
3. 再次查看详细信息可以发现,路由无法优选的原因是因为收到的MED值太大导致。因此下一步需要判断的是为何我们B1会收到这么大的一个MED值。
[DQQY-SR8808X-B]display bgp routing-table ipv4 10.22.11.21
BGP local router ID: 10.33.20.2
Local AS number: 65412
Paths: 5 available, 3 best
From : 10.23.16.193 (1.1.76.1)
Rely nexthop : 10.23.16.193
Original nexthop: 10.23.16.193
Out interface : Ten-GigabitEthernet0/1/1.297
Route age : 00h01m04s
OutLabel : NULL
RxPathID : 0x0
TxPathID : 0xffffffff
AS-path : 65317
Origin : incomplete
Attribute value : MED 4294967295, pref-val 0
State : valid, external, not preferred for med, not ECMP for med
IP precedence : N/A
QoS local ID : N/A
Traffic index : N/A
Tunnel policy : NULL
Rely tunnel IDs : N/A
4. 怀疑是对端的一个机制, 想让我们延迟优选,因此本端开启debug看,是不是对端发过来的属性。
开启debugging bgp all 10.23.16.193,debugging bgp all 10.23.16.201发现是对端发过来的更新报文中携带的。
*Apr 14 01:06:38:087 2022 DQQY-SR8808X-B BGP/7/DEBUG: -MDC=1;
BGP.: Recv UPDATE from peer 10.23.16.193 with following destinations:
Update message length : 54
Origin : IGP
AS path : 65317
Next hop : 10.23.16.193
MED : 4294967295
10.23.16.0/24 PathID 0 ,
5. 经过6min后,对端重新发了更新报文,此时MED值为0,路由优选加表,恢复正常。
*Apr 14 01:12:38:129 2022 DQQY-SR8808X-B BGP/7/DEBUG: -MDC=1;
BGP.: Recv UPDATE from peer 10.23.16.193 with following destinations:
Update message length : 54
Origin : IGP
AS path : 65317
Next hop : 10.23.16.193
MED : 0
10.23.16.0/24 PathID 0
经上述定位:无法优选的原因是因为我们收到了MED 值为4294967295的路由,此路由无法成为BEST,此后过6min后,我们收到了MED值为0的路由,此时优选从EBGP收到的路由,业务正常。后续查对端C1设备(华为),此问题的根本原因是因为对端华为设备为解决回切场景丢包时间长的问题,配置了advertise lowest-priority all-address-family peer-up 360,当邻居建立后,先发送MED属性最低的路由,等定时器超时后才发送携带正常属性的路由,此时业务恢复正常。
advertise lowest-priority all-address-family peer-up命令用来在邻居状态由Down到Up时将BGP路由的优先级调整为最低优先级。
应用于路由延时发布场景,解决回切场景丢包时间长的问题。如果没有配置advertise lowest-priority all-address-family peer-up命令,邻居建立后会马上发送携带正常属性的路由。如果配置advertise lowest-priority all-address-family peer-up命令,当邻居建立后,先发送MED和LocalPref属性最低的路由,等定时器超时后才发送携带正常属性的路由。
<HUAWEI> system-view
[~HUAWEI] bgp 100
[*HUAWEI-bgp] advertise lowest-priority all-address-family peer-up
该案例暂时没有网友评论
✖
案例意见反馈
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作