1.BGP的基本配置
1.EBGP对等体关系直连建邻
启动BGP进程——后面的数字不是进程号,而是配置路由器所在AS的AS号
配置RID
手工配置对等体关系
查看BGP邻居表
2.IBGP对等体关系之间的环回建邻
由于IBGP邻居处于同一个AS中,一般情况下,一个AS中存在大量的备份路径,若使用物理接口建立邻居关系,将浪费这些备份或者负载均衡资源,故建议使用环回接口来进行IBGP对等体关系的建邻
注意:在使用环回接口建立对等体关系时,一定要修改发送接口。
3.EBGP对等体关系之间的非直连建邻
注意:在EBGP对等体关系之间,一般是不具备非直连建邻的路由基础,所以,需要先保证地址可达才行。
因为EBGP对等体之间一般是直连建邻,所以,数据包中的TTL值设置为1,要想非直连建邻,则需要将这个值改大。
2.发布路由
1.network——在BGP中只能用来发布路由条目信息
注意:只要是路由表中存在的路由条目信息,BGP都可以通过Network来进行发送
目标网段信息及掩码必须和路由表中的完全一致才行
2.查看BGP表
状态码
*——代表可用——设备每收到一条路由信息,都会检查下一跳的可达性。即根据下一跳在路由表中递归查询,只要可达,则该路由信息可用
>——代表优选——当收到到达相同网段存在多条路由信息时,BGP将在其中根据属性优选出一条加载到路由表中。这条优选路由将赋予这个标记
注意:只有一条路由条目是可用且优选的,他才能够被加到路由表中,也能够被传递给其他的BGP对等体。
通过EBGP对等体学到的BGP路由信息,其标记为EBGP,默认的优先级为255
i——状态码i——代表BGP路由信息是从自己IBGP对等体处学到的
因为在AS内部存在AS-BY-AS规则,所以,默认情况下传递的属性信息是一致的,因为这个下一跳也属于路径属性之一,默认情况下也不会传递,则将可能导致路由可用性效验失败
通过IBGP对等体学到的BGP路由信息,其标记为EBGP,默认的优先级为255
s——suppressed——抑制——抑制路由条目的传递
Network——目标网段信息及掩码信息
NextHop——BGP的一个路径属性——谁发的路由信息,下一跳就是谁,如果是自己发的,则下一跳为0.0.0.0
路由表中的NextHop直接使用的是BGP属性中的下一跳,因此之前进行过可用性校验,所以,可以保证能够递归查找到这个下一跳。
OGN——起源码——i,e,?——用来标识路由条目的起源
i——代表该路由信息起源于IGP协议(不局限于IGP协议,包括静态,直连),代表该路由条目起源于AS内部——通过network发布出来的路由信息其起源码为i
e——代表该路由信息起源于EGP协议——EGP指的是BGP之前使用的外部网关协议
?——通过除了以上两种方式学习到的路由——重发布导入的路由起源码都是?
3.BGP的路由聚合
1,自动聚合——1.该方法只能针对重发布发布的路由信息生效。2.自动聚合的路由只能按照主类进行聚合,将造成巨大的路由黑洞,所以,华为设备BGP的自动聚合功能是默认关闭的
1.抓取流量
2.做路由策略
3.在重发布过程中调用路由策略
通过自动聚合会发布一条新的汇总路由,他是不携带子网掩码的,因为按照主类汇总,则子网掩码取主类默认值。而且通过聚合发布的路由信息其下一跳属性为127.0.0.1
注意:自动聚合之后,发布的汇总路由信息将在本地路由表中产生一条指向汇总的空接口,自动防环。
2,手工聚合——因为自动聚合存在两个缺陷,所以,如果需要对汇总进行精准把控时,手工聚合将是更理想的方案
手工聚合后发布的路由条目将携带掩码信息,并且下一跳也是指向127.0.0.1,则其也会自动生成一条到达汇总网段指向空接口的路由进行防环。
手工聚合的问题:1,发布聚合路由的情况下,不会抑制明细路由,导致汇总操作并没有减少路由条目数量,反而增加了。
2,在进行汇总的时候,发布的汇总路由不会继承明细路由的属性,尤其是AS_PATH,则将导致汇总路由部分属性缺失,甚至可能出现环路。
为了避免以上两个问题的产生,我们必须在配置过程中增加命令来完成。
在发布汇总路由条目的同时将抑制所有的明细路由
但是,因为BGP协议的一些特殊性,我们往往不能将其所有的明细路由全部抑制,只能抑制部分的路由信息——所以我们需要使用到抑制策略(suppressed-policy)
1.抓取流量,使用前缀列表
2.使用路由策略匹配流量
3.使用抑制策略调用路由策略
对于第二个问题,我们专门设计了一个AS_SET关键字,如果在配置命令的时候,将这个关键字激活,则BGP在汇总路由时,将携带上明细的AS_PATH属性,来进行防环。
如果明细路由携带的AS_PATH属性不一样,则在激活了AS_SET属性后,汇总路由将会把明细路由AS号都携带上并且用大括号括起来,之后,在进行防环的时候,里面所有AS号都将生效,都不能回传。但是,在使用AS_PATH属性进行选路的时候,当做一个AS来看待。
因为聚合后的路由信息存在属性丢失的问题,所以,这样的汇总路由需要格外的关注。为此,我们为BGP专门引入了两个属性——ATOMIC_AGGREGATE,AGGREGATOR
ATOMIC_AGGREGATE——纯粹预警属性——只有在抑制全部明细路由时才会携带
AGGREGATOR——将携带汇总者的RID以及其所在的AS号
4.路由反射器
Router Refleor——路由反射器——RR——我们可以通过配置,将某些设备在一定的条件下设置成为路由反射器,之后,该设备将可以反射所学习到的BGP路由信息
我们在指定一台路由器成为路由反射器(RR)的同时,必须在他的IBGP对等体关系中选择一个或者多个设备成为他的客户(client),RR和客户之间所构成的系统我们称为反射簇(Cluster)。每一个反射簇都将使用RR的RID作为簇ID。其余没有成为RR客户的IBGP对等体关系,我们称其为非客户。
路由反射器的反射规则:
1.当路由反射器从自己的客户处学习到一条路由,则他会把这条路由信息反射给自己的所有客户以及非客户。
2.如果路由反射器从自己的非客户处学习到一条路由,则它将把这条路由信息反射给自己所有的客户但是不能反射给非客户。
“非非不传”
3.当路由器执行路由反射时,他只将自己使用的最优的BGP路由进行反射。