CCNP基础知识-路由(二)

重发布

重发布定义

在本路由器上,要将A协议重发布给B,需要在B路由器上实施,将通过A协议学习并加表的路由以及本路由器上通告进入A协议的接口路由重发布进入B协议。
在重发布时会产生一个seed-metric(种子度量值),各种协议对应的seed-metric值:
RIP:无穷大
OSPF:20或1
EIGRP:无穷大
ISIS:0
BGP:携带(携带的意思就是沿用重发布之前的)

重发布到RIP

1、将静态路由和直连路由重发布进入RIP,seed-metric为1,将其他动态协议重发布进入RIP时,seed-metric值为无穷大。
2、可以修改seed-metric值,但对直连不会生效。

//修改seed-metric值
r1(config-router)#default-metric + <1-4294967295>

3、可以在重发布过程中修改,针对所有生效。

r1(config-router)#redistribute connected metric + <0-16>

重发布到OSPF

1、将任何方式产生的路由重发布到OSPF中,默认metric值都是20,类型为OE2
2、不能讲缺省路由重发布到OSPF中
3、修改默认seed-metric值,对直连不生效

r1(config-router)#default-metric + <0-16777214>

4、可以在重发布过程中修改seed-metric值

//将rip重发布到ospf时修改metric值
r1(config-router)#redistribute rip subnets metric ?

重发布到EIGRP

1、默认将静态路由和直连路由重发布进入EIGRP,seed-metric为原静态或直连接口信息
2、将其他动态路由协议重发布,seed-metric为无穷大
3、修改seed-metric

r1(config-router)#default-metric 2000 100 255 1 1500

4、在重发布过程中实施

//将rip重发布进入eigrp
r1(config-router)#redistribute rip metric 1000 100 255 1 1500

重发布类型

1、单点单向重发布 – 经过一个路由器将一边的路由传递给另一边
2、单点双向重发布 – 经过一个路由器,两边的路由相互传递
3、双点单向重发布 – 经过两个路由器,将一边的路由传递给另一边
4、双点双向重发布 – 经过两个路由器,两边的路由相互传递
在双点双向重发布中,有可能出现路由环路和次优路由
解决方法

  • 保证重发布路由器上路由是正确的(解决路由回馈,没有环路)
  • 在DV型协议中使用策略保证路由优化;在LS型协议中使用策略保证路由优化
    5、多点单向重发布 – 经过多个路由器,将一边的路由传递给另一边
    6、多点双向重发布 – 经过多个路由器,两边的路由相互传递

策略控制

ACL

ACL – 访问控制列表,用于控制访问的流量或抓取需要的流量
模式为permit和deny

标准ACL

标准ACL的序列号范围是0-99

//ACL列表,抓取192.168.1.0网络中的流量,设置为允许
r1(config)#access-list 1 permit 192.168.1.0 255.255.255.0
//抓取192.168.2.0网络中的流量,设置为拒绝
r1(config)#access-list 1 deny 192.168.2.0 255.255.255.0
扩展ACL

扩展ACL的序列号是100-199,可以抓取更精确的流量

ACL扩展,允许192.168.1.0网络中的用户telnet192.168.2.1
r1(config)#access-list 100 permit  tcp 192.168.1.0 255.255.255.0 192.168.2.1 eq 23 
ACL的缺点

1、不能精确的抓取网络掩码
2、不能范围性抓取路由信息

Prefix-list

Prefix-list – 前缀列表,用于抓取路由信息

