|
|
|
|
公众号矩阵

2.3.3 案例研究:IBGP对等会话(1)

《TCP/IP路由技术(第2卷)(第2版)》第2章BGP简介,本章将讨论BGP的基本操作,包括BGP的消息类型、消息使用方式以及消息格式。此外,本章还要讨论与路由相关联的各种基本的BGP属性以及利用这些属性选择最佳路由的方式,最后将解释BGP对等会话的配置以及故障检测与排除方式。本节为大家介绍案例研究:IBGP对等会话。

作者:夏俊杰 译来源:人民邮电出版社|2017-09-06 17:17

2.3.3 案例研究:IBGP对等会话(1)

图2-25显示了另一个AS(AS400)连接到AS100上(为简化起见,连接Vail和Taos的接口仍然是IPv4),AS100中增加了两台路由器——Aspen和Telluride,并且Telluride通过EBGP连接了Alta(位于AS400中)。

AS100中的三台路由器与该AS中的其他两台路由器均有一个IBGP对等会话,在1.5节曾经说过,基于以下两条理由必须建立全网状IBGP连接(同一AS中的每台BGP路由器之间都必须建立一条直接的IBGP连接)。

由于AS_PATH属性对于单个AS来说没有任何意义,因而IBGP没有环路避免机制,全网状IBGP连接意味着每台BGP路由器都直接将自己的前缀信息宣告给同一AS中的其他每一台BGP路由器,因而所有路由器都不需要将学自内部对等体的前缀宣告给其他内部对等体,否则将会导致路由环路。默认的BGP规则进一步强化了全网状连接需求:BGP不能将学自内部邻居的路由宣告给其他内部邻居[10]。

转发路径上的每台BGP路由器都必须知道路由器与外部对等体使用的BGP路由,从而转发到纯内部BGP路由器的数据包在去往外部下一跳的途中不会被内部路由器丢弃。以图2-25为例,Telluride将会收到从AS400到AS200的数据包,由于Telluride去往AS200目的端的BGP路由的下一跳地址是192.168.1.255(Taos的外部接口),因而Telluride会将数据包转发给Aspen以到达该下一跳(假设Vail在内部宣告了该子网)。但是,如果Aspen不知道去往AS200目的端的BGP路由,那么Aspen就会丢弃数据包。因此,除了Vail与Telluride之间的IBGP会话之外,外部连接的所有路由器也必须将外部路由告诉给Aspen。

从总体上来说,IBGP对等会话的配置方式与EBGP对等会话完全相同,之所以是IBGP而不是EBGP,原因就在于neighbor remote-as命令引用的AS号与router bgp命令引用的本地AS号完全相同。例2-11给出了Vail、Aspen以及Telluride的配置信息,从这三台路由器配置中的router bgp语句可以看出,它们都位于AS100,而且还可以看出这些配置中的neighbor remote-as语句也都指向AS100,因而可以判断出这些会话都是IBGP会话。

例2-11 图2-25中AS100的路由器配置

  1. Vail  
  2. router bgp 100  
  3. neighbor 192.168.1.197 remote-as 100  
  4. neighbor 192.168.1.222 remote-as 100  
  5. neighbor 192.168.1.225 remote-as 200  
  6. ________________________________________________________________________________  
  7. Aspen  
  8. router bgp 100  
  9. neighbor 192.168.1.197 remote-as 100  
  10. neighbor 192.168.1.221 remote-as 100  
  11. ________________________________________________________________________________  
  12. Telluride  
  13. router bgp 100  
  14. neighbor 192.168.1.198 remote-as 100  
  15. neighbor 192.168.1.205 remote-as 400  
  16. neighbor 192.168.1.221 remote-as 100 

