关注海外服务器
VPS,云主机,虚拟主机

什么是BGP,商家宣传的BGP多线是什么意思?

BGP(英文全写:Border Gateway Protocol)翻译成中文的意思是:边界网关协议,是用来连接互联网上的独立系统的路由选择协议。它是Internet工程任务组制定的一个加强的、完善的、可伸缩的协议。

BGP主要用于互联网AS(自治系统)之间的互联,BGP的最主要功能在于控制路由的传播和选择最好的路由。中国联通 、中国电信、中国铁通和一些大的民营IDC运营商都具有AS号,全国各大网络运营商多数都是通过BGP协议与自身的AS号来实现多线互联的。使用此方案来实现多线路互联,IDC需要在CNNIC(中国互联网信息中心)或APNIC(亚太网络信息中心)申请自己的IP地址段和AS号,然后通过BGP协议将此段IP地址广播到其它的网络运营商的网络中。使用BGP协议互联后,网络运营商的所有骨干路 由设备将会判断到IDC机房IP段的最佳路由,以保证不同网络运营商用户的高速访问。

什么是BGP,商家宣传的BGP多线是什么意思?-1

什么是BGP,商家宣传的BGP多线是什么意思?-2

采用BGP方案来实现双线路互联或多线路互联的机房,我们称为BGP机房。

亿速云在为用户提供“云服务器、高防服务器、香港服务器”的BGP高防机房,采用了“BGP多路由协议”,接入电信、联通、网通等多线路,可智能监控网络状况,并自动切换到最佳路由,从而始终保证稳定快速的访问。

什么是BGP,商家宣传的BGP多线是什么意思?-3

使用BGP协议方案的3个优点:

1、服务器只需要设置一个IP地址,最佳访问路由是由网络上的骨干路由器根据路由跳数与其它技术指标来确定的,不会占用服务器的任何系统资源。服务器的上行路由与下行路由都能选择最优的路径,所以能真正实现高速的单IP双线访问。

2、由于BGP协议本身具有冗余备份、消除环路的特点,所以当IDC服务商有多条BGP互联线路时可以实现路由的相互备份,在一条线路出现故障时路由会自动切换到其它线路。

3、使用BGP协议还可以使网络具有很强的扩展性可以将IDC网络与其他运营商互联,轻松实现单IP多线路,做到所有互联运营商的用户访问都很快。这个是双IP双线无法比拟的。

边界网关协议BGP:是一款公有标准的外部网关协议(EGP),运行在多个AS之间,提供路由信息交换、控制路由传播和选择最优路由;基于路径属性/矢量来衡量每一条路由的优先级,也被称为高级距离矢量协议和路径矢量协议。

什么是BGP,商家宣传的BGP多线是什么意思?-4

版本:EGP(有类)、BGP v4(当前使用)、BGP v4+(MP-BGP,支持address family)

使用场景:有多条出口路径连接外网(多宿主),需要进行路由选路;一个AS可以作为传输AS时;需要在路由器上面做路由策略;路由器的硬件性能非常高。

工作原理:当两台路由器之间通过静态路由或者IGP实现连通后;就会尝试跟对方建立TCP连接;TCP连接建立起来后,两台路由器先通过交互open报文建立起邻居关系形成邻居表;然后邻居之间通过交互update报文同步各自的路由信息并加入BGP表;最后路由器根据十三条选路原则将一条最优路径加入路由表

建立连接的两台路由器互为对等体(PEER),为了确保两边设备的BGP进程都正常运行,两台路由器之间通过周期性的发送Keepalive消息,维护邻居关系状态。

1、 路由更新机制:采用增量更新机制同时支持主动请求邻居发送更新。

2、 可靠的传输机制:使用TCP封装,提供可靠传输。

3、 拥有丰富的路径属性,支持路由过滤和路由策略,路径操控灵活。

4、 支持VLSM、路由汇总和路由聚合。

5、 对每个AS的可管理性要求较低。

6、 路由承载数量;算法理论上支持无限的路由条目空间;目前在运行的全网路由条目在15万条左右。

7、 可扩展性:支持TLV和address family,可扩展性强。

AS:自制系统,由同一个管理机构管理,使用统一选路策略的一些路由器的集合。