//允许2.2.2.0/24
r1(config)#ip prefix-list ccnp permit 2.2.2.0/24
//允许2.2.2.0掩码范围在28-32之间的流量
r1(config)#ip prefix-list ccnp permit 2.2.2.0/24 ge 28
//允许2.2.2.0掩码范围在24-30之间的流量
r1(config)#ip prefix-list ccnp permit 2.2.2.0/24 le 30
//允许2.2.2.0掩码范围在26-30之间的流量
r1(config)#ip prefix-list ccnp permit 2.2.2.0/24 ge 26 le 30
//允许2.2.2.0掩码固定为28的流量
r1(config)#ip prefix-list ccnp permit 2.2.2.0/24 ge 28 le 28
//匹配所有的主机路由
r1(config)#ip prefix-list ccnp permit 0.0.0.0/0 ge 32
//匹配默认路由
r1(config)#ip prefix-list ccnp permit 0.0.0.0/0
//匹配所有
r1(config)#ip prefix-list ccnp permit 0.0.0.0/0 le 32
//匹配所有B类地址
r1(config)#ip prefix-list ccnp permit 128.0.0.0/2 ge 16 le 16
//匹配所有C类地址和C类子网地址
r1(config)#ip prefix-list cnnp permit 192.0.0.0/3 ge 24

distribute-list

distribute-list :分发列表、发布列表,用于过滤路由信息,自身并不具备过滤功能,需要借助ACL或Prefix-list
1、在DV型协议中,在in和out方向实施
2、在LS型协议中,仅能在in方向上实施,并且不能过滤LSA,仅阻止该路由加表
3、在重发布过程中(将A协议重发布进入B协议时,进入B协议,使用out+A协议)

调用:

r1(config)#router rip
r1(config-router)#districbute-list prefix ccnp out s1/0

Route-map

Route-map使用位置:
1、重发布
2、PBR(QOS)

PBR:policy based router 基于策略路由(与路由无关)

3、BGP(外部网关)
特点:
1、自身具备过滤功能
2、Match和Set
match all用于匹配某一条目的所有属性
set any用于匹配所有条目

重发布中调用:

r1(config)#router ospf 100
r1(config-router)#redistribute rip subnets route-map ccnp

3、末尾隐含拒绝所有

BGP协议

BGP:边界网关协议,使用范围:BGP,AS之间使用
更新时携带网络掩码
不基于算法,但存在规则
路径矢量型协议
协议封装:基于TCP封装,端口号179

一、BGP特点

1、版本v1,v2 ,v3 ,v4,v4+(支持多种协议)
v1和v2其实是属于EGP协议的,但是EGP协议已经被完全淘汰了。
v3为有类别,即不携带网络掩码
v4为无类别,仅支持IPv4协议
v4+支持多种网络协议
2、一般用于巨型网络,是一种路径矢量型路由协议
3、更新方式:触发更新;更新地址:单播更新
4、BGP存在大量的属性,基于策略属性选路
5、BGP使用open报文建立邻居,使用keepalive报文维持邻居关系
6、keepalive为周期发送,60s,hold时间为180s
8、BGP支持路由认证,路由聚合(vlsm,cidr)
9、BGP非常消耗路由器资源,一台路由器只能运行一个BGP进程

二、BGP适用网络

1、多宿主
2、传输AS
3、对进行进入、离开的流量进行抢答的路由策略时

三、BGP AS号,邻居关系

AS号:1-65535,公有范围:1-64511,私有范围:64512-65535
IBGP:内部BGP邻居关系,同一个AS之内建立BGP邻居,AD值为200
EBGP:外部BGP邻居关系,不同的AS之间建立BGP邻居,AD值为20
local BGP路由:本地BGP路由值为200

四、BGP防环机制

IBGP:
ibgp水平分割:通过一个IBGP邻居学习的路由不能传递给其他的IBGP邻居(IBGP只传一跳原则)
起源者属性,cluster ID(簇ID)
EBGP:
AS-path防环:放一条路由传递出某个AS时,在AS-Path属性中在增加自身所属AS号,所有路由器默认不接收AS=path包含自身AS号的路由信息

五、BGP的消息数据包

1、open包:用于建立邻居关系,只发送一次,然后进入opensent状态
2、keepalive包:维持BGP邻居的关系,默认每60秒发送一次,hold down时间为180秒,时间不一致不影响邻居关系的建立,双方只会按照hold时间发送,若双方hold时间不一致,以较小的为准,不会发送keepalive时间,所有的keepalive时间是自行计算的:
若hold > 3倍的 keepalive,keepalive时间保持不变
若hold < 3倍的 keepalive,keepalive时间变为hold时间的 1 3 \frac{1}{3} 31
若手工配置了keepalive时间,就以配置的时间为准
3、update包:路由更新,用于通告路由和撤销路由,使用TCP中的ACK进行确认
4、notification包:错误报告,当路由出现故障时,发送notification包通告BGP错误