例2-12介绍了另一条日常维护和检测与排除BGP网络故障的常见命令:show ip bgp summary[11],该命令可以显示路由器上配置的BGP对等会话的摘要信息以及每个对等会话的状态信息。该命令的输出结果首先显示本地路由器的BGP路由器ID、AS号以及BGP表的当前版本(如果策略或其他行为改变了BGP表的内容,那么BGP表的版本也会随之递增),在这些信息之后,将会显示每个已配置邻居的如下信息:

在neighbor remote-as语句中配置的地址;

为该邻居使用的BGP版本;

该邻居的AS号;

从该邻居收到的BGP消息数以及发送给该邻居的BGP消息数;

发送给该邻居的本地BGP表的***版本;

队列中来自/去往该邻居的消息数;

与该邻居已建立的BGP会话的时长;

如果BGP会话未进入Established状态,那么就显示该邻居的状态;如果是Established状态,那么就显示从该邻居接收到的前缀数量。

例2-12 虽然其他BGP会话已经建立,但Vail与Telluride之间的IBGP对等会话仍未建立,处于Active状态

  1. ! Vail  
  2. Vail#show ip bgp summary  
  3. BGP router identifier 192.168.1.226, local AS number 100  
  4. BGP table version is 1, main routing table version 1  
  5. Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd  
  6. 192.168.1.197 4 100 0 0 0 0 0 never Active  
  7. 192.168.1.222 4 100 29 22 1 0 0 00:18:59 0  
  8. 192.168.1.225 4 200 43 43 1 0 0 00:00:12 0  
  9. ________________________________________________________________________________  
  10. ! Aspen  
  11. Aspen#show ip bgp summary  
  12. BGP router identifier 192.168.1.222, local AS number 100  
  13. BGP table version is 1, main routing table version 1  
  14. Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd  
  15. 192.168.1.197 4 100 12 20 1 0 0 00:15:43 0  
  16. 192.168.1.221 4 100 23 30 1 0 0 00:26:14 0  
  17. ________________________________________________________________________________  
  18. ! Telluride  
  19. Telluride#show ip bgp summary  
  20. BGP router identifier 192.168.1.206, local AS number 100  
  21. BGP table version is 1, main routing table version 1  
  22. Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd  
  23. 192.168.1.198 4 100 21 13 1 0 0 00:10:06 0  
  24. 192.168.1.205 4 400 4 5 1 0 0 00:01:06 0  
  25. 192.168.1.221 4 100 0 0 0 0 0 never Active 

从图2-12显示的三部分内容可以看出,除了Vail(192.168.1.221)与Telluride(192.168.1.197)之间的IBGP会话之外,其余的IBGP会话以及EBGP会话均已建立,Vail和Telluride均将对方显示为Active状态。快速浏览一遍Vail的路由表(见例2-13)即可发现原因:Vail没有去往Telluride的接口192.168.1.197的路由,虽然本例没有显示Telluride的路由器,但Telluride也没有去往Vail的接口192.168.1.221的路由。

例2-13 Vail没有去往192.168.1.197的路由,因而无法与Telluride建立IBGP会话

  1. Vail#show ip route  
  2. Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP  
  3. D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area  
  4. N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2  
  5. E1 - OSPF external type 1, E2 - OSPF external type 2  
  6. i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2  
  7. ia - IS-IS inter area, * - candidate default, U - per-user static route  
  8. o - ODR, P - periodic downloaded static route  
  9. Gateway of last resort is not set  
  10. 192.168.1.0/30 is subnetted, 2 subnets  
  11. C 192.168.1.224 is directly connected, Serial1/0  
  12. C 192.168.1.220 is directly connected, FastEthernet0/0  
  13. Vail# 

这个简单示例解释了部署IBGP时可能遇到的一个非常普遍的问题。与IGP不同,IBGP会话通常会跨越多个路由器跳,因而除非路由器知道如何到达对等体,否则无法与对等体建立IBGP会话。因此,在检测与排除处于Active状态(侦听已配置邻居)的IBGP会话故障时,首先就要查看这两个邻居的路由表,以确定它们是否知道如何到达对方。

