CCNP学习笔记4-路由部分--路由控制

◆passive-interface


- 可以用在rip eigrp ospf中。

    其中在rip中是只收不发报文

        在eigrp不收不发报文

        在ospf不收不发报文

  路由协议进程中 network命令作用有两个:

    1,把network的地址网段的路由宣告进去,掩码长度由接口配置决定,不是network决定

        例如: network 10.0.0.1 0.0.0.255 就是把10.0.0.1-254的路由宣告,掩码由接口配置决定

    2,把network宣告的网段所在的接口宣告你路由协议

        例如:network 10.0.0.1 0.0.0.254 把配置了10.0.0.1-254的接口通告出去

passive作用就是把第2作用取消了。就是会把10.0.0.1/24的路由通告出去,但是配置了10.0.0.1/24的接口不会再发送路由了


实验:测试passive作用

wKiom1ZgOabRK5SAAAAkk8p7Ejk543.png

1,配置IP,和loopback0

2,全网开启eigrp

3, R1 :router ei 10

            passive-interfa loopback 0

   R3:仍然可以收到11.1.1.0的路由

   R1 :debug eigrp packets 可看到不再从loopback0口发包。

 passive-interface default 作用passive本地所有接口


##########################################################################################

################分发列表distribut-list控制路由更新流量

############################################################

- 使用access-list 或者 route-map 去允许或拒绝路由

- 应用与传输,接收,重分布路由更新

- rip(in 。out方向) eigrp(in.out方向) ospf(in方向)

  rip eigrp 在in方向,同时影响本地和下游

  ospf在in方向,只影响本地,不影响下游,因为SPF算法


出方向更新

    router(config-router)#

        distribute-list {acce-list-number | name } out [interface-name| routing-process [routing-process parameter]]


入方向更新

    router(config-router)#

        distribut-list [access-list-number| name] | [route-map map-tag] in [interface-type interface-number]


实验:测试不同路由协议 方向和影响范围

wKiom1ZgOabRK5SAAAAkk8p7Ejk543.png

一 距离矢量协议

1,启用IP和eigrp或rip协议

2. R2再启用loopback 1:11.1.2.1/24,但是不让R3学习到

3,可以在R2 f1/0后R3 f0/0

    R2: router ei 1

            distribute-list 10 out fastethernet 1/0

        access-list 10 deny 11.1.2.0

        access-list 10 permit any

    R3:sho ip ro 检测

二 链路状态协议

    1,启用ospf,都在区域 0

    2,让R2不能学到11.1.1.1

        R2:

        access-list 11 deny 11.1.1.1

        access-list 11 permit any

        router os 1

            distribut-list 11 in 

     这样就禁止了11.1.1.1写入路由表,但是11.1.1.1的LSA不会受影响。

        R2:sho ip os da 可看到11.1.1.1的lsa

        


############################################################################################################ OSPF 中过滤 3类LSA 前缀列表 ###################################

##################################################################

OSPF中是无法过滤LSA的 ,但是除了3类

控制3类LSA的数量两种方法

    1,汇总,ospf中有介绍

    2,前缀列表

实验:使用前缀列表,单独控制一条3类lsa

wKioL1ZgRJ2A4rhxAAAoIC9IBz8081.png

1,R1 R2area0 R2 R3 area1

2,启用IP和loopback

3,R1 lo0 11.1.0.1

      lo1 11.1.1.1

      lo2 11.1.2.1

   控制R3不能学习到11.1.2.1

4,  ABR路由器上:R2

        ip prefix-list 名字 deny 11.1.2.1/32

        ip prefis-list 名字 permit 0.0.0.0/0 le 32

        router os 1

            area 0 filter-list prefix 名字 out 或者

            area 1 filter-list prefix 名字 in 

        sho ip os da 可看到11.1.2.1的age被置为3600 LSA没有 路由也肯定没有


##########################################################################################################################  偏移列表 #############################

#########################################################################

RIP中 in out方向都可以,改变开销跳数

eigrp 中 out方向修改了AD值

ospf中不存在offset-list命令


######################################################################################################################## 路由重分布 ##############################################

- 一种临时的协议转换过程

- 不应该长期存在网络中


重分布进链路状态路由协议中 使用subnet关键词 防止只重分布主类路由

重分布ospf中,默认是OE1,默认cost=20

router ospf 1

    redistribute eigrp 10 subnets


