本帖最后由 miucat 于 2023-9-23 23:54 编辑
由于系统文章大小限制,未能加图,请大家直接下载原文附件。
========================================
IP路由选择原理 管理距离(AD值)
1.设置有类路由查找方式 Router(config)#no ip classless Router(config)#no ip cef 2.设置无类路由查找方式 Router(config)#ip classless 有类及无类路由协议 协议分类 1.有类路由选择协议:RIPv1、IGRP 2.无类路由选择协议:OSPF、EIGRP、ISIS、BGP等 3.根本区别在于:更新消息中是否包含网络掩码信息 静态路由 1.使用指向下一条的静态路由 Router(config)# Ip route 192.168.10.0 255.255.255.0 192.168.1.1 2.使用关联出接口的方式配置静态路由 Router(config)# Ip route 192.168.10.0 255.255.255.0 fa 0/0 //该条目将作为直连网络输入到路由表中 //如果出接口为广播型接口,可能会给接口下的节点造成额外的负担(ARP)
3.配置浮动静态路由 Router(config)#ip route 0.0.0.0 0.0.0.0 10.1.12.2 Router(config)#ip route 0.0.0.0 0.0.0.0 10.1.13.3 10 //配置静态路由的时候同时设置一下AD
1)配置R1 R1(config)#ip route 0.0.0.0 0.0.0.0 10.5.115.1 R1(config)#ip route 0.0.0.0 0.0.0.0 192.168.10.253 10 2)配置R2 R2(config)#ip route 0.0.0.0 0.0.0.0 10.5.116.1 R2(config)#ip route 0.0.0.0 0.0.0.0 192.168.10.254 10
R1(config)# Ip route 0.0.0.0 0.0.0.0 202.101.100.2 R1(config)# Ip route 192.168.0.0 255.255.0.0 192.168.254.1
EIGRP Metric的计算 1.Bandwidth 带宽 2.Delay 延迟 3.Reliability 可靠性 4.Loading 负载 5.MTU MTU
BW = 10^7 / 1544 * 256 = 6476(去掉小数) * 256 = 1657856 DLY = 20000/10 * 256 + 5000/10 * 256 =640000 Metric = 640000 + 1657856 = 2297856
DUAL扩散更新算法 几个术语: 1.后继路由器 2.可行距离(FD) 3.可行后继路由器(FS) 4.通告距离(AD) 5.可行条件,或称可行性条件(FC)
EIGRP基本配置 1.基本配置 Router(config)# router eigrpautonomous-system Router(config-router)# networknetwork-number [wildcard-mask]
例子: Router(config)# router eigrp 90 Router(config-router)# network 192.168.10.00.0.0.255 2.查看EIGRP的运行情况 Router# show ip eigrp neighbors Router# show ip eigrp topology Router# show ip route eigrp Router# show ip protocols Router# show ip eigrp traffic Router# show ip eigrp interface Passive-interface配置 1.被动接口配置 Router(config-router)#passive-interface {type number} | default
例: Router(config-router)#passive-interface default Router(config-router)#passive-interface S1/0 EIGRP默认路由 1.将路由表中某个网络宣告为缺省网络 Router(config)# Ip default-network network-number 例:Router(config)# Ip default-network 192.168.20.0 2.将指定的网络号通告给其他的路由器 Router(config-router)# network network-number 例:Router(config-router)# network192.168.20.0
EIGRP路由汇总 1.关闭自动汇总 Router(config-router)# no auto-summary 2.配置手工汇总 Router(config-if)#ip summary-address eigrp as-number address mask[admin-distance] 例:Router(config-if)#ip summary-address eigrp 90 172.16.0.0255.255.248.0 20 注:ip summary-address eigrp进行汇总的路由默认AD=5 图:
EIGRP负载均衡 1. 等价负载均衡 1)配置最大等价路径 Router(config-router)# Maximum-paths maximum-path 例:Router(config-router)# Maximum-paths 10 注:默认为4条等价路径之间均衡IP负载,最大可为16条 2.非等价负载均衡 1)配置Variance倍数实现非等价负载均衡 Router(config-router)# Variance multiplier 例:Router(config-router)# Variance 4
注:multiplier默认值为1,范围1~128 路由必须是无环的。(即AD<FD min),FD<= FD min x multiplier 图:
EIGRP认证 1.路由器使用两种身份验证方式 1)简单密码身份验证 IS-IS,OSPF,RIPv2 2)MD5身份验证 OSPF,BGP,EIGRP,RIPv2 2.EIGRP MD5身份验证配置 1)定义key chain key chain name-of-chain key key-id key-string text accept-lifetime start-time {infinite |end-time | duration seconds} send-lifetime start-time {infinite |end-time | duration seconds} 例: Router1(config)#key chain kc Router1(config-keychain)#key 1 Router1(config-keychain-key)#key-string123456 2)关联key chain ip authenticationkey-chain eigrp autonomous-system name-of-chain 例:Router1(config-if)# ip authenticationkey-chain eigrp 90 kc 3)启用认证 ip authentication mode eigrpautonomous-system md5 例:ip authentication mode eigrp 90 md5 优化EIGRP实施 1.设置末节EIGRP路由器 Router(config-router)# Eigrp stub [ receive-only | connected| static | summary | redistributed ] 例:Router(config-router)# Eigrp stub eigrp stub static redistributed
多区域OSPF的概念及部署 OSPF基础知识回顾 OSPF协议包直接封装于IP,协议号89。 组播地址:所有OSPF路由器——224.0.0.5;DRBDR——224.0.0.6 OSPF路由协议的管理距离:110 DR、BDR 1.DR选举比较顺序: 1)接口优先级数字越大越优 2)Router ID越大越好 3)非抢占 2.三层以太网接口运行OSPF,通过配置OSPF网络类型来跳过DR、BDR选举 Switch(config-if)#ip ospf network point-to-point OSPF Cost 1.OSPF接口COST=参考带宽(10的8次方)/ 接口带宽 2.修改参考带宽 Router(config-router)#auto-cost reference-bandwidth <参考带宽以Mbits为单位> 例:Router(config-router)#auto-cost reference-bandwidth 1000 3.手动修改接口Cost Router(config-if)# ip ospf cost 100 4.修改接口带宽,以修改Cost Router(config-if)#bandwidth 100000 5.查看接口OSPF Cost Router#sh ip ospf interface S1/0 OSPF多区域 1.OSPF进程及网络宣告 Router(config)#router ospf process-id [vrf vpn-name] Router(config-router)#router-id ip-address Router(config-router)# network ip-address wildcard-mask area area-id 例: Router(config)#router ospf 110 Router(config-router)#router-id 2.2.2.2 Router(config-router)# network 10.0.12.0 0.0.0.255 area 0 2.OSPF配置验证 Router#show ip ospf 显示OSPF路由器ID,OSPF定时器以及LSA信息 Router#show ip ospf interface S1/0 显示各种定时器和邻接关系 Router#show ip route ospf 显示路由器学习到的OSPF路由 Router#show ip protocols 显示IP路由协议参数
Router#debug ip ospf events 显示OSPF相关事件 Router#debug ip ospf adj 跟踪邻接关系的建立和终止 Router#debug ip ospf packet 查看正在传输的OSPF分组 3. DR及BDR选举的控制,配置接口优先级 Router(config-if)#ip ospf priority 10 OSPF网络类型 1. OSPF网络类型包括以下几种 点到点 广播 非广播 NBMA (RFC) P2MP (RFC) P2MP nonbroadcast(CISCO) Broadcast(CISCO) P2P(CISCO) 2.NBMA网络选择OSPF的模式 1)在帧中继多点子接口上,默认的OSPF模式为非广播 2)在点到点帧中继子接口上,默认的OSPF模式为点到点 3)在帧中继多点子接口上,默认的OSPF模式为非广播 3.配置OSPF网络模式 Router(config-if)#iip ospf network [{broadcast | non-broadcast | point-to-multipoint[non-broadcast] | point-to-point}] 例:Router(config-if)#iip ospf network point-to-point 4.NBMA网络下OSPF的运行(需要完善) 1)方式1
R2(config)#interface serial 0/0 R2(config-if)#encapsulation frame-relay R2(config-if)#ip ospf network broadcast 2)方式2
R2(config)#interface serial 0/0 R2(config-if)#encapsulation frame-relay R2(config-if)#ip ospf network non-broadcast
R2(config)#router ospf 110 R2(config-router)#network 202.101.100.0 0.0.0.255 area 0 R2(config-router))#neighbor 202.101.100.1 priority 0 R2(config-router)#neighbor 202.101.100.3 3)方式3
R2(config)#interface Serial0/0 R2(config-if)#encapsulation frame-relay R2(config-if)#ip ospf network point-to-multipoint
R2(config)#router ospf 100 R2(config-router)#network 202.101.100.0 0.0.0.255 area 0
R3(config)#interface Serial0/0 R3(config-if)#encapsulation frame-relay R3(config-if)#ip ospf network point-to-multipoint R3(config-if)#ip ospf priority 0
OSPF综合实验
OSPF LSA及特殊区域详解 LSA类型及详解 1.查看LSDB: Router#show ip ospf database OSPF区域类型与LSA泛洪范围
OSPF特殊区域配置 1.STUB区域配置
R2(config-router)#area 1 stub R1(config-router)#area 1 stub 2. Totally Stub区域配置
R2(config-router)#area 1 stub no-summary R2(config-router)#area 1 default-cost 10 R1(config-router)#area 1 stub 3.Nssa区域配置
R2(config-router)#area 1 nssa default-information-originate R1(config-router)# area 1 nssa 注:nssa配置部自动提供默认路由,需添加default-information-originate关键字 4.Totally Nssa区域配置
R2(config-router)#area 1 nssa no-summary R1(config-router)# area 1 nssa //注:Totally Nssa配置自动提供默认路由 5.查看ospf区域信息 Router1#sh ip ospf 110 database ? adv-router AdvertisingRouter link states asbr-summary ASBRsummary link states database-summary Summaryof database external Externallink states network Networklink states nssa-external NSSAExternal link states opaque-area OpaqueArea link states opaque-as OpaqueAS link states opaque-link OpaqueLink-Local link states router Routerlink states self-originate Self-originatedlink states summary Networksummary link states | Output modifiers 6.查看OSPF信息 Router#sh ip ospf OSPF高级特性及配置 Passive-interface 1.passive-interface配置 Router(config-router)#passive-interface default Router(config-router)#no passive-interface S1/0 OSPF默认路由的注入 Router(config)#ip route 0.0.0.0 0.0.0.0 10.1.12.2 Router(config-router)#default-information originate 注:需要有一条有效的默认路由 也可以加always关键字忽略前一条限制default-information originate always OSPF路由汇总 1.区域内路由汇总
R3(config-router)# area 2 range 172.16.0.0 255.255.0.0 cost 15000 2.外部路由汇总
R1(config-router)# summary-address 10.1.0.0 255.255.0.0 Virtual-link 虚链路 1.建立虚链路
R3(config-router)# area area-id virtual-link router-id[authentication [message-digest | null]] [hello-interval seconds][retransmit-interval seconds] [transmit-delay seconds] [dead-interval seconds] [[authentication-keykey] | [message-digest-key key-id md5 key]] 例: R2(config-router)#area 2 virtual-link 3.3.3.3 R3(config-router)#area 2 virtual-link 2.2.2.2 2.验证虚链路 Router#show ip ospf virtual-link Router#show ip ospf neighbor Router#show ip ospf database Router#debug ip ospf adj OSPF身份验证 1.OSPF身份验证(明文) 1)接口认证 Router(config-if)# ip ospf authentication-key 123456 Router(config-if)# ip ospf authentication 2)区域认证 Router(config-if)# ip ospf authentication-key 123456 Router(config-router)# area 1 authentication 2.OSPF身份验证(密文) 1)接口认证 Router(config-if)# ip ospf message-digest-key key-id md5 key Router(config-if)# Ip ospf authentication message-digest 例: Router(config-if)# ip ospf message-digest-key 1 md5 abcdefgh Router(config-if)# Ip ospf authentication message-digest 2)区域认证 Router(config-if)# ip ospf message-digest-key key-id md5 key Router(config-router)# area 0 authentication messae-digest 例: Router(config-if)# ip ospf message-digest-key 1 md5 abcdefgh Router(config-router)# area 0 authentication messae-digest 3.OSPF虚链路身份认证(明文)
R1(config-router)# area 0 authentication R1(config-router)# area 1 virtual-link 3.3.3.3 authentication-key 123456
R3(config-router)# area 0 authentication R3(config-router)# area 1 virtual-link 1.1.1.1 authentication-key 123456 4.查看验证OSPF身份验证 Router#show ip ospf neighbor Router#show ip ospf interface
Router#debug ip ospf obj Router#debug ip ospf adj OSPF Process ID小知识点 位于同一台路由器上的不同OSPF进程之间不会自动共享路由信息,需要彼此路由重发布。 路由重发布Redistribute Routing Protocols 路由重发布的基本概念
路由重发布实施要点 1.路由反馈 feedback-产生次优路径
2.各种路由Metric值
| 默认种子度量值 | | | | | | BGP为1,其他路由为20,OSPF之间度量值保持不变 | | | | |
注:路由重发布到RIP/EIGRP后,默认的度量值为0,视为无穷大。这意味着无效的路由。需要手动设置一个非0的Metric值,以确保其正常转发。 路由重发布的实现 1.OSPF到RIP的路由重发布 Router(config)#router rip Router(config-router)#redistribute ospf 110 metric 3 2. OSPF到EIGRP的重发布 Router(config)#router eigrp 90 Router(config-router)#redistribute ospf 110 metric 100000 1000 255 11500 3. EIGRP到OSPF的重发布 Router(config)#router ospf 1 Router(config-router)#redistribute eigrp 100 subnets 注:subnets是包括子网,不加subnets关键字只重发布主网络172.16.0.0之类 路由策略 Routing Policy Passive-interface 1.Passive-interface在各种路由的表现 RIP/IGRP——在指定接口不向外发送路由更新,但是接收路由更新 EIGRP——在指定接口不向外发送Hello消息,而且通过这个接口不与其他路由器建立邻接关系,不发送其他EIGRP的数据流 OSPF——在指定接口不向外发送Hello消息,而且通过这个接口不与其他路由器建立邻接关系,不发送和接收路由信息。(有些IOS版本中,OSPF在被动接口上发送Hello和DBD分组,但是不发送LSU。) 2. Passive-interface的配置 1)将某个接口配置为被动接口 Router(config-router)# passive-interface int-type int-num 例:Router(config-router)# passive-interface f0/1 2)将所有接口配置为被动接口,并手动激活特定接口 Router(config-router)# passive-interface default Router(config-router)# no passive-interface int-type int-num 例:Router(config-router)# passive-interface default Router(config-router)# nopassive-interface S1/0 3)passive-interface在RIP单播更新中的应用
R1(config) router rip R1(config-router)# passive-interface fast 0/0 R1(config-router)# neighbor 192.168.123.2
R2(config) router rip R2(config-router)# passive-interface fast 0/0 R2(config-router)# neighbor 192.168.123.1 4)passive-interface在EIGRP单播更新中的应用(实际上并无需也不能应用于EIGRP的单播更新中) 如果是EIGRP环境,需实现单播更新,那么路由更新接口不能被PASSIVE(这与RIP不一样),而是直接使用neighbor命令去指定邻居即可。 如果接口一旦被PASSIVE,则即使手工指定了neighbor,也是无法正常建立EIGRP邻居关系。 控制管理距离AD 1.修改OSPF的AD值 Router(config-router)# distance AD ip-src(router-id)wildmask access-list 例:Router(config-router)# distance 150 2.2.2.2 0.0.0.0 1
Router(config-router)# distance ospf external(5类) ad1 inter-area(3类) ad2 intra-area(1类) ad3 例:Router(config-router)# distance ospf external 200 inter-area 150intra-area 100 2.修改EIGRP的AD值 Router(config-router)# distance AD ip-src wildmask access-list 例:Router(config-router)# distance 150 10.1.12.2 0.0.0.0 1 Router(config-router)# distance eigrp internal-distanceexternal-distance 例:Router(config-router)# distance eigrp 100 200 3.修改RIP的AD值 Router(config-router)# distance AD ip-src wildmask access-list 例:Router(config-router)# distance 150 10.1.12.2 0.0.0.0 1 4.调整路由协议的AD值控制路由的示例
5.调整AD值解决双点双向重分发的次优路径和feedback问题(后期需要完善)
R3(config)#access-list 10 permit 192.168.35.0 R3(config)#access-list 10 permit 192.168.45.0 R3(config)#access-list 10 permit 5.5.5.0
R3(config)#router ospf 110 R3(config-router)#distance 125 1.1.1.1 0.0.0.0 10
R4(config)#access-list 10 permit 192.168.35.0 R4(config)#access-list 10 permit 192.168.45.0 R4(config)#access-list 10 permit 5.5.5.0
R4(config)#router ospf 110 R4(config-router)#distance 125 1.1.1.1 0.0.0.0 10
Route-map 1.Route-map的配置 1)可用的match语句 match ip address 匹配访问列表或前缀列表 match length 根据分组的第三层长度进行匹配 match interface 匹配下一跳出接口为指定接口之一的路由 match ip next-hop 匹配下一跳地址为特定访问列表中被允许的那些路由 match metric 匹配具有指定度量值的路由 match route-type 匹配指定类型的路由 match community 匹配BGP共同体 match tag 根据路由的标记进行匹配 2)可用的set语句 set metric 设置路由协议的度量值 set metric-type 设置目标路由协议的度量值类型 set default interface 指定如何发送这样的分组 set interface 指定如何发送这样的分组 set ip default next-hop指定转发的下一跳 set ip next-hop 指定转发的下一跳
set next-hop 指定下一跳的地址,指定BGP的下一跳 set as-path set community set local-preference set weight set origin set tag 注:default 关键字优先级低于明细路由 3)Route-map配置的语法
4)Route-map配置示例 重发布时设置metric值
R2(config)#access-list 1 permit 192.168.1.0 R2(config)#access-list 1 permit 192.168.2.0 R2(config)#access-list 2 permit 192.168.3.0
R2(config)#route-map test permit 10 R2(config-route-map)#match ip address 1 R2(config-route-map)#set metric 2 R2(config)#route-map test permit 20 R2(config-route-map)#match ip address 2 R2(config-route-map)#set metric 3
R2(config)#router rip R2(config-router)#redistribute ospf 110 route-map test 5)Route-map配置示例2 在重发布静态路由时设置metric值以实现路由选择,从而按目的地址分流
R1配置 R1(config)#Ip route 10.1.1.0 255.255.255.0 10.1.254.1 R1(config)#Ip route 10.1.2.0 255.255.255.0 10.1.254.1 ! R1(config)#access-list 1 permit 10.1.1.0 R1(config)#access-list 2 permit 10.1.2.0 ! R1(config)#route-map miucat permit 10 R1(config-route-map)#match ip address 1 R1(config-route-map)#set metric 10 R1(config)#route-map miucat permit 20 R1(config-route-map)#match ip address 2 R1(config-route-map)#set metric 20 ! R1(config-router)#router ospf 110 R1(config-router)#redis static route-map miucat
R2配置 R2(config)#Ip route 10.1.1.0 255.255.255.0 10.1.254.5 R2(config)#Ip route 10.1.2.0 255.255.255.0 10.1.254.5 ! R2(config)#access-list 1 permit 10.1.1.0 R2(config)#access-list 2 permit 10.1.2.0 ! R2(config)#route-map miucat permit 10 R2(config-route-map)#match ip address 1 R2(config-route-map)#set metric 20 R2(config)#route-map miucat permit 20 R2(config-route-map)#match ip address 2 R2(config-route-map)#set metric 10 ! R2(config-router)#router ospf 110 R2(config-router)#redis static route-map miucat 6)Route-map配置示例3 Route-map解决双点双向重分发feedback及次优路径问题
RouterA配置 RouterA(config)#access-list 1 permit 192.168.1.0 0.0.0.255 RouterA(config)#route-map OSPF_into_RIP deny 10 RouterA(config-route-map)#match ip address 1 RouterA(config)#route-map OSPF_into_RIP permit 20 RouterA(config)#router rip RouterA(config-router)#redistribute ospf 110 route-map OSPF_into_RIP RouterA(config)#router ospf 110 RouterA(config-router)#redistribute rip subnets
RouterB配置 RouterB(config)#access-list 1 permit 192.168.1.0 0.0.0.255 RouterB(config)#route-map OSPF_into_RIP deny 10 RouterB(config-route-map)#match ip address 1 RouterB(config)#route-map OSPF_into_RIP permit 20 RouterB(config)#router rip RouterB(config-router)#redistribute ospf 110 route-map OSPF_into_RIP RouterB(config)#router ospf 110 RouterB(config-router)#redistribute rip subnets Distribute-list 分发控制列表 1. distribute-list的配置 1)Out方向的分发列表 Router(config-router)#distribute-list {access–list-number | name}out [interface–name | routing–process [routing-process parameter]] 例:Router(config-router)#distribute-list 1 out f0/1 2)in方向的分发列表 Router(config-router)# distribute-list [access–list-number | name] |[route-map map-tag] in [interface-type interface-number]] 例:Router(config-router)#distribute-list 1 in f0/0 3)配置示例1(单一路由协议环境下-RIP)out方向
R2(config)# access-list 1 deny 192.168.3.0 R2(config)# access-list 1 permit any R2(config)# router rip R2(config-router)# distribute-list 1 out fa 1/0 4)配置示例2(单一路由协议环境下-RIP)in方向
R2(config)# access-list 1 deny 192.168.3.0 R2(config)# access-list 1 permit any R2(config)# router rip R2(config-router)# distribute-list 1 in fa0/0 3)配置示例3(单一路由协议环境下-OSPF)in方向
R2(config)# access-list 1 deny 192.168.3.0 R2(config)# access-list 1 permit any R2(config)# router ospf 110 R2(config-router)# distribute-list 1 in fa0/0 注:由于OSPF路由之间传递的时LSA,所以,虽然distribute-list能拦截R2的192.168.3.0的路由,但并不会影响R3从LSA获取此路由信息。 4)配置示例4(单一路由协议环境下-OSPF)out方向
R2(config)# access-list 1 deny 192.168.3.0 R2(config)# access-list 1 permit any R2(config)# router ospf 1 R2(config-router)# distribute-list 1 out 注:并不能阻止R3通过LSA获取路由条目,而且在OSPF上使用out方向的distribute-list并不能指定出接口。但是,可以拦截由本地重发布进来的外部路由 5)配置示例5(单一路由协议环境下-OSPF)out方向,阻止外部路由
R1(config)# access-list 1 deny 192.168.3.0 R1(config)# access-list 1 permit any
R1(config)# router ospf 110 R1(config-router)# redistribute connected subnets R1(config-router)# network 192.168.12.1 0.0.0.0 area 0 R1(config-router)# distribute-list 1 out 注:可以拦截由本地重发布进来的外部路由 6)配置示例6(重发布时部署分发列表)
R2(config)#access-list 1 permit 1.1.1.0 R2(config)#router ospf 110 R2(config-router)#redistribute connected subnets R2(config-router)#redistribute rip metric 10 subnets R2(config-router)#distribute-list 1 out rip 注:我用distribute-list阻挡从rip重发布过来的路由,并不会阻挡从直连接口重发布过来的路由 Prefix-list 1.使用扩展ACL匹配路由及掩码 192.168.8.0/24 192.168.9.0/24 192.168.10.0/24 192.168.11.0/24
access-list 100 permit ip 192.168.8.0 0.0.3.0 255.255.255.0 0.0.0.0 2.prefix-list的配置 Router(config)# ip prefix-list {list-name [seq number] {deny |permit} network/length [ge ge-value] [le le-value] Router(config)# ip prefix-list miucat permit 192.168.8.0/22 ge 24 le24 3.prefix-list常见示例 匹配某条特定路由:192.168.1.0/24 ipprefix-list pxlist 192.168.1.0/24 匹配默认路由 ipprefix-list pxlist permit 0.0.0.0/0 匹配所有主机路由 ipprefix-list pxlist permit 0.0.0.0/0 ge 32 匹配所有路由(any) ipprefix-list pxlist permit 0.0.0.0/0 le 32 4. R1(config)# ip prefix-list list1 deny 172.16.32.0/21 R1(config)# ip prefix-list list1 permit 0.0.0.0/0 le 32 R1(config)# route-map test permit 10 R1(config-route-map)# match ip address prefix-list list1 Path Control Offset-list 偏移列表 注:可用于RIP/EIGRP 1.Office-list配置 router(config-router)#offset-list {access–list-number | name}{in|out} offset [interface-type interface-number] 例:router(config-router)#offset-list 1 out 2 f0/1 2. offset-list的示例1(RIP)
RouterD(config)#access-list 1 permit 3.3.3.0 RouterD(config-router)#router rip RouterD(config-router)#offset-list 1 out 2 serial 0/0 3.offset-list示例2(EIGRP)
R2(config)#access-list 1 permit 192.168.12.0 R2(config)#router rip R2(config-router)#offset-list 1 out 10000 fastEthernet 1/0 4.Offset-list实施案例
Policy-based routing 策略路由 1.可配合的match 1)PBR可以配合匹配数据包大小的match使用 Router(config)# route-map rp-name Router(config-route-map)# match ipaddress {access-list-number|name} […access-list-number|name]|prefix-listprefix-list-name […prefix-list-name] 例:Router(config)#access-list1 permit 192.168.1.0 0.0.0.255 Router(config)#route-map test permit 10 Router(config-route-map)# match ip address1 2)PBR可以配合匹配数据包IPaccess-list、prefix-list的route-map使用 Router(config-route-map)# match length min max 例:Router(config)#route-map test permit 10 Router(config-route-map)# match length10000 100000 2.可配合的set语句 1)设定分组的下一跳IP(必须为直连IP) set ip next-hop ip-address […ip-address] 例:Router(config-route-map)#set ip next-hop 202.101.100.2 2)设定分组的出接口 set interface type number […type number] 例:Router(config-route-map)#set interface s1/0 3. 1)应用PBR(对进入接口的数据流量生效,本地始发的流量无效) Router(config-if)# ip policy route-map test 2)应用PBR(针对本地始发的流量生效) Router(config)# ip local policy route-map test 4.PBR示例1(根据access-list决定下一跳)
Router(config)#access-list 1 permit 192.168.1.0 0.0.0.255 Router(config)#access-list 2 permit 192.168.2.0 0.0.0.255 Router(config)#route-map test permit 10 Router(config-route-map)#match ip address 1 Router(config-route-map)#set ip next-hop 202.101.100.2 Router(config)#route-map test permit 20 Router(config-route-map)#match ip address 2 Router(config-route-map)#set ip next-hop 202.101.99.2 Router(config)#int f0/0 Router(config)#ip policy route-map test 5)PBR示例2(set ipnext-hop可设置多个下一跳)
GW(config)#access-list 1 permit any GW(config)#route-map PBR permit 10 GW(config-route-map)#match ip address 1 GW(config-route-map)#set ip next-hop 10.1.1.2 10.2.2.2 GW(config)#int f0/0 GW(config-if)# ip policy route-map PBR 注:当ISP1宕机时,也许会由于GW和ISP1之间的透明设备,使得GW并不能知道ISP1已经宕机了 6)PBR示例3(思科私有的需借助CDP的verify-availability参数)
GW(config)#access-list 1 permit any GW(config)#route-map PBR permit 10 GW(config-route-map)#match ip address 1 GW(config-route-map)#set ip next-hop 10.1.1.2 10.2.2.2 GW(config-route-map)#set ip next-hop verify-availability GW(config)#int f0/0 GW(config-if)# ip policy route-map PBR 7)PBR示例4(远端状态监控ip sla)
GW(config)#ip sla monitor responder GW(config)#ip sla monitor 1 GW(config)#type echo protocol ipIcmpEcho 10.1.1.2 source-ipaddr10.1.1.1 frequency 10 GW(config)#ip sla monitor schedule 1 life forever start-time now GW(config)#track 1 rtr 1 reachability
GW(config)#access-list 1 permit any GW(config)#route-map PBR permit 10 GW(config-route-map)#match ip address 1 GW(config-route-map)#set ip next-hop verify-availability 10.1.1.2 10track 1 GW(config-route-map)#set ip next-hop verify-availability 10.2.2.2 20track 2 8)PBR示例5(ip next-hop的recursive关键字,无需直连)
GW(config)#access-list 1 permit any GW(config)#route-map PBR permit 10 GW(config-route-map)#match ip address 1 GW(config-route-map)#set ip next-hop 10.2.2.2 GW(config-route-map)#set ip next-hop recursive 10.1.12.2
GW(config)#ip route 10.1.12.0 255.255.255.0 10.1.1.2 GW(config)#ip route 0.0.0.0 0.0.0.0 serial s0/2 9)PBR示例6(根据源IP access-list决定下一跳)
Router(config)#access-list 1 permit 192.168.1.0 0.0.0.255 Router(config)#access-list 2 permit 192.168.2.0 0.0.0.255
Router(config)#route-map test permit 10 Router(config-route-map)#match ip address 1 Router(config-route-map)#set ip next-hop 10.1.1.2
Router(config)#route-map test permit 40 Router(config-route-map)#match ip address 2 Router(config-route-map)#set ip next-hop 10.2.2.2
Router(config)#int f0/0 Router(config-if)#ip policy route-map test Router(config)#ip route 0.0.0.0 0.0.0.0 10.1.1.2 Router(config)#ip route 0.0.0.0 0.0.0.0 10.2.2.2 10 10)PBR示例7(ip next-hop的优先级高于默认路由)
R1(config)#access-list 1 permit 10.1.1.0 0.0.0.255
R1(config)#route-map PBR permit 10 R1(config-route-map)#match ip address 1 R1(config-route-map)#set ip next-hop 10.1.13.3
R1(config)#int f0/0 R1(config-if)#ip policy route-map PBR
R1(config)#ip route 0.0.0.0 0.0.0.0 10.1.12.2 11)PBR示例8(ip default next-hop的优先级低于静态路由)
R1(config)#access-list 1 permit 10.1.1.0 0.0.0.255
R1(config)#route-map PBR permit 10 R1(config-route-map)#match ip address 1 R1(config-route-map)#set ip default next-hop 10.1.13.3
R1(config)#int f0/0 R1(config-if)#ip policy route-map PBR
R1(config)#ip route 10.1.23.0 255.255.255.0 10.1.12.2 12)PBR示例9(PBR配合nat指定出口运营商实现分流)
GW(config)#access-list 1 permit 192.168.1.0 0.0.0.255 GW(config)#access-list 2 permit 192.168.2.0 0.0.0.255
GW(config)#route-map PBR permit 10 GW(config-route-map)#match ip address 1 GW(config-route-map)#set ip next-hop 11.1.1.2
GW(config)#route-map PBR permit 20 GW(config-route-map)#match ip address 2 GW(config-route-map)#set ip next-hop 22.2.2.2
GW(config)#route-map nat1 permit 10 GW(config-route-map)#match ip address 1 GW(config-route-map)#match interface serial0/0
GW(config)#route-map nat2 permit 10 GW(config-route-map)#match ip address 1
GW(config)#route-map nat3 permit 10 GW(config-route-map)#match ip address 2 GW(config-route-map)#match interface serial0/1
GW(config)#route-map nat4 permit 10 GW(config-route-map)#match ip address 2
GW(config)#ip nat inside source route-map nat1 interface serial0/0overload GW(config)#ip nat inside source route-map nat2 interface serial0/1overload GW(config)#ip nat inside source route-map nat3 interface serial0/1overload GW(config)#ip nat inside source route-map nat4 interface serial0/0overload 13)思考题
14)PBR的验证 Router#show ip policy Router#show route-map map-name 综合实验 ======================================== 加图就超大小了,大家直接下载附件吧
|