AS号:每个自治系统都有唯一的AS编号(区别于园区网),AS编号是由IANA分配的;各国运营商和大型的跨国集团都需要购买AS号;早期的AS号一共有16位,取值范围1-65535(0不可用);其中1–64511为公有AS号,64512–65535为私有AS号;现已经扩展到了32位,取值范围0-42亿。

注:cidr.report.org(AS号使用查询网站,电信4134;联通9249)

路由器ID:Router ID是一个32位的值(使用点分十进制,不要求PING可达),唯一标识了一个自治系统内的路由器;手工配置为优,防止Router ID因为接口地址的变化而改变导致网络频繁的翻动;其次使用逻辑接口中最大的IP地址作为Router ID;最后使用物理接口的最大IP地址作为Router ID。

注:BGP的router-id建议和IGP使用的router-id保持一致。

报头封装:Layer 2/IPv4/TCP/BGP/FCS(TCP源端口号随机,目的端口号179)

主动模式active:首先指定neighbor的主动发送目的端口号179给对端

被动模式passive:主动连接端端口号随机,被动连接端口号179

什么是BGP,商家宣传的BGP多线是什么意思?-5

Marker(标记):16字节,固定为1。

Length(长度):两字节无符号整数,指定了消息的全长,包括头部。

Type(类型):1 字节,指示报文类型,如OPEN、UPDATE报文等 。

1 – Open

2 – Update

3 – Notification

4 – Keepalive

X – Route-refresh

报文类型:

1、Open:负责和对等体建立邻居关系。

2、KeepAlive:在对等体之间周期性地发送,实时维护邻居关系。

3、Update:被用来在BGP对等体之间传递可达的路由信息及其各种路由属性。

4、Notification:当BGP Speaker检测到错误的时候,就发送该消息给对等体。

5、Route-refresh:用来通知对等体自己支持路由刷新能力。

报文封装:Open报文(只发送一次)

什么是BGP,商家宣传的BGP多线是什么意思?-6

1、Version:BGP的版本号;对于BGPv4来说,其值为4。

2、My Autonomous System:本地AS编号,通过比较两端的AS编号可以确定是EBGP连接还是IBGP连接。

3、Hold Time:在建立对等体关系时两端要协商Hold time,并保持一致。如果两端所配置的Hold time时间不同,则BGP会选择较小的值作为协商的结果。如果在这个时间内未收到对端发来的Keepalive消息,则认为BGP连接中断。

4、BGP Identifier:BGP路由器的Router ID,用来识别BGP路由器。

5、Opt Parm Le:可选参数的长度。如果为0则没有可选参数。

6、Optional Parameters:是一个可选参数用于BGP验证或多协议扩等功能。

报文封装:KeepAlive报文

KeepAlive 报文的组成只包括一个BGP报头;缺省情况下,发送KeepAlive 的时间间隔为 60 秒,Hold Time是180秒。每次从邻居处接收到KeepAlive 报文将重置Hold Time定时器,如果Hold Time定时器超时,就认为对等体Down掉。

报文封装:Update报文

什么是BGP,商家宣传的BGP多线是什么意思?-7

1、Withdrawn Routes Length :撤销路由长度,表示Withdrawn Routes字段的数据长度。如果Withdrawn Routes Length字段数值为0,则表示Withdrawn Routes字段没有任何数据,在update消息中不会被显示。

2、Withdrawn Routes :撤销路由;该字段包括一系列的IP地址前缀信息,以<length, prefix>的格式来表示。 用<19,198.18.160.0>表示

3、Path Attribute Length :路由属性长度,表示Path Attribute字段的数据长度;如果Path Attribute Length数值为0,则表示Path Attribute字段没有任何数据,在UPDATE消息中不会被显示。

4、Path Attributes :路径属性。每个路径属性都是由三元组所组成:<属性类型attribute type, 属性长度attribute length, 属性值attribute value>。

5、Network Layer Reachability Information :网络层可达性信息;包括一系列的IP地址前缀(路由本身)。

注:最小update消息的长度为23个字节(19字节的报文头+2字节的撤消路由长度+2字节的路径属性长度),这样的update消息被称之为End-of-RIB。

