Quagga 未通过 ibgp 会话宣布外部路由

网络工程 路由 bgp 网络核心 linux 斑驴
2021-07-26 23:58:24

当我尝试使用 bgp 实现负载共享时遇到问题。我的情况是http://www.cisco.com/c/en/us/support/docs/ip/border-gateway-protocol-bgp/13762-40.html#conf3与此唯一的区别是 ISP 向我发送了完整的 bgp 表。

我的问题是,当我关闭 r101-r103 链接(在我的情况下为 vlan4)时,r101 无法路由任何东西,因为它的路由表中只有直接连接的路由。不应该是 r102 通过 ibgp 会话来宣传完整的 bgp 吗?

来自 r101 的配置文件:


主机名路由器
日志文件/var/log/quagga.log
记录标准输出
主机名 bgpd
bgp 配置类型 cisco
调试 bgp 更新
密码斑马
启用密码斑马
接口 bge0
 ipv6 nd抑制-ra
 没有链接检测
接口 bge1
 ipv6 nd抑制-ra
 没有链接检测
接口igb0
 ipv6 nd抑制-ra
 没有链接检测
接口igb1
 ipv6 nd抑制-ra
 没有链接检测
接口igb2
 ipv6 nd抑制-ra
 没有链接检测
接口igb3
 ipv6 nd抑制-ra
 没有链接检测
接口滞后0
 ipv6 nd抑制-ra
 没有链接检测
接口 lo0
 没有链接检测
接口 lo1
 ipv6 nd抑制-ra
 没有链接检测
接口 pfsync0
 ipv6 nd抑制-ra
 没有链接检测
接口 vlan3
 ipv6 nd抑制-ra
 没有链接检测
接口 vlan4
 ipv6 nd抑制-ra
 没有链接检测
接口 vlan5
 ipv6 nd抑制-ra
 没有链接检测
接口 vlan101
 ipv6 nd抑制-ra
 没有链接检测
接口 vlan106
 ipv6 nd抑制-ra
 没有链接检测
接口 vlan107
 ipv6 nd抑制-ra
 没有链接检测
接口 vlan109
 ipv6 nd抑制-ra
 没有链接检测
路由器 bgp 1
 没有同步
 bgp 路由器 ID 0.0.0.1
 bgp 日志邻居变化
 网络 1.0.0.0
 网络 2.0.0.0
 邻居 4.4.4.1 remote-as 2
 邻居 4.4.4.1 描述“R101 上行链路”
 邻居 4.4.4.1 更新源 4.4.4.2
 邻居 4.4.4.1 发送社区两者
 邻居 4.4.4.1 路由映射 R1-MAP out
 邻居 1.1.1.2 远程作为 1
 邻居 1.1.1.2 描述“R101 BGP 互连”
 邻居 1.1.1.2 更新源 1.1.1.1
 邻居 1.1.1.2 next-hop-self
 邻居 1.1.1.2 发送社区两者
 邻居 1.1.1.2 软重新配置入站
 最大路径 2
 没有自动总结
ip 前缀列表 1 seq 5 允许 2.0.0.0/8
ip 前缀列表 2 seq 5 允许 1.0.0.0/8
路由映射 R1-MAP 许可 10
 匹配 ip 地址前缀列表 1
 设置为路径前置 1 1 1
路由映射 R1-MAP 许可 20
 匹配 ip 地址前缀列表 2
ip转发
线 vty
结尾

R102配置文件:

主机名路由器
主机名 bgpd
日志文件/var/log/quagga.log
记录标准输出
bgp 配置类型 cisco
密码斑马
启用密码斑马
接口 bge0
 ipv6 nd抑制-ra
 没有链接检测
接口 bge1
 ipv6 nd抑制-ra
 没有链接检测
接口igb0
 ipv6 nd抑制-ra
 没有链接检测
接口igb1
 ipv6 nd抑制-ra
 没有链接检测
接口igb2
 ipv6 nd抑制-ra
 没有链接检测
接口igb3
 ipv6 nd抑制-ra
 没有链接检测
接口滞后0
 ipv6 nd抑制-ra
 没有链接检测
接口 lo0
 没有链接检测
接口 lo1
 没有链接检测
接口 pfsync0
 ipv6 nd抑制-ra
 没有链接检测
接口 vlan3
 ipv6 nd抑制-ra
 没有链接检测
接口 vlan4
 ipv6 nd抑制-ra
 没有链接检测
接口 vlan5
 ipv6 nd抑制-ra
 没有链接检测
接口 vlan101
 ipv6 nd抑制-ra
 ipv6 nd抑制-ra
 没有链接检测
接口 vlan106
 ipv6 nd抑制-ra
 没有链接检测
接口 vlan107
 ipv6 nd抑制-ra
 没有链接检测
接口 vlan109
 ipv6 nd抑制-ra
 没有链接检测
路由器 bgp 1
 没有同步
 bgp 路由器 ID 0.0.0.2
 bgp 日志邻居变化
 网络 1.0.0.0
 网络 2.0.0.0
 邻居 3.3.3.1 remote-as 2
 邻居 3.3.3.1 描述“R102 上行链路”
 邻居 3.3.3.1 更新源 3.3.3.2
 邻居 3.3.3.1 发送社区两者
 邻居 3.3.3.1 路由映射 R102-MAP out
 邻居 1.1.1.1 远程作为 1
 邻居 1.1.1.1 描述“R102 BGP 互连”
 邻居 1.1.1.1 更新源 1.1.1.2
 邻居 1.1.1.1 next-hop-self
 邻居 1.1.1.1 发送社区两者
 邻居 1.1.1.1 软重新配置入站
 没有自动总结
