传输错误的 BGP AS 编号

网络工程 路由 bgp
2021-07-27 19:47:15

我有 BGP AS 编号的问题。我们在 Cisco ISR4451-X 路由器上为不同的 ISP 配置了两个 BGP 对等体。一个对等点工作正常,但在第二个对等点上,连接状态通常是空闲的。当我查看日志时,我发现传输了错误的 AS 编号:
我已经配置了 AS 202xxx,但传输的始终是编号 23456。

Log Buffer (4096 bytes):
Dec 20 12:52:13.940: BGP_Router: unhandled major event code 128,minor 0
Dec 20 12:52:19.609: BGP: xxx active went from Idle to Active
Dec 20 12:52:19.609: BGP: xxx open active, local address xxx
Dec 20 12:52:19.621: BGP: ses global xxx (0x7F33116D6630:0) act Adding topology IPv4 Unicast:base
Dec 20 12:52:19.621: BGP: ses global xxx (0x7F33116D6630:0) act Send OPEN
Dec 20 12:52:19.621: BGP: xxx active went from Active to OpenSent
Dec 20 12:52:19.621: BGP: xxx active sending OPEN, version 4, my as: 23456, holdtime 180 seconds, ID B99E6022
Dec 20 12:52:19.634: BGP: ses global xxx (0x7F33116D6630:0) act Remote close.
Dec 20 12:52:19.634: BGP: nbr_topo global xxx IPv4 Unicast:base (0x7F33116D6630:0) Not scheduling for GR processing [Peer did not advertise GR cap]
Dec 20 12:52:19.634: %BGP-5-NBR_RESET: Neighbor xxx active reset (Peer closed the session)
Dec 20 12:52:19.634: BGP: ses global xxx (0x7F33116D6630:0) act Reset (Peer closed the session).
Dec 20 12:52:19.634: BGP: nbr_topo global xxx IPv4 Unicast:base (0x7F33116D6630:0) NSF delete stale NSF not active
Dec 20 12:52:19.634: BGP: nbr_topo global xxx IPv4 Unicast:base (0x7F33116D6630:0) NSF no stale paths state is NSF not active
Dec 20 12:52:19.634: BGP: nbr_topo global xxx IPv4 Unicast:base (0x7F33116D6630:0) Resetting ALL counters.
Dec 20 12:52:19.634: BGP: xxx active closing
Dec 20 12:52:19.634: BGP: ses global xxx (0x7F33116D6630:0) act Session close and reset neighbor xxx topostate
Dec 20 12:52:19.634: BGP: nbr_topo global xxx IPv4 Unicast:base (0x7F33116D6630:0) Resetting ALL counters.
Dec 20 12:52:19.634: BGP: xxx active went from OpenSent to Idle
Dec 20 12:52:19.634: %BGP_SESSION-5-ADJCHANGE: neighbor xxx IPv4 Unicast topology base removed from session  Peer closed the session

使用wireshark 的监视器捕获输出也显示错误的AS 编号,BGP 通知消息显示Bad Peer AS。

边界网关协议 - OPEN 消息

   Marker: ffffffffffffffffffffffffffffffff
   Length: 29
   Type: OPEN Message (1)
   Version: 4
   My AS: 23456
   Hold Time: 180
   BGP Identifier: xxx
   Optional Parameters Length: 0

边界网关协议 - 通知消息

Marker: ffffffffffffffffffffffffffffffff
Length: 21
Type: NOTIFICATION Message (3)
Major error Code: OPEN Message Error (2)
Minor error Code (Open Message): Bad Peer AS (2)

router bgp 202xxx
bgp router-id xxx
bgp log-neighbor-changes
neighbor xxx remote-as 212xx
neighbor xxx dont-capability-negotiate
neighbor xxx password 7 0337723xxxxxxxx

BGP router identifier xxx, local AS number 202xxx
BGP table version is 1814938, main routing table version 1814938
613561 network entries using 152163128 bytes of memory
613561 path entries using 73627320 bytes of memory
102358/96231 BGP path/bestpath attribute entries using 25384784 bytes of memory
88809 BGP AS-PATH entries using 4146064 bytes of memory
1 BGP ATTR_SET entries using 40 bytes of memory
201 BGP community entries using 7928 bytes of memory
0 BGP route-map cache entries using 0 bytes of memory
0 BGP filter-list cache entries using 0 bytes of memory
BGP using 255329224 total bytes of memory
BGP activity 1988167/1374600 prefixes, 3700228/2473531 paths, scan interval 60 secs


Neighbor    V    AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down    State/PfxRcd
xxx         4   xxx    0      0        1       0   0    5d04h    Idle
xxx         4   xxx  609982   3337     1814810 0   0    1d01h    613562
xxx         4   xxx     0      0        1       0   0    never    Active

为什么在这个对等点传输错误的AS?

2个回答

AS23456 是一种特殊的 ASN,称为“AS_TRANS”。当引入 4 字节 ASN 来解决 AS 编号不足的问题时,并不是每个路由器都运行能够处理该问题的软件。使用 AS23456 以便仅支持 2 字节 ASN 的路由器能够正确处理到 4 字节 ASN 的路由,而无需升级它们。您可以在RFC 4893 中阅读有关此内容的更多信息

我有点惊讶你的路由器仍然将该 AS 记录为它的本地 ASN。长期以来,4 字节 AS 编号一直是标准。

我认为你的问题是这个命令 neighbor xxx dont-capability-negotiate

这将禁用所有功能的协商,其中之一是 4 字节 AS neighbor x.x.x.x dont-capability-negotiate four-byte-as