从分布进距离矢量协议中,需要使用metric关键词控制metric值。rip跳数 eigrp5个K值(带宽,延时,可靠性,负载,MTU 。前两个根据实际情况设置 1000 100 255 1 1500)。不控制metric默认是无穷大,将不生效

router eigrp 10

    redistribute ospf 1 metric 1000 100 255 1 1500

 或 种子度量值,针对所有重分布

    redistribute ospf 1 

    default-metric 1000 100 255 1 1500

将直连或静态重分布进距离矢量时不用加metric

直连的cost值就是接口的cost

静态的cost值是静态去往下一跳的cost

wKioL1ZjtqDTB4HHAAA1X7d8Tno541.png

互相重分布进的路由条目,就是R2本地中的 O 和 D 路由表条目

                        以及参与ospf和eigrp进程的接口的路由

                        重分布前后,R2的路由条目不会变化


◆双点双向重分布带来的问题(eigrp不会有问题因为eigrp内部90,外部170)

wKioL1ZjzJ-ws1wlAACXewoUiHg283.jpg

1:次优路径----通过修改AD解决--distance


2:环路---通过过滤解决--distribute-list


R1: F0/0 1.1.12.1

    F1/0 1.1.14.1

    lo0  1.1.11.1

R2: F0/0 1.1.23.2

    F1/0 1.1.12.2

    lo0  1.1.22.1

R3: F0/0 1.1.23.3

    F1/0 2.1.35.3

R4: F0/0 1.1.14.4

    S1/0 2.1.45.4

R5: S1/0 2.1.45.5

    F0/0 2.1.35.5


一 ,,次优路由 

    R3 :tracetoure 1.1.11.1 发现走的路径是 R5->R4->R1->R2


    因为R3从RIP学到1.1.11.1 AD=120

          从ospf学到1.1.11.1 AD=110

    解决:减小RIP的AD,增加ospf的AD (distance 管理距离 邻居的接口IP)

        R3: router rip 

                distance 109 1.1.23.2 0.0.0.0 1 (1:acl匹配路由),如果直接默认全部会导致R1学R5的次优路由

             access-list 1 per 1.1.0.0 0.0.255.255

             sho ip ro 

        R4也要配置针对1.1.0.0 网段的distance

ospf进程中,修改distance 后面接邻居的router-ID

    R3: int lo0 

            ip add 33.1.1.1 255.255.255.0

         router ospf 1

            distance 100 55.1.1.1 0.0.0.0 2

         access-list 2 permit 2.1.0.0 0.0.255.255

      sho ip ro 从R5的学的路由AD就变了100,从R3学到的不变。

      要修改R3的,需要增加 distance 100 33.1.1.1 0.0.0.0 2

总结:要修改从rip或eigrp学到路由的distance,要指向邻居接口IP

      要修改从ospf学到的路由的distance,要指向邻居router-ID 

       LSA 和路由条目的区别


###############################################

############# distance:#############################################

   ● ospf可以修改默认AD(110)

        router ospf 1

            distance ospf external XXX inter-area XXX

        sho ip ro 查看

    ● eigrp可以修改默认AD(90,170)

        router eigrp 1

            distance eigrp XX(内部) XX(外部)

        sho ip protocal查看

    ● rip 不能修改

     


二,,双点双向从分布 环路问题

      R3 int l0

            ip add 33.1.1.1 255.255.255.0

            ip ospf 1 area 0

      R4 traceroute R3 33.1.1.1看到环路现象

  原因:R4从R5学到O的路由,当O的路由消失,还会从R1学到OE2的路由。然后R5 R1也学到OE2的,又重分布给R2,这样就环路了。。


    通过distribute-list 过滤解决

R3:router ospf 1

        distribute-list 10 out rip(所有重分布进ospf的rip出方向路由都匹配ACL 10)

    access-list 10 deny 33.1.1.0 0.0.0.255

    access-list 10 deny 1.1.0.0 0.0.255.255

    access-list 10 permit any

    router rip 

        distribut-list 20 out ospf 1

    access-list 20 deny 2.1.0.0 0.0.255.255

    access-list 20 permit any

双点在一个节点做就可以了。。

注意:使用distribute-list在协议之间做过滤时,只能是out方向

使用distribute-list方法解决环路的缺陷是:每增加一条路由就要写一条ACL匹配!!


用route-map可以不因为路由变更而更新配置