一条update消息可以发布多条具有相同路由属性的可达路由,这些路由可共享一组路由属性。所有包含在一个给定的Update消息里的路由属性适用于update消息中的NLRI字段里的所有目的地(用IP前缀表示)。

一条UPDATE消息可以撤销多条不可达路由。每一个路由通过目的地(用IP前缀表示),清楚的定义了BGP Speaker之间先前通告过的路由。

一条UPDATE消息可以只用于撤销路由,这样就不需要包括路径属性或者网络可达信息。相反,也可以只用于通告可达路由,就不需要携带Withdrawn Routes。报文封装:Notification报文

什么是BGP,商家宣传的BGP多线是什么意思?-8

Error code:错误码,表示报头内容有问题,每个不同的错误都使用唯一的代码表示,而每一个错误码都可以拥有一个或多个错误子码,但如果某些错误码并不存在错误子码的话,则该错误子码字段以全0表示。

Error subcode:错误子代码,详细内容参照TCP/IP协议卷一。

报文封装:Route-refresh报文

什么是BGP,商家宣传的BGP多线是什么意思?-9

1、AFI(Address Family Identifier):地址族标识符(2字节)。

2、Res(Reserved field):保留区域(1字节),发送方应将其设置为0,接收方应当忽略该区域的信息。

3、SAFI(Subsequent Address Family Identifier):子地址族标识符(8字节);在所有BGP路由器使能Route-refresh能力的情况下,如果BGP的入口路由策略发生了变化,本地BGP路由器会向对等体发布Route-refresh消息,收到此消息的对等体会将其路由信息重新发给本地BGP路由器。这样,可以在不中断BGP连接的情况下,对BGP路由表进行动态刷新,并应用新的路由策略。

BGP状态机:

什么是BGP,商家宣传的BGP多线是什么意思?-10

1、Idle:BGP连接初始状态;在空闲状态,BGP在等待一个启动事件(neighbor 邻居),BGP初始化资源,复位连接重试计时器(Connect-Retry),发起一条TCP连接,同时转入Connect(连接)状态。

2、Connect:BGP发起第一个TCP连接,如果连接重试计时器超时,就重新发起TCP连接,并继续保持在Connect状态,如果TCP连接成功,就转入OpenSent状态,如果TCP连接失败,就转入Active状态。

3、Active: BGP总是在试图建立TCP连接,如果连接重试计时器(Connect-Retry)超时,就退回到Connect状态,如果TCP连接成功,就转入OpenSent状态,如果TCP连接失败,就继续保持在Active状态,并继续发起TCP连接。

4、OpenSent:TCP连接已经建立,BGP也已经发送了第一个Open报文,剩下的工作,BGP就在等待其对等体发送Open报文。并对收到的Open报文进行正确性检查,如果有错误,系统就会发送一条出错通知消息并退回到Idle状态,如果没有错误,BGP就开始发送Keepalive报文并复位Keepalive计时器,开始计时。同时转入OpenConfirm状态。

5、OpenConfirm:BGP等待一个Keepalive报文同时复位保持计时器,如果收到了一个Keepalive报文,就转入Established阶段,BGP邻居关系就建立起来了。

6、 Established:BGP邻居关系已经建立,这时,BGP将和它的邻居们交换Update报文,同时复位保持计时器。

BGP邻居建立需要满足的条件:

1、IGP路由不通导致BGP报文转发不可达。

2、ACL过滤了TCP的179端口导致TCP三次握手不能正常建立。

3、邻居的Router ID冲突。

4、未指定该邻居、指定的更新源地址和AS号错误。

5、两端的地址簇不匹配。

BGP路由信息处理过程:

什么是BGP,商家宣传的BGP多线是什么意思?-11

1、邻居表:对等体邻居清单列表。

2、Adj-RIB-In:对等体宣告给本地Speaker的未处理的路由信息库。

3、BGP表 (Loc-RIB):BGP路由信息库,包括本地BGP Speaker选择的路由信息。

4、IP路由表 (IP-RIB):全局路由信息库,包括所有IP路由信息。

5、Adj-RIB-Out:本地Speaker宣告给指定对等体的路由信息库。

