HCIP第十天

由于重发布技术的种子度量值的问题,将必然导致选路不佳的情况产生。这种情况只能依赖路由策略来人为干涉选路。

路由策略

控制层流量:路由协议传递路由由信息产生流量

数据层流量:设备访问目标网段所产生的流量

路由策略:在控制层流量传递过程中,截取流量,之后修改流量再转发或者不转发,最终影响路由表的生成,达到干涉选路的目的。
 

1.抓取流量

1.ACL列表---本身应用于限制数据层流量进出,也可以应用再抓取控制层流量上,但由于其通配符的设计,不能进行精准的匹配。

2.前缀列表---IP-prefix

[r1]ip ip-prefix aa(自定义的前缀列表名称,唯一区分和标定不同前缀的参数)

premit(和ACL一样,可以选择拒绝或者允许两种动作,抓取流量时选择允许即可)192.168.1.0 24--目标网段的路由信息

[r1]display ip ip-prefix aa 查看前缀列表命令

前缀列表中的规则默认是以10为步调自动添加序号,其目的是为了方便插入和删除规则。

[r1]ip ip-prefix aa index 15 premit192.168.3.0 24

[r1]undo ip ip-prefix aa index 15

前缀列表的匹配规则:自上而下,逐一匹配,一旦匹配到则按照对应的动作来执行,就不再向下匹配。末尾隐含一条拒绝所有的规则。

前缀列表可以实现范围匹配

[r1]ip ip-prefix aa permit 192.168.3.0 24 less-equal 28----可以匹配掩码为24-28的所有路由信息

[r1]ip ip-prefix aa permit 192.168.1.4.0 24 greater-equal 28---如果出现前后矛盾的情况,则将按照后面的来执行,前面的将不代表掩码长度,代表前24位固定

[r1]ip ip-prefix aa permit192.168.5.0 24 greater-equal28 less-equal 30--代表前24位固定,抓取掩码长度为28-30的

[r1]ip ip-prefix aa permit 192.168.6.0 24 greater-equal 28 less-equal 28---代表前24位固定,抓取掩码长度为28的路由信息

匹配所有的主机路由:

[R1]IP IP-prefix aa permit 0.0.0.0 0 greater-equal 32

匹配所有的路由信息:

[r1]ip ip-prefix aa permit 0.0.0.0 0 less-equal 32

匹配缺省路由信息:

[r1]ip ip-prefix aa permit 0.0.0.0

2.路由策略

1.RIP的merticin和merticout----偏移列表---偏移列表只能应用在距离矢量型协议中,而并不能应用在链路状态型协议中。

1.抓取流量

[r1]ip ip-prefix aa permit 23.0.0.0 24

2.在接口上配置偏移列表调用前缀列表

[r1-GigabitEthernet0/0/1]rip merticin ip-prefix aa 10

2.filter-policy过滤策略/过略列表---过滤列表在距离矢量型协议中和链路状态型协议中都可以使用。

1.抓取流量

[r1]ip ip-prefix bb deny 34.0.0.0 24---过滤列表没有过滤能力,所以需要调用低阶列表的过滤功能,这里在抓取流量时,动作需要选择为deny

[r1]ip ip-prefix bb permit 0.0.0.0 0 less-equal 32---放通所有,不添加这条规则,过滤列表将过滤掉所有的流量。

2.在进程中进行调用

[r1-rip-1]filter-policy ip-prefix bb import GigabitEthernet 0/0/0

注意:在链路状态协议中,因为同区域内部传递的是拓扑信息,所以过滤列表无法过滤拓扑信息,只能进行入方向的调用。而入方向的调用也不是过滤拓扑信息,只是将对应的路由信息拒绝加表。

3.route-policy路由策略

1抓流量

Basic ACL 2000 1rule

ACL's step is 5

rule 5 permit source 1.1.1.0 0

Basic ACL 2001 1rule

ACL's step is 5

rule 5 permit source 2.2.2.0 0

ip ip-prefix aa index 10 permit 3.3.3.0 24

ip ip-prefix bb index 10permit 4.4.4.0 24

2.配置路由策略

[r2]route-policy aa (自定义的路由策略名称)deny node 10---创建了一张叫做aa的路由策略

info:New Sequence of this List

[r2]route-policy aa deny node 10---node 10 相当于路由策略的规则编号,这个编号需要手动添加,建议参考前缀列表的序号模式,以10为步调手动添加。

info:New Sequence of this List

[r2-route-pollicy]if-match acl 2000 ----如果匹配---代表如果匹配到列表抓取的流量,则执行对应的操作。