虽然在AS100中配置IGP(本例使用的是OSPF)能够解决Vail与Telluride之间的IBGP会话问题,但实际上只要让这两个邻居的路由表中拥有它们所需的可达性信息即可。例2-14表明目前Vail的路由表中已经拥有了去往子网192.168.1.196以及为Telluride配置的邻居地址192.168.1.197的路由。从例2-15可以看出,AS100中的三台路由器都已经通过OSPF交换了内部可达性信息,因而所有的IBGP会话均处于Established状态。

例2-14 配置了IGP(本例为OSPF)之后,Vail就拥有了去往Telluride的路由

  1. Vail#show ip route  
  2. Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP  
  3. D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area  
  4. N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2  
  5. E1 - OSPF external type 1, E2 - OSPF external type 2  
  6. i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2  
  7. ia - IS-IS inter area, * - candidate default, U - per-user static route  
  8. o - ODR, P - periodic downloaded static route  
  9. Gateway of last resort is not set  
  10. 192.168.1.0/30 is subnetted, 3 subnets  
  11. C 192.168.1.224 is directly connected, Serial1/0  
  12. O 192.168.1.196 [110/2] via 192.168.1.222, 00:00:07, FastEthernet0/0  
  13. C 192.168.1.220 is directly connected, FastEthernet0/0  
  14. Vail# 

例2-15 Vail与Telluride目前都已经知道如何到达对方,因而两者之间的IBGP会话已处于Established状态

  1. Vail#show ip bgp summary  
  2. BGP router identifier 192.168.1.226, local AS number 100  
  3. BGP table version is 1, main routing table version 1  
  4. Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd  
  5. 192.168.1.197 4 100 4 4 1 0 0 00:00:05 0  
  6. 192.168.1.222 4 100 93 56 1 0 0 00:00:56 0  
  7. 192.168.1.225 4 200 131 142 1 0 0 00:00:05 0  
  8. _______________________________________________________________________________  
  9. Aspen#show ip bgp summary  
  10. BGP router identifier 192.168.1.222, local AS number 100  
  11. BGP table version is 1, main routing table version 1  
  12. Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd  
  13. 192.168.1.197 4 100 47 81 1 0 0 00:02:53 0  
  14. 192.168.1.221 4 100 57 95 1 0 0 00:03:31 0  
  15. _______________________________________________________________________________  
  16. Telluride#show ip bgp summary  
  17. BGP router identifier 192.168.1.206, local AS number 100  
  18. BGP table version is 1, main routing table version 1  
  19. Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd  
  20. 192.168.1.198 4 100 82 47 1 0 0 00:02:09 0  
  21. 192.168.1.205 4 400 84 73 1 0 0 00:01:03 0  
  22. 192.168.1.221 4 100 5 5 1 0 0 00:01:37 0 

喜欢的朋友可以添加我们的微信账号:

【责任编辑:book TEL:(010)68476606】

回书目   上一节   下一节
点赞 0
分享:
大家都在看
猜你喜欢

订阅专栏+更多

16招轻松掌握PPT技巧

16招轻松掌握PPT技巧

GET职场加薪技能
共16章 | 晒书包

289人订阅学习

20个局域网建设改造案例

20个局域网建设改造案例

网络搭建技巧
共20章 | 捷哥CCIE

645人订阅学习

WOT2019全球人工智能技术峰会

WOT2019全球人工智能技术峰会

通用技术、应用领域、企业赋能三大章节,13大技术专场,60+国内外一线人工智能精英大咖站台,分享人工智能的平台工具、算法模型、语音视觉等技术主题,助力人工智能落地。
共50章 | WOT峰会

0人订阅学习

读 书 +更多

网管员必读——网络基础(第2版)

本书是在《网管员必读—网络基础》(第1版)基础上修改而成的。全书共分9章,分别介绍计算机网络概述(修改)、数制(新增)、网络通信基础...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊

51CTO服务号

51CTO播客