IP : 边界网关协议(BGP)

有或没有环回地址的 iBGP 和 eBGP 配置示例

2016 年 10 月 27 日 - 机器翻译
其他版本: PDFpdf | 英语 (2015 年 12 月 19 日) | 反馈


目录


简介

BGP 是一种 Exterior Gateway Protocol (EGP),用于在 TCP/IP 网络中执行域间路由。BGP 路由器需要(在 TCP 端口 179)与它的每个 BGP 对等体建立连接,才能交换 BGP 更新。如果两个 BGP 对等体位于不同的自治系统 (AS) 中,则二者之间的 BGP 会话将视为外部 BGP (eBGP) 会话。如果两个 BGP 对等体位于同一自治系统中,则将二者之间的 BGP 会话视为内部 BGP (iBGP) 会话。

默认情况下,将使用最接近对等路由器的接口的 IP 地址建立对等体关系。然而,使用neighbor update-source命令,所有可操作的接口,包括回环接口,可以指定用于建立TCP连接。这种使用环回接口进行对等的方法十分实用,因为当 BGP 对等体之间有多个路径时该方法不会导致 BGP 会话中断,否则,当用于建立 BGP 会话的物理接口关闭时,将导致该会话断开。除此之外,它还允许运行 BGP 的之间有多条链路的路由器在可用路径中执行负载均衡。

本文档中的配置示例针对 iBGP 和 eBGP,包括有环回地址和无环回地址两种情况。

注意: 可以使用这些配置建立邻居关系。有关更多复杂配置,请参阅使用边界网关协议 (BGP) 进行域间路由

先决条件

要求

在尝试进行此配置之前,请确保满足以下要求:

  • BGP 协议知识

使用的组件

本文档不限于特定的软件和硬件版本。在本文显示的命令输出从运行IOS�版本12.2(24a)的2500系列路由器被采取了。

规则

有关文档规则的详细信息,请参阅 Cisco 技术提示规则

配置

本部分包含以下配置示例:

本部分提供有关如何配置本文档所述功能的信息。

网络图

本文档使用以下网络设置:

http://www.cisco.com/c/dam/en/us/support/docs/ip/border-gateway-protocol-bgp/13751-23a.gif

iBGP 配置

在此配置中,两路由器是在AS400

R1-AGS R6-2500
Current configuration:

!-- Output suppressed.

interface Serial1
 ip address 10.10.10.1 255.255.255.0
!
router bgp 400

!--- Enables BGP for the autonomous
!--- system 400.

 neighbor 10.10.10.2 remote-as 400
 
!--- Specifies a neighbor 10.10.10.2
 !--- in the remote AS 400, making
 !--- this an iBGP connection.  
!-- Output suppressed.

end
Current configuration:

!-- Output suppressed.

interface Serial0
ip address 10.10.10.2 255.255.255.0
!
router bgp 400
 neighbor 10.10.10.1 remote-as 400

!-- Output suppressed.

end

eBGP 配置

在此配置中,路由器R1-AGS是AS 300,并且路由器R6-2500在AS400

R1-AGS R6-2500
Current configuration:

!-- Output suppressed

interface Serial1
 ip address 10.10.10.1 255.255.255.0
!
router bgp 300

!--- Enables BGP for the autonomous
!--- system 300.

 neighbor 10.10.10.2 remote-as 400
 
!--- Specifies a neighbor 10.10.10.2
 !--- in the remote AS 400, making
 !--- this an eBGP connection.


!-- Output suppressed.

end
Current configuration:

!-- Output suppressed.

interface Serial0
ip address 10.10.10.2 255.255.255.0
!
router bgp 400
 neighbor 10.10.10.1 remote-as 300

!-- Output suppressed.

end

使用 eBGP 时,对等体必须直接连接。如果他们没有直接地连接,必须使用neighbor ebgp-multihop命令,并且一个路径到到达对等体的IGP或静态路由必须存在为了路由器能建立邻接关系。在以上配置中,R1-AGS 路由器属于 AS 300,而 R6-2500 路由器属于 AS 400。

具有环回地址的 iBGP 配置

可以使用环回地址(或任何其他工作接口)配置 iBGP,如本部分所示。

R1-AGS R6-2500
Current configuration:


!-- Output suppressed.

interface Loopback0
  ip address 1.1.1.1 255.255.255.255
 !
 interface Serial1
  ip address 10.10.10.1 255.255.255.0
 !
 router bgp 300
  neighbor 2.2.2.2 remote-as 300
  neighbor 2.2.2.2 update-source Loopback0
  
!--- This command specifies that the TCP
  !--- connection with the specified external
  !--- peer should be established using the
  !--- address on the loopback interface.

 !
 ip route 2.2.2.2 255.255.255.255 10.10.10.2
 
!--- This static route ensures that the 
 !--- remote peer address used for peering
 !--- is reachable.
!-- Output suppressed.

end
Current configuration:


!-- Output suppressed.

interface Loopback0
 ip address 2.2.2.2 255.255.255.255
!
interface Serial0
 ip address 10.10.10.2 255.255.255.0
!
router bgp 300
 neighbor 1.1.1.1 remote-as 300
 neighbor 1.1.1.1 update-source Loopback0
!
ip route 1.1.1.1 255.255.255.255 10.10.10.1

!-- Output suppressed.

end

具有环回地址的 eBGP 配置

您也可以使用环回地址(或任何其他工作接口)配置 eBGP,如本部分所示。以这种方式使用环回接口可保证具有多个路径的网络中的可达性,详细信息请参阅使用环回地址作为 BGP 邻居的负载共享部分(在单宿主和多宿主环境中使用 BGP 进行负载共享:配置示例)。

R1-AGS R6-2500
Current configuration:


!-- Output suppressed.


