BGP邻居DOWN问题定位指导
- 格式:docx
- 大小:114.85 KB
- 文档页数:7
网络路由技术中的BGP协议配置指南随着互联网的迅速发展,网络路由技术变得愈加重要。
作为广域网(WAN)中一种重要的路由协议,边界网关协议(BGP)扮演着关键的角色。
在本篇文章中,我们将探讨BGP协议的配置指南,以提供网络工程师和管理员在配置BGP时的一些建议和技巧。
一、理解BGP协议的基本原理BGP(Border Gateway Protocol)是一种自治系统(AS)间的路由协议,用于在互联网中交换路由信息。
它的主要功能是根据路由策略选择最佳路径,并确保互联网上的路由收敛。
在开始配置BGP之前,我们必须对BGP协议的基本原理有一定的了解。
BGP协议使用的是基于TCP的传输层协议,它依靠TCP的可靠性来传输路由信息。
BGP路由器通过邻居关系来交换路由信息,在建立邻居关系时,需要确定相互可达且互信的自治系统。
通过BGP可以实现路由策略的控制、分布式自治系统的互联和路由重分发等功能。
二、BGP协议的基本配置步骤1. 确定自治系统(AS)号码:在配置BGP之前,首先需要为网络分配一个唯一的AS号码。
AS号码是一个16位的整数,用于在互联网中识别特定网络。
通过唯一的AS号码,BGP可以将多个自治系统连接起来,实现路由信息的传递和路径选择。
2. 配置基本的BGP路由器参数:在BGP路由器上,需要配置一些基本的参数,包括AS号码、设备名称、路由器ID等。
这些参数的配置通常在全局配置模式下完成,可以使用命令行界面(CLI)或者图形用户界面(GUI)进行配置。
3. 配置BGP邻居关系:BGP路由器之间通过建立邻居关系交换路由信息。
在配置BGP邻居关系时,需要指定邻居的IP地址和远程AS 号码。
通过BGP邻居关系,路由器可以交换路由信息,并完成路由表的更新。
4. 配置路由策略:BGP协议允许网络管理员通过路由策略来控制路由的选择和传递。
在配置路由策略时,可以使用多种条件,如AS路径长度、前缀长度、路由属性等。
通过路由策略的配置,可以实现对流量的控制和分发。
路由器故障:IBGP邻居间路由环路IBGP邻居间路由环路的故障解决步骤如下:网络环境在下图的网络中,RouterA和RouterC建立EBGP邻居关系,并且通过network方式发布所有路由给RouterC。
RouterB和RouterD的配置与RouterA和RouterC完全对称。
当RouterA和RouterC的互连接口down掉后,在RouterC上发现去往RouterA的所有网段都不通。
图 IBGP邻居间路由环路故障分析步骤 1 在RouterC上执行display current-configuratiion命令查看配置。
RouterC通过route-policy将如下城域网的路由再通告给RR的时候强制指定其下一跳为虚拟下一跳地址202.105.0.5。
.ip route-static 202.105.0.5 255.255.255.255 61.142.140.166..ip route-static 202.105.0.5 255.255.255.255 61.142.140.170..ip route-static 202.105.0.5 255.255.255.255 61.145.84.94这三条静态路由的下一跳地址分别是RouterA和RouterC互连的三条链路接口地址(未指定出接口,RouterA上和RouterC互连的接口是POS1/0/0、POS2/0/0和POS2/1/0)。
在RouterC的ISIS中使用路由策略通过import方式引入这三条静态路由。
.ip ip-prefix virtualaddress index 10 permit 202.105.0.5 32..route-policy virtual-to-IS-IS permit node 10..if-match ip-prefix virtualaddress..IS-IS..cost-style wide-compatible..network-entity 86.xxxx.2020.9702.8090.00..import-route static cost 1 level-1-2 route-policy virtual-to-IS-IS..preference 110步骤 2 当RouterA和RouterC的互连接口down掉后,在RouterC上发现去往RouterA 的路由下一跳还是虚拟下一跳202.105.0.5,但是出接口却指向了RouterE。
MPLS MTU问题MPLS MTU每次想写的时候都觉得很麻烦,因为问题的原因只有一个,但是现象千差万别,各个产品实现还不一样,即使同一个产品不同板卡也有区别。
【问题描述】问题一:现象:如下网络结构,四个设备PE设备间,互为IBGP邻居。
相互间使用loopback口建立BGP peer。
S9505与SR6608A之间的BGP邻居不断UP/Down经排查,发现更改IGP路由优先级,使S9505与SR6608A间数据流优选NE40就不会出现问题,如果数据流优选SR8805就会出问题。
查看线路发现S8805的线路上还经过了两个交换机。
如下图:S9505和SR8805之间有一台3com S4500G全千兆交换机。
S8805和SR6608A之间有一台S3126T交换机。
并且中间的报文为二层互通,带VLAN tag。
问题二:现象:宁波江北政务网为MPLS L3 VPN环境,AR46作为纯P设备,下挂两台S85作为PE。
拓扑如下,一台S85下用户业务正常,另一台则邮件附件不能上传,部分业务不能使用。
两台S85配置基本相同AR46| || || |S85B--------S85A(业务不正常)经排查,发现业务正常S85接AR46主控板以太口,业务不正常S85接AR46 2GE单板中的一个千兆口。
AR46ERPU口 2GE口| || || |S85B--------S85A问题三:现象:SR6602A和C7509两个PE设备间IBGP邻居不断UP/Down。
经排查,发现SR6602A和C7509发现设备之间使用的使PPP MP进行的互连。
问题四:现象:三个PE设备AR46,AR46B下私网用户访问和AR46A,AR28互访正常。
AR46A和AR28之间的用户可以ping通,但无法互访。
经排查,发现AR46A到AR46B的数据,因为倒数第二跳的原因就一层标签。
而AR46A到AR28的数据有两层标签。
总结MPLS网络中这些不通的现象有一个共同点:能ping通,部分业务不通。
BGP邻居:分为EBGP和IBGP在位于不同自主系统的路由器之间运行,被称为EBGP邻居,运行EBGP的路由器通常彼此直接相连EBGP邻居是位于当前AS外部的路由器,在EBGP邻居之间没有运行IGP,两天路由器要交换BGP路由选择更新,双方的传输层协议TCP必须完成三次握手,才能建立BGP会话BGP建立邻居,根据更新源不同,可以选择不同建立邻居的形式:1.物理口2.环回口EBGP通常使用物理接口去建立邻居,因为,不可能知晓对端AS的内部路由,且,EBGP认为对等体间是直连,所以TTL=1。
但也会有特殊情况:两个AS之间使用多条链路去做冗余,如果使用物理口去建立邻居,无法达到冗余的效果,只能使用环回口去建立,然后写两条静态路由来告诉本端,对端的更新源在何处。
注意:将环回口宣告进BGP进程,依据路由表分析,看到对端环回口路由的下一跳,然后执行递归查找,找到两条静态路由,负载均衡,是基于逐个网络而非逐个目的地址的。
show ip bgp neighbor 输出:BGP neighbor is 12.0.0.2, remote AS 2, external linkBGP version 4, remote router ID 2.2.2.2BGP state = Established, up for 00:04:44Last read 00:00:43, last write 00:00:43, hold time is 180, keepalive interval is 60 seconds外部连接类型OPENSENT状态下使用hold time来协商一个最小的时间,1/3用来成为Keeplive时间。
如果为0,则不发送Keeplive。
Local host: 12.0.0.1, Local port: 179Foreign host: 12.0.0.2, Foreign port: 13242本端/对端的RID 使用的端口号,主动发起TCP连接的去访问对端的179端口。
网络路由技术中的BGP协议配置指南在网络通信时,路由协议的配置和优化对于网络的稳定性和性能至关重要。
其中,边界网关协议(BGP)是广泛应用的一种路由协议,用于在不同自治域之间进行路由选择和信息传递。
本文将介绍BGP协议的配置指南,帮助读者理解和应用BGP协议。
一、BGP协议的概述BGP(Border Gateway Protocol)是一种自治系统(AS)之间的外部路由协议,用于实现互联网中网络的互通性。
BGP协议基于TCP 连接进行邻居关系的建立和路由信息的交换,其设计目标是实现高度可靠的大规模网络互联。
BGP协议的特点之一是其分层结构,包括外部BGP(EBGP)和内部BGP(IBGP)。
EBGP用于在不同自治系统之间进行路由选择,而IBGP 用于自治系统内的路由传播。
BGP协议通过属性,如自治系统路径(AS Path)和前缀长度(Prefix Length),来选择最佳路径,并在自治系统之间传递路由信息。
二、BGP协议的配置步骤要成功配置BGP协议,以下是一些重要的步骤和注意事项:1. 检查网络拓扑:在配置BGP之前,应仔细检查网络拓扑,并确保各个路由器之间具有正确的物理和逻辑连接。
2. 配置自治系统号码(ASN):每个自治系统都有独特的ASN,用于标识和区分具体的网络。
在BGP配置中,应为自治系统指定正确的ASN。
3. 配置BGP邻居关系:BGP邻居关系是指两个BGP路由器之间建立的TCP连接。
通过配置邻居关系,可以实现BGP路由信息的交换。
在配置邻居关系时,需要指定对方路由器的IP地址以及自治系统号。
4. 配置BGP路由策略:BGP路由策略决定了路由选择的优先级和方式。
可以通过配置不同的属性和过滤器来定义路由策略,如设置权重、本地偏好、路由过滤等。
5. 配置路由器重分发:在BGP配置中,可能需要将其他路由协议(如OSPF或EIGRP)中的路由信息重分发到BGP中。
通过配置路由器重分发,可以实现不同协议之间的路由信息互通。
BGP路由协议故障排除排除 1.故障排除BGP邻居关系问题遵循:首先,应检查第1/2层,然后是IP连通性(第3层),TCP连接(第4层),最后是BGP配置。
(1)直接的外部BGP邻居没有初始化自治系统(AS)不会向AS发送或从AS接收任何IP前缀更新,除非邻居关系达到established 状态,该状态是BGP邻居建立的最后阶段。
当AS有一条单一的EBGP连接时,直到BGP完成了它的收发IP前缀操作后IP连通性才能发生。
原因:。
第2层宕掉了,阻止了与直接的EBGP邻居通信。
在BGP配置中有错误的邻居IP地址命令:show ip bgp summary和show ip bgp neighbors检查BGP邻居关系active状态表示邻居间没有发生成功的通信,并且邻居未形成。
用PING测试其连通性,失败则表示要修复第1/2层问题。
debug ip bgp能够帮助诊断问题(2)非直接的外部BGP邻居没有初始化有些情况下,EBGP邻居不是直连的。
BGP邻居关系能够建立在试图形成由一台或多台路由器分隔开的EBGP邻居关系的路由器之间。
这种邻居在IOS中被称为EBGP多跳。
当路由器之间存在多个接口并且需要在那些接口之间IP流量负载均衡时,通常在回环接口之间建立EBGP对等实体。
可能的原因:n 到非直连对等实体地址的路由从路由选择表中丢失了n BGP配置中缺少ebgp-multihop命令n 缺少update-source interface命令命令:show ip bgp summary 和show bgp neighborsrouter bgp 109neighbor x.x.x.x remote-as 110neighbor x.x.x.x ebgp-multihop 2neighbor x.x.x.x update-source loopback0(3)内部BGP邻居没有初始化原因:。
到非直接IBGP邻居的路由丢失了。
BGP邻居DOWN问题定位指导
本文档介绍BGP邻居down掉时的定位思路和定位步骤,以确认问题的归属和原因。
本文档适合于BGP开发与维护工程师。
1相关知识
1.1BGP协议简述
BGP(Border Gateway Protocol)是一种用于自治系统AS(Autonomous System)之间的动态路由协议。
BGP-4做为事实上的Internet外部路由协议标准,被广泛应用于ISP(Internet Service Provider)之间。
当BGP运行于同一自治系统内部时,被称为IBGP;当BGP运行于不同自治系统之间时,称为EBGP。
BGP邻居建立流程
BGP邻居建立过程共有六个状态,最后建立成功的状态就是Established状态。
如果当前状态不是Established,则可能是因为某种原因一直就没有到达Established状态,或在Established状态时,
因为某种原因,迁移到Idle状态。
1.2查看邻居状态和邻居状态变化日志命令基本原理
要确认当前邻居所处的状态,需要执行命令display bgp peer命令。
通过这个命令查看的BGP邻居如果一直没有达到Established状态,则说明出现了问题。
如果系统资源和配置没有问题,最常见的定位命令就是display bgp peer x.x.x.x log-info命令。
当bgp邻居变成Established或由Established 变成Idle时会记录下来,通过这条命令,我们可以查询bgp邻居Up/Down的记录和down原因。
2定位方法
2.1基本定位思路
1.对等体之间不能建立连接故障诊断流程
2.对等体之间建立连接后断开故障诊断流程图
定位步骤
举例:
在上述组网图中,采用了如下的方案:
●RTA属于AS域65008,RTB和RTC属于AS域65009,物理接口地址和Loopback0地址分别如图中所示
●
RTA和RTB建立一条EBGP连接,互相配置Loopback0地址为对等体的地址
●
RTB和RTC建立一条IBGP连接,互相配置POS直连接口地址为对等体的地址
在定位之前先把当前的系统资源查一下,确认系统资源没有不足。
主要看一下cpu和内存。
执行命令display health对等体无法建立故障处理步骤
2.2.1对等体无法建立故障处理步骤
步骤1:使用带源地址参数的ping命令检查路由是否正常。
命令格式为ping -a source-ip-address host,例如需要检查RTA和RTB 的Loopback接口之间的
路由是否正常,在RTB上使用如下命令:
ping -a 10.1.1.2 10.1.1.1
若有路由无法ping通,请参照《IP转发不通或丢包的定位指导》
步骤2:检查BGP配置是否配置了禁止TCP端口179的ACL。
使用display current-configuration命令或display acl all命令可以查看路由器是否配置了禁止TCP 端口179的ACL。
179端口为BGP对等体建立TCP连接的监听端口,如果被禁止,将无法建立连接TCP连接。
步骤3:如果使用Loopback接口建立对等体,是否配置了connect-interface。
使用display current-configuration configuration bgp命令可以查看BGP的配置信息。
如果配置不对,将无法建立TCP连接
步骤 4:检查本端指定的AS号是否和对端一致,如果配置不正确,请修改配置。
步骤 5:检查本端和对端的ruoter id是否为不一致,若一致请修改配置。
步骤6:TCP建立连接前提下,通过Debug信息提示检查BGP配置是否有误。
用debugging bgp ipv4-address all打开某个对等体的debug开关。
例如,RTB和RTA不能建立连接,可以在RTB上用debugging bgp 10.1.1.2 all命令打开BGP的debug开关,观察和RTB不能建立连接的原因。
●如果出现“Send/Receive NOTIFICATION Err/SubErr: 2/2 (OPEN Message Error/Bad Peer AS)”说明AS 配置有误,请在RTA和RTB上检查自己的AS是否和对端指定的一致
●如果出现“Send/Receive NOTIFICATION Err/SubErr: 2/3 (OPEN Message Error/Bad BGP Identifier)”说明Router-ID配置有误,请检查RTA和RTB上Router-ID是否错误地配置为相同值
对等体断开故障处理步骤。