六、BGP邻居关系建立

状态:
down:关闭BGP状态
idle:开始建立TCP连接状态
connect(active):TCP会话建立完成
opensent(openconfirm):发送open包
established:BGP邻居建立完成

在BGP邻居建立过程中,只发送open报文

如果双方的keepalive时间和hold时间均为0,则成为永久BGP邻居

BGP邻居关系建立的条件:AS号,BGP router-id必须不一致,hold时间,认证

七、BGP的部署

//启用BGP:
r1(config)#router bgp 200
//关闭BGP同步:
r1(config-router)#no synchronization  
//手工指定BGP router-id
r1(config-router)#bgp router-id 4.4.4.4
//开启BGP邻居日志提醒
r1(config-router)#bgp log-neighbor-changes
//手工建立BGP邻居
r1(config-router)#neighbor 3.3.3.3 remote-as 200
r1(config-router)#neighbor 5.5.5.5 remote-as 300
//修改BGP多跳,即不遵循只传一跳原则
r1(config-router)#neighbor 5.5.5.5 ebgp-multihop 2
//修改更新源
r1(config-router)#neighbor 5.5.5.5 update-source loopback 0
//关闭自动汇总
r1(config-router)#no auto-summary

查看BGP邻居关系汇总:
show ip bgp summary
查看BGP路由表:
show ip bgp
查看IP路由表:
show ip route bgp

在IBGP邻居建立过程中,存在大量相似的命令可以使用peer-group(大型对等组)来减少命令配置条数,优化BGP内存。
创建peer-group:

r1(config)#router bgp 200
r1(config-router)#neighbor ccnp peer-group
r1(config-router)#neighbor ccnp remote-as 200
r1(config-router)#neighbor ccnp update-source loopback 0
//将邻居划入peer-group中
r1(config-router)#neighbor 2.2.2.2 peer-group ccnp
r1(config-router)#neighbor 4.4.4.4 peer-group ccnp

BGP邻居关系建立的控制:
1、设置BGP建立邻居的工作模式(主动模式active、被动模式passive)
2、通过ACL进行控制
3、在非直连建立过程中一方使用缺省路由
4、在建立过程中若进存在一方满足邻居关系建立条件

BGP的扩展

BGP路由不优的原因:
  • BGP路由的下一跳不可达,
  • BGP同步

数据层面的路由黑洞:互相可以学习路由,但在数据转发的过程中,有些路由器缺失了路由而导致数据无法发送到目标。
路由黑洞产生的原因:当两个路由器要跨过路由器建立BGP邻居时,如果中间的路由器没有配置BGP协议,则会产生数据层面的路由黑洞。
路由黑洞的解决方案
1、将BGP重发布进入IGP中(慎用)
2、在AS之内建立full-mesh IBGP邻居
如果路由器较多要实现full-mesh,配置起来会很麻烦,可以使用peer-group技术,配置给peer-group,再将邻居添加进group中。

BGP的路由认证

BGP的路由认证基于邻居之间,与其他动态协议不同的是,在TCP的头部进行认证,且仅支持MD5认证。

BGP的邻居关系重置

硬性重置:断开TCP会话连接,重新建立BGP邻居关系,针对所有实施策略都生效。
clear ip bgp *
软件重置:在不断开TCP会话的基础上实施策略,支持在in,out上使用
clear ip bgp * soft+in/out
查看针对某个邻居发送的路由信息:
show ip bgp neighbors a.b.c.d advertised-routes

BGP的路由聚合(汇总)

在明细路由所在路由器上产生一个静态指向null 0路由,通告进入BGP,
使用聚合者属性进行路由聚合,建议在明细路由所属AS之内聚合,默认发送所有明细和聚合路由,若在其他AS内聚合,会丢失某些属性,例如AS-path,需要增加as-set还原明细路由所包含的某些属性。
aggregate-address+路由信息和网络掩码