R3:

    rip 重分布进ospf时,打tag 100

R4:deny tag=100

同理,把ospf 重分布进 rip 的流量 打tag=200


步骤:

    R3:

        route-map rip2ospf deny 10

            match tag 200

        route-map ospf2rip permit 20

            set tag 200

        route-map rip2ospf permti 20

            set tag 100  

        route-map ospf2rip deny 10

            match tag 100

        router ospf 1

            redistribut rip subnets route-map rip2ospf

        router rip 

            redistribute ospf 1 metric 5 route-map ospf2rip 

   R4:

        route-map rip2ospf deny 10

            match tag 200

        route-map ospf2rip permit 20

            set tag 200

        route-map ospf2rip deny 10

            match tag 100 

        route-map rip2ospf permit 20

            set tag 100

        router ospf 1

            redis rip sub route-map rip2ospf

        router rip

            redis ospf 1 metric 5 route-map ospf2rip

        


#########################################################################################

################# route map ###########################################

#######################################################################

- route map 类似于脚本语言

- 他们的工作就像一个更先进的访问控制列表

        自上而下的处理

        一旦有一个匹配,立刻停止继续匹配其他条件

- 有序号功能,方便编辑

    插入操作

    删除操作

- route-map 使用命名的方式识别,而不是编号

- 匹配一个条件可以设置一个选项,类似于脚本语言中的 if then


◆路由图的运行方式

- match语句可以匹配多个条件

- match语句匹配并排条件时 使用逻辑 或

- 至少要有一个被允许的路由进行重分布

    route-map my_bgp permit 10

        match ip address X Y Z 逻辑或


    route-map my_bgp deny 20

        match aaa

        match bbb

        match ccc    逻辑与


- 定义多个match语句使用逻辑与

- 在重分布里所有匹配条件 必须要在路由表里有一条实际的路由

- 使用路由图进行重分布过滤时,允许或者拒绝的只是是否要被重分布。



◆route-map 的应用

route-map的主要功能

    - 重分布时的过滤:使用更先进的方式来确定重分布的内容

    - 基于策略的路由(PBR):依据需求使用其他的标准来确定去往目的路由的转发方式

    - BGP 策略执行:是BGP 路由策略的主要界定工具

 PBR:首先理解路由表的作用(3个)

            路由转发基于路由表,有则转发,无则丢弃

            直连自动生成路由

            路由匹配遵循最长匹配

    PBR就是可以根据策略路由数据表,不用看路由表内容。