什么是BGP,商家宣传的BGP多线是什么意思?-12

外部BGP:EBGP运行在不同的AS之间,既表示路由属性,也表示两台路由器之间的邻接关系,管理距离为20;EBGP之间建议直连建立邻居(TTL值默认为1)

当两台EBGP路由器之间存在冗余链路时,可以用环回口来建立邻居,保证邻居关系的稳定性,此时需要使用静态路由让两端的更新源地址可达,另外开启EBGP的多跳属性(2-255)。

EBGP的水平分割机制:EBGP路由可以发送给所有的EBGP邻居,也可以发送给所有的IBGP邻居;当路由器接收到邻居发送过来的EBGP路由,通过检查路由中AS-path属性是否包含了自身的AS号,不包含就可以接受,包含了就直接丢弃,以防止环路产生。

内部BGP:IBGP运行在相同的AS中,当一个AS有多个外网出口且多个外网出口不直连时,需要让这些外网出口路由器之间建立IBGP邻居(不一定物理直连);既表示路由属性,也表示两台路由器之间的邻接关系,管理距离200;TTL值默认为255,当两台IBGP路由器之间存在冗余链路时,建议用环回口来建立邻居,保证邻居关系的稳定性;在建立IBGP邻居时,可以设置路由反射器/BGP联邦,让所有边界路由器和路由反射器建立邻居关系,可以优化路径连接。

IBGP的水平分割机制:当一台路由器接收到IBGP路由时,是不能将其发送给其他的IBGP邻居,只能发送给EBGP邻居;而路由反射器会打破水平分割机制,可以把IBGP路由反射给其他IBGP邻居。

路由反射器RR:router reflector,使用在IBGP环境中,用来打破IBGP的水平分割机制,能够把收到的IBGP路由反射给其他IBGP邻居,让IBGP路由能够在一个AS内正常传递;相比较IBGP间全互联方案,更具有扩展性;RR使用的是cluster体系,包含server、client和non-client路由器;且路由反射器是不会修改路由的下一跳、MED、AS-path等属性。

Server路由器通过client路由器收到的IBGP路由,该路由能够反射给所有的client邻居和non-client邻居;

Server路由器通过non-client由器收到的IBGP路由,该路由只能够反射给所有的client邻居,不能反射给non-client邻居;

部署原则:让一级RR和二级RR建立IBGP邻居;二级RR和其他所有普通的BGP路由器建立IBGP邻居。

防环机制1:集群列表cluster-list属性,由Server路由器产生,默认使用router-id来做cluster-id(可手工指定),Server路由器会先将自身router-id放入cluster-list字段中,邻居路由器接收到反射的IBGP路由时,会查看路由的cluster-list中是否包含自身的cluster-id,不包含就可以正常接收;该属性只在一个AS范围内有效。

防环机制2:起源标识符originator-id属性,由Server路由器产生,默认使用router-id来做originator-id(可手工指定),Server路由器会先将发送路由的邻居router-id放入originator-id字段中,下游server路由器接收到反射的IBGP路由时,会查看路由的originator-id中是否是自身的router-id,不是就可以正常接收;originator-id属性只在一个cluster范围内有效。

注:在复杂的环境中,RR需要部署很多台,配置的工作量也是相当大的。

BGP的联邦:使用在IBGP环境中,配合路由反射器一起使用,可以减少RR的数量和配置量;通过把一个大的主AS划分成多个子AS,子AS之间使用子AS号建立EBGP邻居,邻居之间传递的是EBGP路由,这样就不用增加多台路由反射器就可以在主AS之间正常发送EBGP路由;子AS号一般使用私有AS号且只在一个AS范围内有效,当路由传递出主AS后,路由器就会将子AS号改变为主AS号;不会影响路由选路;路由的下一跳、本地优先权等属性不发生改变。

BGP的路由传递:发送

1.1、通过network或重分发将IGP路由转换并通告给BGP,BGP通过汇总或聚合产生新的BGP路由并加入自身的BGP表,此时该路由可能携带两种下一跳属性;

1.2、直连路由和静态路由(不包含下一跳)的下一跳属性默认为0.0.0.0;该路由可以发送给所有的EBGP和IBGP邻居。