ip 前缀列表 1 seq 5 允许 1.0.0.0/8
ip 前缀列表 2 seq 5 允许 2.0.0.0/8
路由映射 R102-MAP 许可 10
 匹配 ip 地址前缀列表 1
 设置为路径前置 1 1 1
路由映射 R102-MAP 许可 20
 匹配 ip 地址前缀列表 2
ip转发
线 vty
结尾

网络接口位于链路聚合接口上的单独 VLAN 上。vlan4 是到供应商的链接,vlan3 是两个路由器之间的链接。

R101接口:

vlan3:标志=8843 公制 0 mtu 1500
    选项=303
    以太 a0:36:9a:4a:ec:f1
    inet 1.1.1.1 网络掩码 0xfffffffc 广播 1.1.1.3
    nd6 选项=29
    媒体:以太网自动选择
    状态:活跃
    VLAN:3 父接口:lagg0
[root@r101 ~]# ifconfig vlan4
vlan4:标志=8943 公制 0 mtu 1500
    选项=303
    以太 a0:36:9a:4a:ec:f1
    inet 4.4.4.2 网络掩码 0xfffffff8 广播 4.4.4.7
    nd6 选项=29
    媒体:以太网自动选择
    状态:活跃
    VLAN:4 父接口:lagg0

R102接口:

[root@r102 ~]# ifconfig vlan3
vlan3:标志=8843 公制 0 mtu 1500
    选项=303
    以太 a0:36:9a:4a:ec:f1
    inet 1.1.1.2 网络掩码 0xfffffffc 广播 1.1.1.3
    nd6 选项=29
    媒体:以太网自动选择
    状态:活跃
    VLAN:3 父接口:lagg0
[root@r102 ~]# ifconfig vlan4
vlan4:标志=8943 公制 0 mtu 1500
    选项=303
    以太 a0:36:9a:4a:ec:f1
    inet 3.3.3.2 网络掩码 0xfffffff8 广播 3.3.3.7
    nd6 选项=29
    媒体:以太网自动选择
    状态:活跃
    VLAN:4 父接口:lagg0
1个回答

update-source不用于建立EBGP除非你使用eBGP多跳(你不是),这是没有必要为您的iBGP,因为你不是从一个不同的接口采购从一个你正在使用连接的邻居。您应该删除这些行。

您似乎没有使用社区,因此您可能会丢失send-community both. 通常,您的 AS 内的前缀上会有一致的社区,并且只有在需要将社区发送到不同的 AS 时才会使用它。

您的 iBGP 路由器应该已经共享了它们的 BGP 路由表,因此soft-reconfiguration inbound不应在您的 AS 内使用它,但它通常在 AS 之间使用。

我不确定您为什么要为两个外部路由器添加相同数量的 AS。通常,您使用前置让外部 AS 优先选择您的路由器之一;你会在一个外部链接前加上一个,而不是另一个。你这样做的方式似乎没有完成任何事情。

由于您要通告聚合前缀,请使用该aggregate-address命令。这将公布汇总路线,根据您的评论,我认为这是您的目标。只要路由表中的摘要中至少有一条路由,就会公布聚合地址。summary-only意味着它不会通告聚合地址内的各个路由。

我认为您的 BGP 配置应该类似于:

R101:

router bgp 1
 no synchronization
 bgp router-id 0.0.0.1
 bgp log-neighbor-changes
! network 1.0.0.0
! network 2.0.0.0
 aggregate-address 1.1.1.0 255.255.255.0 summary-only
 aggregate-address 2.2.2.0 255.255.255.0 summary-only
 neighbor 4.4.4.1 remote-as 2
 neighbor 4.4.4.1 description "R101 uplink"
 neighbor 4.4.4.1 update-source 4.4.4.2
 neighbor 4.4.4.1 route-map R1-MAP out
 neighbor 4.4.4.1 soft-reconfiguration inbound
 neighbor 1.1.1.2 remote-as 1
 neighbor 1.1.1.2 description "R101 BGP interconnect"
 neighbor 1.1.1.2 next-hop-self
 maximum-paths 2
 no auto-summary
!

R102:

router bgp 1
 no synchronization
 bgp router-id 0.0.0.2
 bgp log-neighbor-changes
! network 1.0.0.0
! network 2.0.0.0
 aggregate-address 1.1.1.0 255.255.255.0 summary-only
 aggregate-address 2.2.2.0 255.255.255.0 summary-only
 neighbor 3.3.3.1 remote-as 2
 neighbor 3.3.3.1 description "R102 uplink"
 neighbor 3.3.3.1 update-source 3.3.3.2
 neighbor 3.3.3.1 route-map R102-MAP out
 neighbor 3.3.3.1 soft-reconfiguration inbound
 neighbor 1.1.1.1 remote-as 1
 neighbor 1.1.1.1 description "R102 BGP interconnect"
 neighbor 1.1.1.1 next-hop-self
 no auto-summary
!