◆route-map 命令

    - 定义route-map名字和类型

      router(config)#

        route-map map-tag [permit | deny] [sequence-number]


    - 定义匹配条件

      router(config-route-map)#

        match {conditions}-----ACL或前缀列表或接口or tag


    - 定义匹配了条件而执行的动作

      router(config-route-map#

        set {actions}


    - 可以详细控制路由被重分布到路由协议

       router(config-router)#

          redistribute protocol [process id] route-map-tag


match 命令

 router(config-route-map)#


    match定义匹配的条件

    这里的是否匹配直接影响了重分布的操作

    match {options}:

     ip address ACL

     ip route-source ACL

     ip next-hop ACL

     interface type number

     metric metric-value

     route-type [external | internal | level-1 | level-2 | local]


route-map 重分布

router(config)#router ospf 10

router(config-router)# redistribute rip router-map-redis-rip subnets

- 匹配ACL 23 或29 的路由条目被重分布到ospf中的 度量为500 外部类型为1

- 匹配ACL 37的路由条目不能被重分布

- 所有其他的路由被重分布到ospf的度量值我5000外部类型

router(config)#

route-map redis-rip permit 10

match ip address 23 29

set metric 500

set metric-type type-1


route-map redis-rip deny 20

match ip address 37


route-map redis-rip permit 30

set metric 5000

set metric-type type-2

没有match语句,就是match所有的意思


router(config)#

access-list 23 permit 10.1.0.0 0.0.255.255

access-list 29 permit 172.16.1.0 0.0.0.255

access-list 37 permit 10.0.0.0 0.0.0.255


实验部分:

    wKioL1ZlRUfAJFU_AAKqHsnEaFU579.jpg

步骤:

1,简化拓扑,down掉R4 R5

2,配置匹配数据流

    access-list 11 permit 1.1.11.0

    access-list 12 permit 1.1.12.0

    access-list 14 permit 1.1.14.0

    access-list 22 permit 1.1.22.0

    access-list 23 permit 1.1.23.0

2, R2:

    route-map test per 10

        match ip address 11

        set metric-type type-2

   route-map test permit 20

        match ip add 12

        set metric 70

    route-map test permit 30

        match ip add 14

        set metric 80

    route-map test permit 40

        match ip add 22

        set metric-type type-1

    route-map test deny 50

        match ip add 23

    route-map test permit 9999-->设置较大数值,以便日后插入新的route-map语句

    router ospf 1

        redistribute rip subnets route-map test

3, R5:

        sho ip ro 查看








                               总结

- passive-interface命令用来控制路由更新

- 分布列表使用ACL 去控制路由更新

- 分布列表可以用于接口中 也可以用于路由重分布

- route-map是一个比较复杂的工具,用于各种操纵和过滤,如果符合条件,则使用动作

- 使用route-map可以简化在重分布张总控制路由条目的难度

- 管理距离是一种在一个路由器上运行多个路由协议,从而评估该路由协议选择的路径的可信度

- COSCO iOS 为每个路由协议都分配一个值,这个值可以修改

- 在重分布中,管理距离的修改可以使路由的操作更准确    


#####################################################################################################################   PBR   #################################

#################################################################


- 通过route-map 实现

- 在路由表之上

wKioL1ZlXHnTEb69AABKuGYK1Ms026.png

步骤:

        1,启用IP

        2,R3启用loopback

        3,全网ospf

          正常R1-->R3 路径是 R1 R2 R3

    实验需求:

        R1-->R3 路径是 R1 R2 R4 R3

       步骤:

            1,R2 使用ACL抓流量

                access-list 10 permint 12.1.1.0 0.0.0.255

            2, 设置路径

                route-map PBR permit 10

                match ip add 10

                set ip next-hop 24.1.1.4

            3, 接口调用

                int f0/0

                    ip policy route-map PBR 

            4,验证

                R1 traceroute 33.1.1.1

        注意:PBR有自动检测下一跳出接口是否连通功能,当下一跳不可达时,PBR自动失效,数据重               新根据路由表查询路径


###### PBR track 功能  #############

####################################    

      当R4 出问题时,PBR就不能检测到了。(R4 shut f0/0)  

      利用tack验证 下一跳的可达性

        1,启用track

         route-map PBR permit 10

            set ip next-hop verify-availability 24.1.1.4 1(1表示定义首选下一跳) track 1

        2,定义track

         track 1 rtr 1 reachability

        3,使用SLA 验证可达性

         ip sla monitor 1(1 与rtr的1对应)

                type echo protocol ipicmpecho 24.1.1.4

                frequency 5 (定义刷新频率,默认60秒)

         4,SLA 开始时间 存活时间

            ip sla monitor schedule 1 life forever start-time now

         5,查看

            show ip sla monitor statistics

            show track

            show route-map

         6, 验证

            R4 :int f0/0

                      shut 

            R1 ping 33.1.1.1 

            


###########################################################################################

理解 forward-address


wKioL1ZldQ3wny5-AABJZyw3p-s302.png

wKioL1ZldXniKJscAAAlPlxbqWo619.png

1,R1 F0/0 123.1.1.1

      F1/0 12.1.1.1

   R2 f0/0 123.1.1.2

      f1/0 12.1.1.2

   R3 f0/0 123.1.1.3

2, 起ospf eigrp

3,R2 eigrp重分布进ospf

当存在forward-address时,必须是ospf路由表中可达的地址,才能通信

4,R3 ip route 0.0.0.0 0.0.0.0 123.1.1.1

5, R1 trace R3 要绕路到R2

6,sho ip os da ex 33.1.1.0

   没有forward-add

6, R1:

      router os 1

        net 123.1.1.0 0.0.0.255 a 0

7, R2:

        sho ip os ex 33.1.1.0 出现了forward-add 123.1.1.3

   但是R2 不能通过ospf可达123.1.1.3(虽然可以通过直连可达),所以 33.1.1.0网段也就消失了

8,R2:把与R3的直连口也宣告进ospf,让33.1.1.0的forward-add通过ospf学到,

        router ospf 1

            net 123.1.1.0 0.0.0.255 a 0

 此时再trace 33.1.1.1 路径就是R2---R3


###################################################################################

  




            

你可能感兴趣的:(路由控制)