通告AS-set继承4个属性:LP,AS-path,COM,origin
LP:本地优先级,选择最大值
AS-path:所有的AS-path全继承,但是使用AS序列号进行表示,无顺序之分,在计算AS-path路径时,AS序列号只算一个。
COM:community,团体属性,有标准和扩展两种,标准和扩展同时继承,但是标准属性按照最严格执行。
origin:起源码,继承最差的。

BGP的路由惩罚

目的:抑制路由摆动,防止路由表不稳定
被惩罚的路由不能加表,不能参与选路,不能传递,惩罚针对的是路径,而不是路由条目
惩罚值:路由每翻滚一次,惩罚值增加1000,路由属性每改变一次,惩罚值增加500
惩罚门限:2000,当惩罚值超过惩罚门限时,路径会被惩罚
重用门限:750,当被惩罚的路径惩罚值降低至750,该路径再次被启用
半衰期:每经过一个半衰期,惩罚值减半,默认为15分钟
最大惩罚时间:默认为60分钟
最大惩罚值:默认为12000,计算公式:
最大惩罚值 = 重用门限 × 2 最 大 惩 罚 时 间 半 衰 期 \times 2^\frac{最大惩罚时间}{半衰期} ×2

启用BGP的路由惩罚:

r1(config-router)#bgp dampening ?

查看被惩罚的路由:
show ip bgp dampening dampened-paths

BGP的后门路由:将EBGP学习到的路由AD值改为200
用IGP协议为EBGP邻居之间提供路由,然后在两个邻居之间做链路冗余

r1(config)#router bgp 1
r1(config-router)#network a.b.c.d mask + 网络掩码 + backdoor

在修改各种参数时,最大惩罚值必须大于惩罚门限,否则将无法进行惩罚

IBGP水平分割

打破IBGP水平分割机制的方法:
1、路由反射器
路由反射器定义RR服务器端、RR客户端、RR非客户端
反射规则:非客户端之间不互相传递路由
增加了簇ID – cluster-id,类似于router-id,默认是自己的router-id,为了防止簇ID仍然出环,引入起源者属性。
起源者 :只有当路由被反射之后才会有起源者属性,在反射的时候回吧该条路由的原路由器的router-id以起源者属性的方式写入,后门的路由器再反射时,会检查这条路由的簇ID和起源者属性,如果起源者是自己,则不学习该条路由。
配置:
neighbor a.b.c.d route-reflector-client

2、EBGP联邦
在AS之内划分出更小的AS,多个AS区域组合成的网络结构叫做EBGP联邦
配置:
1、bgp confederation identifier 23

2、bgp confederation peers 4 //告诉其他的联邦,4是联邦EBGP
联邦AS序列:在show ip bgp中可以看到path一列中小括号中的数字,表示的是联邦AS号,不计入AS长度比较,但是可以用于在大联邦之内进行防环。
BGP的团体属性

BGP的团体属性在传递时可以选择是否传递给邻居

1、标准:用于控制路由的传递
2、扩展:可以设置tag来标识路由,能为其他的技术提供服务

参数:

  • internet,全网传递
  • local-as,本地传递,不传递出小AS区域
  • no advertise,不给任何人传递
  • no export,不传递出大AS区域
BGP协议的选路

BGP协议的选路有三个性质:
1、公认性:所有配置了BGP的路由器都会有的属性即公认性
2、遵守性:配置了属性后按照配置来运行即遵守性
3、可传递性:有些属性可传递也可不传递即传递性

