【要的转走,莫要客气!】BGP基础知识学习笔记(一)

BGP含义

Border Gateway Protocol,边界网关协议,协议优先级为255,目前所使用的版本为v4。

边界网关路由协议,EGP网关协议,适用于大型路由网络结构,以AS为一个节点,每个AS有唯一确定的AS-ID用于标识。

BGP版本

① 2006年定义单播IPV4网络MP-BGP

② MP-BGP在IPv6单播网络上的应用称为BGP4+

③ 在IPv4组播网络上的应用称为MBGP(Multicast BGP)

BGP分类

① IBGP:

Internal Border Gateway Protocol ,内部边界网关协议,用于在AS内部的BGP协议

② EBGP:

External Border Gateway Protocol,外部边界网关协议,用于在AS之间的BGP协议,默认数据包中的TTL值为1跳,邻居建立使用直连端口建立,通常两个AS之间是不存在IGP路由协议的,所以AS之间使用直连链路建立邻居

BGP特性

BGP路由具有以下特点:

① 可靠的路由更新机制

② 丰富的Metric度量方法

③ 从设计上避免了环路的发生

④ 为路由附带属性信息

⑤ 支持CIDR

⑥ 丰富的路由过滤和路由策略

⑦ 支持认证

⑧ 默认不使用附载分担

01

可靠的路由更新机制

BGP使用TCP进行路由更新,保证路由传递的可靠性,源端口号随机,目的端口号为179。

02

丰富的Metric度量方法

BGP使用TCP进行路由更新,保证路由传递的可靠性,源端口号随机,目的端口号为179。

03

从设计上避免了环路

IBGP使用水平分割,EBGP使用AS-Path属性。

04

为路由附带属性信息

路由信息携带不同的BGP路由属性,为BGP选路提供了多种多样的方式。

05

支持CIDR、手动聚合

BGP支持无类域间(CIDR)路由,支持手工汇总和自动汇总。

(1)

自动聚合

默认情况下,自动聚合时关闭的。自动汇总不会自动汇总BGP邻居发送的路由以及使用Network命令通告的路由,只能聚合自身import注入的路由条目。当开启自动聚合后,BGP路由默认会以主类路由进行聚合。此时聚合路由的属性为Aggregate属性

使用以下命令进行自动聚合:

[Huawei-bgp]summary automatic

R1:

Ø [Huawei-bgp]network 1.1.1.1 32

Ø 只引入loo2到loo4

Ø 启用路由聚合

(2)

手动汇总

BGP手动路由聚合时,可以手动控制聚合路由的掩码长度,修改聚合路由属性等,手动路由聚合又有 两种方式:

① network静态路由

② aggregate宣告

③ network静态路由:

首先创建静态路由将网段聚合并指向null0,BGP采用network方式通告出去,由于直连优先级高于静态,优先选择直连的下一跳接口,当直连网段出现问题,匹配静态送往Null0。

在R1上配置静态路由:[Huawei]ip route-static 172.16.0.0 255.255.0.0 NULL 0 preference 254

使用network宣告出去:[Huawei-bgp]network 172.16.0.0 16

④ aggregate宣告:

直接在BGP试图下进行汇总

使用以下命令进行aggregate汇总:

[Huawei-bgp]aggregate 172.16.0.0 255.255.0.0 detail-suppressed

注1: 默认聚合路由只继承Community属性和起源属性(如果明细都为i,则为i,有一个为?,则为?)

注2:默认聚合后的路由不会携带任何的AS-path属性,为了防止环路,如果想要携带AS-path

属性,后面增加命令as-set,此时汇总路由会继承所有明细路由的AS号,为无序的AS号,如果增加了AS-SET之后,聚合路由会将明细路由的AS-Path放入AS-SET属性中,如果明细路由消失或属性修改都会造成聚合路由的抖动增加;如果明细路由的AS-PATH id完全一致,此时聚合路由的AS-PATH类型为AS-Sequence

注3:如果不加detail-suppressed,会将明细路由和汇总路由全部发送出去,使用detail-suppressed命令只通告汇总路由,此时汇总路由的属性为ATOMIC_Aggregate,用于通告下游的路由器成员信息被抑制,此时的汇总路由不会携带Community属性

注4:为了让聚合后的路由继承明细路由的路由属性,聚合命令后面增加attribute-policy 1,此时在定义Route-policy,规划属性值

注5:origin-policy的作用,定义route-policy,当满足if条件中的路由条目时,聚合路由才会生效,如果定义的路由消失,则聚合路由为ATOMIC_Aggregate

注6:suppress-policy的作用是用于过滤掉某些明细路由,定义route-policy,当满足if条件中的路由条目,明细路由就会被过滤掉,如果只抑制了一部分明细路由,属性依旧为Aggregate;如过抑制了全部的明细路由,属性为ATOMIC_Aggregate

注7:同IGP路由手动聚合对比,BGP路由聚合,默认明细汇总都发布,IGP只发布汇总路

由;汇总之后IGP不会自动生成一条指向Null0的路由,而BGP路由汇总之后会自动

生成一条指向Null0的汇总路由

(3)

默认路由发布

在peer对等体的时候,可以使用命令发布默认路由给对端邻居:

[Huawei-bgp]peer 192.168.1.1 default-route-advertise

丰富的路由过滤和路由策略

BGP携带了大量的属性信息,并支持13种选路规则。

支持认证

BGP支持MD5认证方式,如果是MD5方式,路由器会根据BGP报文的某些字段和密钥计算出一个128bit的散列值,然后将BGP报文连同散列值发送给邻居。邻居路由器收到以后,会在本地基于收到的BGP报文和相同的密钥在进行一次HASH运算。如果计算出的散列值与接收到的散列值相同,则认证通过。

使用以下命令进行密码认证:

[Huawei-bgp]peer  192.168.1.1 password cipher huawei/huawei

默认不使用附载分担

BGP默认不使用附载分担,即使存在多条路径也会使用选路规则选出一条“最优路由”将其放入路由表中。

开启附载分担方式:

① 选路规则前9条一模一样(AS ID顺序也一样),可以使用命令maximum load-balancing bgp 进行附载分担,当比较到下一跳的IGP开销值一样时,会进行流量的负载分担

② 当BGP路由中的下一跳地址在IGP路由表中存在附载分担,此时流量会附载分担

③ 使用属性值对多个目标流量对半分流实现附载分担

EBGP特性

EBGP默认存在以下特性:

① 在通告给EBGP邻居时会将NEXT_Hop属性设置为自身的接口IP地址

② 将Local_PREF值清空

③ 将MED数值除0

③ 在AS_PATH属性中增加自己的AS-ID

扩展性强

BGP扩展性强,在承载多协议路由时,在MP NLRI中增加属性值(TLV)进行扩展。

为了方便广大网络爱好学习者一起学(聚)习(众)交(搞)流(基),特开设华为干货交流群,里面已经上传大量学习资料,欢迎广大网络工程师进群学习!

扫描下方二维码,进群充点儿电吧~

你的好友博妞拍了拍你

并请你帮她点一下“分享”

(0)

相关推荐