1.3、当原IGP路由已经包含了下一跳时,BGP会继承原IGP的路由下一跳;该路由可以发送给除了下一跳地址对应的路由器以外的所有EBGP和IBGP邻居。

注:在始发路由器上发送BGP路由时,路由器会强制性将路由下一跳改写成自身的更新源地址(直连接口/环回口地址),然后发送给所有EBGP和IBGP邻居。

BGP的路由传递:接收

1.1、当路由器接收到一条EBGP路由时,先检查路由的AS-pah属性,如果没有包含自身的AS号,则可以接收并发送给所有EBGP和IBGP邻居。

2.1、当路由器接收到一条IBGP路由时,先检查路由的下一跳是否可达且是否满足同步原则,满足则可以接收并发送给其他EBGP邻居,不能发送给IBGP邻居。

2.2、下一跳可达:路由器在AS之间发送EBGP路由时,会先将路由的下一跳改写成自身的更新源地址(直连接口/环回口地址);路由器在AS内将路由发送给IBGP邻居时,默认不会修改路由的下一跳,这样会导致IBGP邻居接收到该路由时,该路由的更新源地址往往是不可达的。

解决方案:手工开启BGP的next-hop-self特性,这样路由器在AS内将路由发送给IBGP邻居时,会强制性将路由的下一跳改写成自身的更新源地址(直连接口/环回口地址)。

2.3、同步原则:路由器接收到IBGP路由时,会检查该路由是否也可以通过IGP接收到,可以则接收并转发给EBGP邻居;否则就丢包了,用来防止BGP数据层面的路由黑洞;12.3以后的版本默认关闭该特性;可以优化的解决方案如下:

解决方案1:AS内的路由器之间实现全互联(成本太大,不可用)。

解决方案2:AS内所有路由器都运行BGP,建立BGP的全互联邻居关系(不可用)。

解决方案3:边界路由器将BGP路由重分发进IGP(BGP路由太多,不好操控)。

解决方案4:边界路由器之间建立GRE tunnel(点到点)或DMVPN(点到多点)。

解决方案5:使用多协议标签交换技术MPLS(公有协议,配置简单)。

路径属性和路径矢量:

公认属性well-known:由IETF规定所有厂商都必须支持的

–公认强制属性mandatory:

1、 AS路径/AS-path:描述一条BGP路由从产生达到目的地一共经过了多少个AS,当路由器收到一条EBGP路由时,就会检查该路由的AS-path是否包含自身的AS号,不包含就可以接收,主要用于防止路由环路;AS-path默认值为10,在路由表中,新添加的AS-path在左边,旧添加的AS-path在右边。

注:在多个私有AS互联的环境中,使用MPLS-VPN的技术:AS over ride(PE-CE)和allowas-in(CE-PE)可以设置路由表中出现在本地AS的次数上限。

2、下一跳属性/next-hop:

2.1、在始发路由器上发送BGP路由时,路由器会强制性将路由下一跳改写成自身的更新源地址(直连接口/环回口地址),然后发送给所有EBGP和IBGP邻居。

2.2、从EBGP邻居学到的一条路由,传递给自己的EBGP邻居时,下一跳一定会改变为自身连接邻居的更新源地址。

2.3、从EBGP邻居学到的一条路由,传递给自己的IBGP邻居时,默认下一跳不变,仍为上游EBGP邻居的更新源地址。

2.4、从IBGP邻居学到的一条路由,传递给自己的EBGP邻居时,下一跳改变为自身连接邻居的更新源地址。

2.5、在MA网络中,如果去往上游邻居的下一跳地址和去往下游邻居的下一跳地址在同一个子网段内,在传递路由时,会将下一跳地址改写为去往上游邻居的下一跳地址(特例,现网环境中不存在)。

2.6、路由反射器在反射路由时,不会修改路由的下一跳属性。

3、起源属性/origin:描述是通过什么方式将IGP协议通告进BGP协议中的;

3.1、”i” 表示IGP,是通过network或路由聚合通告的。

3.2、”e” 表示EGP,是通过EGP协议重分发通告的。

3.3、”?”表示incomplete,是通过除EGP以外的协议重分发通告的。