选路条件:
1、weight:权重值,范围0-65535,优先选择最大值,cisco私有,默认为32768,由本地产生,数值越大越优,学习到的为0,weight属性只在本路由器生效,不能传递
2、local-preference,范围0-4294967295,数值越大越优,部署位置:AS边界的BGP邻居之间,只在同一个AS之内生效
3、本地起源,起源于本地最优先,next-hop为0.0.0.0
4、AS-path:用于防环,越短越优,当一条路由传递出AS时,将自身的AS号加到AS-path中,大括号中包含AS序列,小括号中包含联邦AS序列
5、起源代码:i – ibgp,e – ebgp,network通告的,都以i表示,i优先于e,e优先于?,部署位置:整个BGP域
6、MED:多出口鉴别属性,范围:0-4294967295,只在通过两条路径得到最左边的AS相同时时才进行比较,默认值为0,部署位置:在不同AS之间使用(EBGP邻居),影响进入本AS的流量。
7、EBGP优先于IBGP,联邦EBGP与普通IBGP不能使用该条来进行比较,将联邦的EBGP路由当做普通IBGP
8、最近的下一跳地址,在IGP表中metric值最小的
9、如果配置了maximum-path [ibgp] n,如果存在多条等价路径,会同时加表
10、最老的路由,前提是必须是external路由,联邦内的EBGP路由当做IBGP处理
11、最低的router-id
12、多条路径的始发router-id相同,那么选择cluster-id长度最短的
13、BGP优选来自最低邻居IP地址的路径,BGP的neighbor配置的那个IP地址

MPLS

MPLS:多协议标签交换 – Multi Protocol Label Switch
1、支持多种网络层协议
2、基于标签交换进行数据转发

标签交换与传统数据转发对比

a、标签交换转发效率优于传统数据包交换(已不明显)
b、MPLS支持MPLS VPN,支持MPLS TE

MPLS在控制层面的标签分发协议:LDP、TDP、MP-BGP、MPLS-VPN、RSPV(MPLS TE)
数据层面:MPLS

MPLS工作模式

1、frame模式:目前最常见的工作模式
2、cell模式:仅限于ATM网络

MPLS术语

FEC:转发等价类,具有相同处理防暑的一类数据称为一个转发等价类
LSR:标签交换路由器,标签交换(swap)
E-LSR:边界标签交换路由器,用于标签的压入和弹出
FIB:转发信息库
LIB:标签信息库
LFIB:标签转发信息库,由FIB和LIB综合而成
LSP:标签交换路径

label构成

在这里插入图片描述
label长度:20bit,范围16 – 2 20 ^{20} 20 ,其中0 – 15是明星标签
EXP长度:3bit,用于在label中标记标签中的优先级
S:栈底位,代表标签是否到达栈底
TTL:生存时间,每经过一个路由器,TTL值减少1
一个标签总长度为32bit,即4字节
在接口启用MPLS:首先进入接口,然后输入mpls ip

查看LDP邻居:show mpls ldp neighbor

查看LIB表:show mpls ldp bingings

查看LFIB表:show mpls forwarding-table

查看CEF中携带的label信息:show ip cef 1.1.1.0 detail

修改路由器下发标签的范围:mpls label range+<16-1048575>

强制修改mpls router-id:mpls ldp router-id loopback 0 force

可以用MPLS来解决数据层面的路由黑洞,MPLS不能配置在布简历邻居的接口上,不然无法交换标签,毫无意义。

MPLS VPN

VRF被称为:虚拟路由转发
RD:路由区分器,区别不同的VRF
AS号:number 234:1 234:2 234:3
RT:路由目标,负责路由导入和导出 X:Y
部署:
1、创建VRF

r1(config)#ip route vrf r1-r5

2、查看
show ip route vrf r1-r5

在ce与pe之间运行路由协议

r1(config)#router rip
r1(config-router)#version 2
r1(config-router)#no auto-summary
r1(config-router)#address-family ipv4 vrf r1-r5

3、建立MP-BGP
MP-BGP支持传递vpnv4
先建立IPv4 BGP ,优化可以传递路由的能力

router bgp 234
	bgp router-id 2.2.2.2
	np bgp default ipv4-unicast
	bgp log-neighbor-changes
	neighbor 4.4.4.4 remote-as 234
	neighbor 4.4.4.4 update-source loopback0

针对邻居开启传递VPNV4路由的能力,同时开启发送接收团体属性的能力

address-family vpnv4
	redistribute rip
	no synchronization

查看:show bgp vpnv4 vrf r1-r5

路由导出
将BGP路由重发布VRF的IGP中
redistribute bgp 234 metric 2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值