BGP的课程笔记

BGP(边界网关协议)

  • 基本概念
  1. BGP两种对等体关系,一种是EBGP,另一种是IBGP
  • EBGP对等体关系:当BGP运行在不同AS之间时,称为EBGP
  • IBGP对等体关系:当BGP运行在同一AS内部时,称为IBGP.
  1. IBGP水平分割规则:当路由器从一个IBGP对等体学习到某条BGP路由时,它将不能再把这条路由通告给任何IBGP对等体,这就是IBGP水平分割规则。
  2. 报文类型及格式

BGP是工作在TCP之上的,使用TCP目的端口号179.

有五种报文:

                 Open报文:用于邻居建立协商参数

                 Keepalive 报文:保持邻居 如果参数协商通过,则回复该报文。每60s发送一次,hold time为180s.

                 Notification报文:差错通知,如果参数协商不通过,邻居无法建立,则回复该报文

                  Update报文:更新路由信息(携带路由所有信息);撤销路由(只会携带路由,没有路由属性)

                 Route-Refresh报文:用于在改变路由策略后请求对等体重新发送路由信息。在路由接收方向(import)做策略,不会触发updata报文,需要刷新,先触发route-refresh报文,进而触发update报文,使用refresh bgp all import 这条命令刷新路由入方向的策略。

           注意:只有BGP头部的报文是keeplive

4.BGP状态:

BGP状态描述的是BGP邻居的建立过程,BGP状态共有六种,分别是Idle(空闲)、Connect(连接)、Active(活动)、OpenSent(打开发送)、OpenConfirm(打开确认)和Established(建立成功)。

 

Idle状态:BGP拒绝任何进入的连接请求,Idle状态是BGP的初始状态。

 

Connect状态:该状态下,BGP等待TCP连接的建立完成后在决定后续操作。

 

Active状态:该状态下,BGP将尝试进行TCP连接的建立,是BGP的中间状态。TCP建立失败,为Active状态,会重新发送TCP连接。

 

OpenSent状态:TCP建立成功,则为OpenSent状态。该状态下,BGP等待对等体的Open报文协调,并对收到的Open报文中的AS号、版本号、Holdtime等进行检查。如果Open协调成功,则发送KeepAlive报文,进入下一个状态。

 

OpenConfirm状态:在该状态下,BGP等待KeepAlive或Notification报文。

 

Established状态:在该状态下,BGP可以在对等体之间交换所有报文,也是BGP正常工作的状态。

 

在BGP对等体建立的过程中,通常可见的三种状态是IdleActiveEstablished。BGP对等体双方的状态必须都为Established,BGP邻居关系才能成立,双方通过Update报文交换路由信息。

  • BGP防环机制:

AS之间:当一条BGP路由携带的AS号与本地AS号相同,则不接收该路由

AS之内:①水平分割

②反射器:originator-id:起源ID

Cluster List:反射器的Router-id

  • 路由属性:
  1. BGP的路由引入:

Network X.X.X.X mask X.X.X.X(必须和路由表中掩码相同)

在传递路由时,传递给EBGP时,下一跳会改为本地(邻居neighbor中的地址),传递给IBGP时,下一跳不变,若想变就用next-hop-local,想去谁,将谁的neighbor中配置

  1. *:有效路由

 >:最优的,不优,就算学到也不放进路由表,并且不会传递给任何邻居

bgp table中,前面的i表示internal(内部学习),后面的i才是起源属性

  1. IBGP传递路由给邻居时:

1下一跳不变

2收到后不能传递给他的IBGP邻居---只传一跳原则

4.通告BGP路由的方法

BGP路由是通过BGP命令通告而成的,而通告BGP路由的方法有两种:network和Import

(1)network方式:

使用network命令可以将当前设备路由表中的路由(非BGP)发布到BGP路由表中并通告给邻居,和OSPF中使用network命令的方式大同小异,只不过在BGP宣告时,只需要宣告网段+掩码数即可,如:network 12.12.0.0 16。

  1. Import方式:

使用Import命令可以将该路由器学到的路由信息重分发到BGP路由表中,是BGP宣告路由的一种方式,可以引入BGP的路由包括:直连路由、静态路由及动态路由协议学到的路由。其命令格式与在RIP中重分发OSPF差不多。

  • 配置及实现
  1. BGP基础配置命令:

[Huawei]bgp 65001

 [Huawei-bgp]router-id 1.1.1.1 //配置BGPRouter ID

[Huawei-bgp]peer 2.2.2.2 as-number 65001 //指定对等体的IP地址及其所属的AS编号

[Huawei-bgp]peer 2.2.2.2 connect-interface loo0 //更新源

[Huawei-bgp]peer 6.6.6.6 next-hop-local    //指定下一跳自我

[Huawei-bgp]peer 8.8.8.8 ebgp-max-hop 2 //两个AS之间用环回口建的邻居要将它们的邻居的路数改为2,默认的是1

  1. 汇总命令
  • 自动汇总:summary automatic,该命令仅对import-route方式引入BGP的路由有效。
  • 手工汇总:

Aggregate   //进行手工汇总,不抑制明细路由

aggregate+detail-suppressed  //detail-suppressed抑制明细路由的通告。

aggregate+detail-suppressed+as-set   //产生的汇总路由将会继承明细路由的路径属性as-path。(如果在本地路由汇总,则不用配置as-set命令;如果在其邻居汇总,则需要配as-set

aggregate+suppress-policy   //有选择性地抑制明细路由

aggregate+origin-policy   //使用关键字origin-policy来选择仅符合route-policy的具体路由来生成聚合路由

  • 路由反射器(RR)

1.三大原则

原则一:如果路由反射器从自己的非客户对等体学习到一条IBGP路由,则它会将该路由反射给所有客户。

原则二:如果路由反射器从自己的客户学习到一条IBGP路由,则它会将该路由反射给所有非客户,以及除了该客户之外的其他所有客户。

原则三:当路由反射器执行路由反射时,它只将自己使用的,最优的BGP路由进行 反射

2.RR环境下的路由防环

  • Originator-ID属性:本地AS内的始发路由器的router-id
  • Cluster-List属性:反射器的Router-id

3.基础配置

[R3-bgp]peer 2.2.2.2 reflect-client    //R3配置为路由反射器,并且将R2配置为其客户

  • 路径属性

  1. Prefered_Value

华为私有的路径属性,该属性的取值范围为0~65535,越大越优,只在本地有效,而且绝对不会被传递给其他对等体(不会出现在Update报文中)

  1. Loacl_Preference

只能够在一个AS内部传递即只能在IBGP对等体之间传递),值越大越优

     2.AS_Path

只在EBGP对等体之间发生改变,当BGP路由在一个AS内传递时(路由被通告给自己的IBGP对等体),该路由所携带的AS_Path是不会发生改变的。

     3.Origin

3种类型

IGP:如果路由是由始发的BGP路由器使用network命令发布的,那么 OriginIGP

EGP:如果路由通过EGP学习的,那么该属性为EGP

Incomplete:如果路由通过import-route学习到的,那么该属性为Incomplete

注意:i>e>incomplete(?)

  1. MED

用于判断流量进入AS时的最佳路由,只能在相邻AS之间传递,默认为0

  • 路由优选规则
  1. 优选Preferred_Value属性值最大的路由(默认为0)
  2. 优选Local_Preference属性值最大的路由(默认为100)
  3. 通过手工汇总的方式发布的路由>通过自动汇总的方式发布的路由>通过network命令发布的路由>通过import-route命令发布的路由
  4. 优选AS_Path属性值最短的路由
  5. 优选Origin属性最优的路由。IGP>EGP>Incomplete
  6. 优选MED最小的路由(路由需要来自同一个AS才会比较MED。)
  7. 优选从EBGP对等体学到的路由(EBGP路由优先级高于IBGP路由)
  8. 优选Next_HopIGP度量值最小的路由
  9. 优选Cluster_List最短的路由
  10. 优选Router-ID最小的设备通告路由
  11. 优选具有最小IP地址(Peer命令所指定的地址)的对等体通告的路由
  • 联邦

将一个AS划分为若干个子AS,每个AS内部建立IBGP全连接关系,子AS之间建立EBGP连接关系。

配置命令:confederation id +所处联邦的AS

注意:有时候需要使用confederation peer-as命令指定同属一个联邦的相邻成员 AS

反射器RR和联邦的区别:

RR

联邦

不需要更改现有的网络拓扑

需枚逻辑拓扑

配置方便,客户机不知道自己是客户机,集群与集群之间仍然需要全连接

所有设备需要重新进行配置,且所有设备必须支持联邦功能

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值