在 Quagga 中连接 eBGP 和 iBGP 路由器
Connecting eBGP and iBGP routers in Quagga
我正在尝试从 AS7 宣布一个前缀,我喜欢 AS6 接收它并将其发送到 AS2(如所附拓扑所示)。我在 AS6 的所有路由器上都有 OSPF 运行ning。我在 AS6 中为路由器的每个环回接口分配了 10.x.x.x。例如 10.6.6.6 用于 r6。 10.4.4.4 用于 r4 等。我已经在 AS6 的所有路由器之间建立了对等连接。例如,r3 与 r6、r4、r9 和 r5 事件有联系,尽管我们之间没有物理联系。
我的问题是我应该为 r6 使用的 ip 地址应该是 public ip,因为如果我为 r6 使用 10.6.6.6,那么来自 AS7 的 r7 将无法与之通信。 r5 和 r9 的相同原因应该是 运行 和它们的 public 地址。如果我使用 r6 的 public ip,然后如果我将 r6 连接到 r5 和 r9,那么我就不需要 OSPF 并且没有 OSPF r6 也可以与 r9 和 r5 通信。
我很困惑如何使用它的 public IP 地址将 r6 包含在我的全网状拓扑中。我应该将 r6 的 public ip 地址分配给它的回环吗?
1) 在 AS6 中,您需要全网状 IBGP 会话:R3-R4、R3-R5、R3-R6、R3-R9、R4-R5、R4-R6、R4-R9、R5-R6、 R6-R9。您需要完整的网格有两个原因。一:每个路由器在其转发中都需要IBGP路由table,所以每个路由器都需要讲IGBP。二:IBGP 路由通常不会从一个IBGP 会话传播到另一个IBGP 会话,因此IBGP 会话必须形成全连接。
注意:或者,作为全网状 IBGP 会话的替代方案,您可以使用一个或多个路由器反射器:RR-R3、RR-R4、RR-R5、RR-R6、RR-R9。
注意:一种常见的设计是所谓的无 BGP 核心。在此设计中,您只有 运行 IBGP 在您的 AS 的边缘路由器上(在您的示例 R5、R9 和 R6 中)。核心中的其他路由器(在您的示例中为 R3 和 R4)仅 运行 IGP(在您的示例中为 OSPF)。这意味着 BGP 路由不在核心路由器 R3 和 R4 中。为了进行转发,从边缘路由器到边缘路由器(通常是 MPLS,但有时是 GRE 或 VXLAN)使用某种(自动)隧道。
2) 建议使用环回地址作为IBGP会话的源地址和目的地址。这是为了避免将多跳 IBGP 会话绑定到物理接口。例如,假设您还有一个 R5-R9 link 并考虑 R6-R9 IBGP 会话。 R6-R9 IBGP 会话的物理路径通常是 R6-R4-R9。但是如果 R6-R4 接口出现故障,我们希望 IBGP 会话保持打开状态并转移到 R6-R3-R5-R9 路径。
3) 因为 IBGP 会话通常是环回到环回,有时是多跳的,所以您需要某种机制让每个 BGP 发言者(R3、R4、R5、R6、R9)发现到环回的路由。这就是为什么 AS 中的每个路由器还必须 运行 OSPF(R3、R4、R5、R6、R9)。
4) 环回地址通常是 public IP 地址,但理论上它们也可以是私有 IP 地址。真正重要的是 AS6 中的每个路由器都具有到同一域中其他路由器环回的 OSPF 可达性。
5) EBGP 会话 R2-R5、R2-R9 和 R6-R7 应绑定到接口。也就是说,这些BGP会话的源IP地址和目的IP地址应该是AS间接口的IP地址。
我正在尝试从 AS7 宣布一个前缀,我喜欢 AS6 接收它并将其发送到 AS2(如所附拓扑所示
我的问题是我应该为 r6 使用的 ip 地址应该是 public ip,因为如果我为 r6 使用 10.6.6.6,那么来自 AS7 的 r7 将无法与之通信。 r5 和 r9 的相同原因应该是 运行 和它们的 public 地址。如果我使用 r6 的 public ip,然后如果我将 r6 连接到 r5 和 r9,那么我就不需要 OSPF 并且没有 OSPF r6 也可以与 r9 和 r5 通信。
我很困惑如何使用它的 public IP 地址将 r6 包含在我的全网状拓扑中。我应该将 r6 的 public ip 地址分配给它的回环吗?
1) 在 AS6 中,您需要全网状 IBGP 会话:R3-R4、R3-R5、R3-R6、R3-R9、R4-R5、R4-R6、R4-R9、R5-R6、 R6-R9。您需要完整的网格有两个原因。一:每个路由器在其转发中都需要IBGP路由table,所以每个路由器都需要讲IGBP。二:IBGP 路由通常不会从一个IBGP 会话传播到另一个IBGP 会话,因此IBGP 会话必须形成全连接。
注意:或者,作为全网状 IBGP 会话的替代方案,您可以使用一个或多个路由器反射器:RR-R3、RR-R4、RR-R5、RR-R6、RR-R9。
注意:一种常见的设计是所谓的无 BGP 核心。在此设计中,您只有 运行 IBGP 在您的 AS 的边缘路由器上(在您的示例 R5、R9 和 R6 中)。核心中的其他路由器(在您的示例中为 R3 和 R4)仅 运行 IGP(在您的示例中为 OSPF)。这意味着 BGP 路由不在核心路由器 R3 和 R4 中。为了进行转发,从边缘路由器到边缘路由器(通常是 MPLS,但有时是 GRE 或 VXLAN)使用某种(自动)隧道。
2) 建议使用环回地址作为IBGP会话的源地址和目的地址。这是为了避免将多跳 IBGP 会话绑定到物理接口。例如,假设您还有一个 R5-R9 link 并考虑 R6-R9 IBGP 会话。 R6-R9 IBGP 会话的物理路径通常是 R6-R4-R9。但是如果 R6-R4 接口出现故障,我们希望 IBGP 会话保持打开状态并转移到 R6-R3-R5-R9 路径。
3) 因为 IBGP 会话通常是环回到环回,有时是多跳的,所以您需要某种机制让每个 BGP 发言者(R3、R4、R5、R6、R9)发现到环回的路由。这就是为什么 AS 中的每个路由器还必须 运行 OSPF(R3、R4、R5、R6、R9)。
4) 环回地址通常是 public IP 地址,但理论上它们也可以是私有 IP 地址。真正重要的是 AS6 中的每个路由器都具有到同一域中其他路由器环回的 OSPF 可达性。
5) EBGP 会话 R2-R5、R2-R9 和 R6-R7 应绑定到接口。也就是说,这些BGP会话的源IP地址和目的IP地址应该是AS间接口的IP地址。