interface Loopback0
  ip address 1.1.1.1 255.255.255.255
 !
 interface Serial1
  ip address 10.10.10.1 255.255.255.0
 !
 router bgp 300
  neighbor 2.2.2.2 remote-as 400
  neighbor 2.2.2.2 ebgp-multihop 2
 
 !--- This command changes the ttl value in 
  !--- order to allow the packet to reach the 
  !--- external BGP peer which is not directly
  !--- connected or is using an interface other
  !--- than the directly connected interface.

  neighbor 2.2.2.2 update-source Loopback0
  
!--- This command specifies that the TCP
  !--- connection with the external BGP
  !--- peer should be established using the
  !--- address on the loopback interface.
 !

 ip route 2.2.2.2 255.255.255.255 10.10.10.2

 !--- This static route ensures that the 
 !--- remote peer address used for peering
 !--- is reachable.


!-- Output suppressed.


end
Current configuration:


!-- Output suppressed.


interface Loopback0
 ip address 2.2.2.2 255.255.255.255
!
interface Serial0
 ip address 10.10.10.2 255.255.255.0
!
router bgp 400
 neighbor 1.1.1.1 remote-as 300
 neighbor 1.1.1.1 ebgp-multihop 2
 neighbor 1.1.1.1 update-source Loopback0
!
ip route 1.1.1.1 255.255.255.255 10.10.10.1


!-- Output suppressed.


end

验证

这些部分提供的信息可用于确认您的配置是否工作正常。输出解释器工具支持某些特定的 show 命令(只限于注册用户),它允许您查看 show 命令输出的分析。

验证 iBGP 配置

如果BGP对等体设立,请使用show ip bgp neighbors命令显示关于TCP和边界网关协议(BGP)连接的信息和验证。以下 show ip bgp neighbors 命令的输出显示 BGP 状态为“Established”,表示已成功建立 BGP 对等体关系。

R1-AGS# show ip bgp neighbors | include BGP
BGP neighbor is 10.10.10.2,  remote AS 400, internal link
  BGP version 4, remote router ID 2.2.2.2
  BGP state = Established, up for 00:04:20
  BGP table version 1, neighbor version 1
R1-AGS#

已经在上面使用过的 show ip bgp neighbors 命令带有限定符|include BGP。这样可对命令输出进行过滤并仅显示相关部分,从而提高输出的可读性。

另外, show ip bgp summary命令可能也用于显示所有BGP连接状况,如下所示。

R1-AGS(9)# show ip bgp summary
BGP router identifier 10.1.1.2, local AS number 400	
BGP table version is 1, main routing table version 1

Neighbor        V    AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down  State/PfxRcd
10.10.10.2      4   400       3       3        1    0    0 00:00:26        0

验证 eBGP 配置

如果BGP对等体设立,请使用show ip bgp neighbors命令显示关于TCP和边界网关协议(BGP)连接的信息和验证。以下 show ip bgp neighbors 命令的输出显示 BGP 状态为“Established”,表示已成功建立 BGP 对等体关系。

R1-AGS# show ip bgp neighbors | include BGP
BGP neighbor is 10.10.10.2,  remote AS 400, external link
  BGP version 4, remote router ID 2.2.2.2
  BGP state = Established, up for 00:00:17
  BGP table version 1, neighbor version 1

另外, show ip bgp summary命令可能也用于显示所有BGP连接状况,如下所示。

R1-AGS(9)# show ip bgp summary
BGP router identifier 10.10.10.1, local AS number 300
BGP table version is 1, main routing table version 1

Neighbor        V    AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down  State/PfxRcd
10.10.10.2      4   400       3       3        1    0    0 00:00:26        0

验证具有环回地址的 iBGP 配置

如果BGP对等体设立,请使用show ip bgp neighbors命令显示关于TCP和边界网关协议(BGP)连接的信息和验证。以下 show ip bgp neighbors 命令的输出显示 BGP 状态为“Established”,表示已成功建立 BGP 对等体关系。

R1-AGS# show ip bgp neighbors | include BGP
BGP neighbor is 2.2.2.2,  remote AS 300, internal link
  BGP version 4, remote router ID 2.2.2.2
  BGP state = Established, up for 00:00:28
  BGP table version 1, neighbor version 1
R1-AGS#

另外, show ip bgp summary命令可能也用于显示所有BGP连接状况,如下所示。

R1-AGS(9)# show ip bgp summary
BGP table version is 1, main routing table version 1

Neighbor        V    AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down  State/PfxRcd
2.2.2.2         4   400       3       3        1    0    0 00:00:26        0

验证具有环回地址的 eBGP 配置

如果BGP对等体设立,请使用show ip bgp neighbors命令显示关于TCP和边界网关协议(BGP)连接的信息和验证。以下 show ip bgp neighbors 命令的输出显示 BGP 状态为“Established”,表示已成功建立 BGP 对等体关系。

R1-AGS# show ip bgp neighbors | include BGP
BGP neighbor is 2.2.2.2,  remote AS 400, external link
  BGP version 4, remote router ID 2.2.2.2
  BGP state = Established, up for 00:00:16
  BGP table version 1, neighbor version 1
  External BGP neighbor may be up to 2 hops away.

另外, show ip bgp summary命令可能也用于显示所有BGP连接状况,如下所示。

R1-AGS(9)# show ip bgp summary
BGP router identifier 1.1.1.1, local AS number 300
BGP table version is 1, main routing table version 1

Neighbor        V    AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down  State/PfxRcd
2.2.2.2         4   400       3       3        1    0    0 00:00:26        0

故障排除

请参阅 BGP 邻居为何在空闲、连接和活动状态之间切换?BGP 故障排除以获得故障排除信息。


相关信息


Document ID: 13751