优先级:”i”>”e”>”?”

–公认自由属性discretionary:

1、 本地优先权/local preference:专门用来操控路由选路的,影响一条路由去往外网应该从哪个出口出去;默认值100,EBGP路由默认不携带该属性,IBGP路由会携带该属性;

2、 原子聚合属性/atomic aggregate:描述一条BGP路由是否是聚合路由;

可选属性optional:厂家私有添加的属性

-可选传递属性transitive:对本地不能识别的属性仍会继续转发给邻居

—完整属性complete:发送路由时不对路由做任何修改

—不完整属性incomplete/partial:发送路由时告诉下游路由器自身不能识别

1、 聚合者/aggregator:使用聚合路由的路由器Router ID告诉下游接收者该路由是由哪一台路由器聚合的

2、 团体属性/community:默认各个厂商不开启该属性,需手工添加

2.1、标准团体属性/Standard,功能类似于”TAG”,表示xxyy或xx:yy

no-advertise:邻居接收该属性路由,只会加入本地路由表不会转发给邻居

No-export:邻居接收该属性路由,可以发送给IBGP邻居和联邦内的EBGP邻居

Local-AS:邻居接收该属性路由,只会发送给IBGP邻居

注:路由发送时,默认不携带该属性,需每台路由器手工指定send-community

2.2、扩展团体属性/extended,用于MPLS-VPN环境中的”RT”

-可选非传递属地non-transitive:对本地不能识别的属性直接丢弃

1、 权重属性/weight:功能类似于IGP中的管理距离,在路由发送时会将该属性值置为0,只有在本地接收时才会携带该属性加入路由表;取值范围0-65535,本地产生的路由weight默认值32768;非本地产生的路由weight默认值0

3、 多出口鉴别器/MED:专门用来操控路由选路的,影响一条外网路由应该从哪个入口进入;当前所有厂商都能识别;默认值0(最优先),发送EBGP路由会将MED置为0,发送IBGP路由时不会修改该MED值;

BGP的十三条选路原则和路由操控:

1、 比较权重属性weight的大小,以大为优

注:路由操控时方向将权重属性值改,一般不建议修改

2、 比较本地优先权local preference的大小,以大为优(*)

注:路由操控时/出方向改,不建议边界路由器之间建立IBGP邻居

3、 本地始发路由优于外部传递的IBGP路由和EBGP路由

4、 比较AS-path属性的长短,以短为优

注:进行路由操控时入/出方向修改,建议添加多条AS-path而不修改AS-path属性;优选添加自身的AS号,其次添加私有AS号;不建议修改

5、 比较路由起源属性代码,”i”>”e”>”?”

注:不建议修改

6、 比较路由的MED属性的大小,以小为优(*)

注:进行路由操控时在方向改,只有通过相同邻居AS路由器收到相同的BGP路由时才会比较MED值,开启BGP always compare med可以无视该条件;

当邻居路由器发送的路由没有携带MED值,开启BGP bestpath med missing as worst,路由器就会给该条路由设置一个最大度量值(42亿)。

7、 EBGP路由优于IBGP路由,无视管理距离

8、 比较更新源地址到达本地的IGP度量值大小,以小为优

9、 如果存在多条等价路径,就可以加入路由表进行负载均衡

注:前提是开启了负载均衡的功能,参加负载均衡的路由要么都是汇总路由要么都不是汇总路由(汇总路由优于非汇总路由)且路由的AS-path属性完全一致。

10、 当部署了路由反射器RR,比较集群列表cluster-list的长度,以短为优

11、 当部署了路由反射器RR,比较originator-id的大小,以小为优

12、 比较邻居路由器的BGP路由器ID的大小,以小为优

13、 比较邻居路由器的更新源地址的大小,以小为优

前提条件:只有有资格打”>”的路由,如EBGP路由和部分IBGP路由(满足下一跳可达和同步原则)才可以进行路由选路;利用十三条选路原则一定会选出一条最优路径,BGP默认不支持负载均衡,需手工开启,

R1(router-config)#maximum-paths(1-32)ibgp(1-32)

BGP的特性:

BGP本身不会产生任何路由,只有当把IGP路由、静态或直连路由通过network通告转换或者重分发进BGP,然后由BGP汇总或聚合才能产生新的BGP路由;

1.1、Network:支持精确network和主类network,一般使用前者,通告进BGP的路由会继承原IGP路由的下一跳地址,用MED属性继承原有路由的metric值。

1.2、重分发:重分发进来的IGP路由,BGP会继承原有路由的下一跳地址,也会用MED属性继承原有路由的metric值。

注:将BGP重分发进IGP时,默认只有EBGP路由和自身产生BGP路由能够重分发进入,IBGP路由则不可以被重分发进入。

BGP的重置:修改路由策略时、路由发生变化时

2.1、软重置/软清:请求对方将我需要的路由进行重新发送或者针对邻居请求的路由重新发送,建议使用。

Router# clear ip bgp * soft (in/out)

Router# clear bgp ipv4 unnicast * soft (in/out)

2.2、硬重置/硬清:重新建立TCP的三次握手和邻居,重新发送所有路由;慎重操作!!!

Router# clear ip bgp *(1.1.1.1)/clear bgp ipv4 unnicast *(1.1.1.1)

Router#show bgp ipv4 unnicast neighbor 1.1.1.1 advertised-routes(发送)

Router#show bgp ipv4 unnicast neighbor 1.1.1.1 received-routes(接收)

注:思科默认不缓存从邻居接收到的路由,需要使用命令设置neighbor 1.1.1.1 soft-reconfiguration inbound

自动汇总/聚合:auto-summary

3.1、Network主类路由时,当开启了自动汇总,如果本地路由表中是有对应的明细路由,会将明细路由抑制,产生汇总路由,路由的下一跳和MED属性为全0

3.2、路由重分发时,当开启了自动汇总,一律会将该路由汇总成主类路由,路由的下一跳和MED属性全为0

注:当通告超网路由时,需要本地路由表中存在该路由;自动汇总不会对精确network产生影响;由于自动汇总容易产生路由黑洞,12.X以后的版本默认关闭。

手工汇总/聚合:summary

3.3、Router(config)#ip route 192.168.0.0 255.255.254.0 null 0

Router(config)#network 192.168.0.0 mask 255.255.254.0

注:该汇总路由由于缺少原子聚合属性,后续不好再使用路由策略。

3.4、Router(config)#network 192.168.0.0 mask 255.255.255.0

Router(config)#network 192.168.1.0 mask 255.255.255.0

Router(router-config)#aggregate-address 192.168.0.0 255.255.254.0

注:一个network只能通告一条路由;建议在始发路由器的BGP进程中汇总:默认既会发送明细路由,也会发送汇总路由且汇总路由携带原子聚合属性,后面接:

Summary-only:抑制明细路由,发送汇总路由。

Route-map:设置汇总路由携带的属性。

Attribute-map:功能等同于route-map,设置汇总路由携带的属性。

Advertise-map:结合route-map,当明细路由携带相关的属性时才可以被汇总。

Suppress-map:结合route-map,发送汇总路由时,抑制部分不需要发送的明细路由,发送部分需要的明细路由。

AS-set:当在非始发路由器上进行路由汇总时,默认汇总路由不会继承原路由的下一跳、MED和AS-path属性,后面加AS-set参数,非始发路由器产生的汇总路由就可以携带原路由的AS-path属性,用来防止超长距离的路由黑洞。

条件路由注入:从接收到的汇总路由中在本地注入其中的部分明细路由;

Bgp inject-map route-map(name)exist-map route-map(name)后面加[copy-attributes]表示明细路由会携带汇总路由的属性。

4.1、认证:支持MD5密文认证,在对等体两端配置认证

Router(config-router)#neighbor 12.1.1.2 password cisco

5.1、BGP的路由标识:

什么是BGP,商家宣传的BGP多线是什么意思?-13

6.1、BGP路由重分发

将BGP路由重分发进其他路由协议,默认只能将EBGP路由重分发其他协议,IBGP路由不能重分发进其他协议,需要在BGP进程工修改参数来将IBGP路由重分发进其他协议:bgp redistribute-internal

7.1、BGP 的backdoor特性

8.1、BGP的AS号伪装

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址