[r2]route-policy aa permit node 20

info:New Sequence of this List

[r2-route-policy]if-match acl 2001

[r2-route-policy]apply cost-type type-1

[r2]display route-policy aa ---查看路由策略

[r2]route-policy aa permit node 30

info:New Sequence of this List

[r2-route-policy]if-match ip ip-prefix aa

[r2-route-policy]apply cost 10

[r2]route-policy aa permit node 40

info:New Sequence of this List

[r2-route-policy]if-match ip ip-prefix bb

[r2-route-policy]apply cost type type-1

[r2-route-policy]apply tag 6666----如果规则中存在多个id-match或者apply,则他们之间的关系为与关系。

[r2]route-policy aa permit node50 ---- 允许所有

1.如果if-match,则将匹配所有流量

2.如果没有小动作,则只按照大动作执行即可。

3.在重发布中调用路由策略

[r2-ospf-1]import-route rip 1 route-policy aa

[r3]display ospf routing----这个命令可以查看ospf的路由表

路由策略的匹配原则:自上而下,逐一匹配,一旦匹配上则按照对应的动作来执行,就不再向下匹配。在末尾隐含一条拒绝所有的规则。

Route-policy的配置指南:

1.即使要拒绝一条流量,再抓取流量时必须要使用允许,之后在路由策略中拒绝。

2.在一条规则中,若没有进行流量匹配,那就是匹配所有的流量,若没有应用(小动作),则对匹配的流量只执行大动作。因此,大动作为允许的空表代表放通所有。

BGP---边界网关协议

IGP----内部网关协议---RIP,OSPF

EGP---外部网关协议---BGP

AS---自治系统--由单一的机构或者组织所管理的一系列IP网络及设备组成的集合。

1.范围太大,协议跑不过来,需要划分。

2.自治

为了方便对AS--自治系统进行管理,我们给每一个自治系统设置了一个编号,这个编号称为AS----由16位二进制构成---取值范围:0-65535,其中0和65535保留,可用范围1-65534.其中64512-65534这一部分的AS号称为私有AS公有AS的取值范围1-64511(这一部分AS号要求全球唯一,统一由IANA组织分配)

所以,目前大多数设备支持拓展版的AS---32位二进制构成

目前,在ipv4领域下,我们使用最广泛的BGP协议版本为BGPV4版本,但是,目前市面上也存在BGPV4+的版本---特点支持多种地址族

在BGP的情况下,我们通过重发布技术也可以实现不同AS之间的路由信息共享。但是,之所以采用BGP而不是重发布,主要是因为重发布本身存在缺陷

1.在实现重发布时,必然会出现选路不佳的情况

2.归属问题

BGP协议被称为无类别的路径矢量协议

路径矢量和距离矢量的区别:

1.距离矢量中的距离指的是开销也就是跳数,是以一台路由器作为一跳。而路径矢量中则是将一个AS看作一个整体,将一个AS作为一跳。

2.EGP协议不存在算法的概念,而距离矢量是根据算法来划分的。BGP协议只是将IGP协议计算出来的路由信息传递到其他运行BGP的设备。

EGP协议的评判标准---选路佳,收敛快,占用资源少

IGP协议的关注点:

1.可控性---AS之间需要传递大量的路由信息,所谓可控,就是可以更加方便的干涉选路,做策略---为了弥补重发布的缺陷。

为了保证路由的可控性,方便选路。BGP协议直接舍弃掉了开销值,取而代之的是BGP给每条路由信息附加了丰富的路径属性。

我们可以我们可以通过多种路径属性进行灵活的选路,使得BGP协议具有强大的可操控性。

因为BGP需要传递的路由信息的数量非常庞大,所以,他无法采用周

期更新,只存在触发更新。

2,可靠性--- BGP协议为了保证传输的可靠性,直接采用TCP协议作为传输层的协议来工作。使用TCP的179号端口来工作。

IGP协议不选择TCP的原因:

1,TCP速度较慢;2,TCP占用资源较大;3,TCP只能实现单播

因为BGP采用TCP作为传输层协议,所以,只能通过单播的形式建立邻

居关系,需要手工指定邻居而不能自动发现。

BGP支持非直连建邻---因为只要网络可达,即可以实现TCP会话通道的建立,则可以建立BGP的邻居关系。

BGP的非直连建邻是承载在IGP(静态路由)的基础上的。

AS之间的---EBGP对等体关系---如果建立对等体的两台路由器位于不同的AS中,则他们的关系就被称为EBGP对等体关系。AS内部的---IBGP对等体关系---如果建立对等体的两台路由器位于同一个的AS中,则他们的关系就被称为IBGP对等体关系。

一般情况下,IBGP对等体关系可以非直连建邻,而EBGP对等体关系之间是直连建邻的,所以,IBGP间建邻时,他所构成的数据包中的TTL值为255。但是,在EBGP对等体关系建邻时,他构成的数据报中TTL值为1。若RBGP对等体之间需要非直连建邻,则必须将数据包中的TTL值修改。

3,AS-BY - AS:在BGP中,始终是将一个

AS看作是一个整体。-----BGP不支持负载均衡。不管到达相同网段存在多少条路由信息,BGP只会选择其中的一条加载到路由表中。

1,BGP的数据包

因为BGP传输层使用的是TCP协议,所以,传输的可靠性全部由TCP协议来保证,不需要额外的设计确认报文。

ospf中的hello包可以实现周期性的发现,建立和保活邻居关系

BGP中发现邻居关系---需要通过人手工来指定邻居关系。

BGP中建立邻居关系---由open报文来完成

BGP中保活邻居关系--- Keeplive包来完成

OPEN包----主要作用用来建立BGP对等体关系,其实质就是协商参数。

AS---在创建邻居关系时需要指定对方的AS号,并且,这个AS号会在OPEN报文中携带。若对方收到数据包中发AS号和本地的AS号不同,则将无法正常建立邻居关系。

认证---在BGP中也可以进行邻居间的认证,在数据包中将携带认证口令,口令相同,则将正常建立邻居关系,不同,则无法建立。

Router-ID ---其作用也是用来区分和标定不同路由器的,在

OPEN报文中也会携带这个参数。对端在收到后将会比较数据包中的RID和本地的RID,相同则代表冲突,无法建立邻居关系。不同,则可

以正常建立邻居关系。

BGP中的RID和OSPF中的完全一样---也是由32位二进制构成,按

照IP地址的格式配置。

生成方法:

1,手工配置;

2,自动生成(先看本地环回接口,取最大的作为RID,如果没有环回,则取物理接口IP最大的作为RID。)

 手工指定邻居关系时所配置的目标IP地址必须和邻居发来的OPEN报文中的源IP地址一

                致,否则将无法正常建立邻居关系

                OPEN报文中还会协商一些参数:

                保活时间(Hold time) ---  默认为180S。这个参数也会携带在OPEN包中,但不要求必

                须相同,但是执行时又必须相同。当双方保活时间不同时,则将按照数值小的执行。是

                否支持路由刷新功能,如果有一方不支持,则间不启用该功能

        Keeplive包 --- 主要任务就是保活对等体之间的邻居关系。周期发送时间为保活时间的

        1/3,默认保活时间为180S,则周期发送时间为60S

                除了正常的周期保活外,还将在收到对方OPEN报文后临时充当确认包的作用。Keeplive

                包确认的不是OPEN报文是否收到,而是OPEN报文中的参数是否同意,同意则回

                复 keeplive报文进行确认

        Update包 (更新包) --- 主要包含目标网段及掩码信息,以及BGP附加给路由的各种路径属性

                当一条路由信息失效时,BGP将直接把该路由信息携带在更新包中的撤销路由条目字段下,代                               表该路由失效,而不需要像RIP一样采用带毒传输的方式

        Notification包 --- BGP设置的一个告警机制

        Route-refresh包 --- 用于改变路由策略后请求对等体重新发送路由信息。前提是对等体双方

        都需要支持路由刷新功能       

        2,BGP的状态机

        BGP的状态机一共6种,主要描述的是BGP对等体建立过程中的状态变化,而不包含路由收发

        过程。因为BGP可以将邻居建立和路由收发分开

       

 Idle(空闲状态) --- 一开始,设备启动BGP进程后先进入空闲状态, 当手工指定邻居关系后,将进入到一个检查步骤。需要先确认指定地址在本地路由表中的可达情况。如果可达,则进入到Connect,尝试建立TCP的会话。如果不可达,则将停留在空闲状态

Connect(连接状态) --- 该状态需要完成TCP会话的建立

如果建立成功,则进入Opensent状态

如果建立失败,则进入Active状态,则将反复尝试建立TCP会话

Opensent --- 发送OPEN包,同时也会收到对方发送的OPEN报文。则将检查对方报文中的参数,如果没问题则将发送keeplive包进行确认。

Openconfirm --- Open确认状态。等待对方发送keepolive报文确认自己的参数。如果收到keeplive报文则进入下一个状态

Established --- 标志着邻居关系建立成功

3、BGP的工作过程

4、BGP的基本配置

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值