路由器获取未知网段的方法:
- 静态路由:尤管理员手写的路由条目
- 动态路由:所有路由器上运行同一种动态路由协议,之后通过路由器之间的沟通 协商 最终生成路由条目加载于路由表中
一.静态路由
1.基础配置
[R8]ip route-static 192.168.3.0 24 192.168.2.2 静态路由 通往192.168.3.0 24 网段 下一跳为 192.168.2.2
Pre:优先级 当两条路由条目目标网段相同时,仅加载优先级高的路由条目到路由表中。 优先级的取值范围:0-255 直连默认为0 静态默认为60 ; 优先级的数值越高,优先级越低。
静态路由选路原则:尽量选择路径最短的路由条目
2.扩展配置:
- 负载均衡:当路由器访问同一个目标且目标具有多条开销相似的路径时,可以让设备将流量拆分后延多条路径同时进行传输,以达到叠加带宽的作用。
- 环回接口:路由器上配置的一个虚拟接口,一般用于网络测试,不需要设备支持。[R7]interface LoopBack 0 进入环回接口,该接口编号为0
- 手工汇总:当路由器可以访问多个连续的子网时,若均通过相同的下一跳,可以将这些网段进行汇总计算,之后仅编撰汇总后的静态路由即可达到减少路由条目,提高转发效率的目的。
- 路由黑洞:在汇总中若包含实际不存在的网段时,可能会使数据包有去无回,造成链路资源的严重浪费。(合理的子网划分可以尽量减少路由黑洞)
- 缺省路由:一条不限定目标的路由;查表时,若本地路由均不匹配,则将匹配缺省路由。
[R17]ip route-static 0.0.0.0 0 12.1.1.1
特征:一旦路由黑洞和缺省路由相遇,将百分之百形成路由环路。
-
空接口路由:在黑洞路由器上,配置一条到达汇总网段指向空接口的路由。
①空接口:null0接口,路由器的一个虚拟接口,如果一条路由条目的出口为空接口,则代表将该条路由直接丢弃。
②路由表匹配原则:最长匹配原则/精确匹配原则
[R16]ip route-static 192.168.0.0 22 NULL 0
-
浮动静态路由
[R18]ip route-static 192.168.2.0 24 12.0.0.2 preference 61
定义该条路由条目的优先级为61
[R18]display ip routing-table protocol static 查询由静态路由生成的路由表
[R19-GigabitEthernet0/0/1]shutdown 关闭接口
二.动态路由
1.静态路由与动态路由的优缺点
静态路由的缺点:
- 配置量大
- 不能基于拓扑的变化进行实时更新
动态路由的优点:可以基于拓扑的变化进行实时收敛
动态路由的缺点:
- 额外占用硬件资源
- 安全风险
- 选路错误的风险
2.动态路由的分类:
1.基于AS 进行分类IGP内部网关协议----EGP外部网关协议
AS:自制系统
AS:自制系统 标准编号 0-65535 其中 公有1-64511 私有64512-65535
AS之内运行的IGP内部网关协议:RIP OSPF ERIGRP ISIS
AS之间运行的EGP外部网关协议:BGP
2.基于工作特点进行分类:
①基于更新时是否携带子网掩码 有类别--不写带子网掩码 ,无类别---携带子网掩码
②-1 DV距离矢量协议:RIP ERIGRP 邻居间共享路由表 算法:贝尔曼福特算法
LS链路状态协议:OSPF ISIS 邻居间共享拓扑 算法:SPF
3.RIP :路由信息协议
(1)基础知识
基于UDP 520端口 使用跳数作为开销,周期更新和触发更新 ,存在 V1/V2/NG ,NG版本适用于IPV6
V1和V2两个版本的区别:
1.V1为有类别路由协议---不携带子网掩码;不支持子网划分,子网汇总
V2为无类别路由协议---携带子网掩码
2.V1为广播更新 255.255.255.255
V2位组播更新 224.0.0.9
3.V2拥有手工认证(加密)
周期更新的意义:
- 保活 每隔30s发送一次周期更新包 一共发6次
- 没有确认机制
RIP的破环机制(共享路由表+每30s发送更新包+异步更新——由于时间差,容易造成环路)
- 水平分割-------从此口入,不从此口出。(仅在直线型拓扑中可以避免环路,其主要作用是避免大量重复更新)
- 最大跳数15跳
- 触发更新(断联瞬间发送更新包):毒性逆转水平分割
抑制计时器:
30s更新 180s失效(发送6次更新包)同步180s抑制(毒性逆转水平分割:相互发送4次毒性包) 300s刷新
(2)RIP配置命令
V1版本 配置命令:
[R1]rip 1 启动时定义进程号 默认为1 仅具有本地意义
[R1-rip-1]version 1
宣告:rip只能进行主类宣告 基于宣告网段的主类 找到属于该网段的接口
- 激活接口-收发rip信息 2.该接口的信息可以共享给邻居
[R1-rip-1]network 1.0.0.0
[R1-rip-1]network 12.0.0.0
注意:我们在这儿宣告的是网段所属的主类,A类宣告前8,B类宣告前16,C类宣告前24.
V2版本 配置命令:
[R1]rip 创建rip 默认进程号为1
[R1-rip-1]version 2 选择版本2
[R1-rip-1]undo summary 关闭自动汇总
意义:若不关闭走动汇总,RIPV2将会使用主类长度掩码惊醒发送路由,关闭自动汇总后,将携带接口精确掩码来发送。
[R1-rip-1]network 1.0.0.0
[R1-rip-1]network 12.0.0.0
(2)RIP 的扩展配置
1.RIP V2的手工汇总
在更新的源头,所有发出更新的接口上进行汇总配置即可
[R1-GigabitEthernet0/0/0] 进入更新设备的接口
[R1-GigabitEthernet0/0/0]rip summary-address 1.1.0.0 255.255.252.0
进行rip的路由汇总
2.RIP V2的手工认证
在两台运行RIP协议的路由器间进行加密,让两台设备发出的数据中携带核实身份的密钥,也可同时对传输的路由信息进行加密。
[R1-GigabitEthernet0/0/0] 必须在和邻居相邻的接口上配置
[R1-GigabitEthernet0/0/0]rip authentication-mode md5 usual cipher 123456
3.被动接口
仅接受不发送路由信息协议,仅限于连接用户PC端的接口使用,不得用于路由器之间,否则将导致无法正常发送路由信息。
[R1-rip-1] 进入RIP进程
[R1-rip-1]silent-interface g 0/0/1 设置g0/0/1口为被动接口
4.加快收敛
抑制计时器:30s更新 180s失效 180s抑制 300s刷新
- 人为修改计时器可以一定程度的加快收敛速度,但是修改时不易过小。
- 尽量维持原有的倍数关系
- 全网设备计时器,必须修改一致
[R1-rip-1] 进入rip进程
[R1-rip-1]timers rip 30 180 300
抑制计时器180s在华为模拟器中不支持修改
5.缺省路由
在边界路由器上,进行RIP 的缺省配置后,该设备将向内部所有运行RIP的设备发送缺省路由的更新包,使得内部所有RIP设备自动生成缺省路由,且,下一跳均指向边界路由起方向。
[R3-rip-1] 进入边界路由起的RIP进程
[R3-rip-1]default-route originate 缺省路由
4.OSPF:开放式最短路径优先协议
OSPF是无类别链路状态IGP动态路由协议。
LSA:链路状态通告
LSDB:链路状态数据库
1)距离矢量协议和链路状态协议
- 距离矢量协议:运行距离矢量协议的路由器会周期性的泛洪自己的路由表。通过路由的交互,每台路由器从相邻的路由器学习到路由,并且加载进自己的路由表中;对于网络中的所有路由器而言,路由器并不清楚网络的拓扑结构,只是简单的知道要去往某个目的地的方向在哪儿,距离多远。这即是距离矢量协议的本质。
- 链路状态协议:与距离矢量协议不同,链路状态协议通告的是链路状态信息,而不是路由表。运行链路状态协议的路由器之间会先建立一个协议的邻居关系,然后彼此之间开始交互LSA(链路状态通告)。每台路由器都会产生LSA,路由器将接收到的LSA放入自己的LSDB(链路状态数据库)中。路由器通过LSDB,掌握了全网所有的拓扑信息。最后,由路由器通过SPF算法计算出最优路径,随后加载于自己的路由表中。
OSPF的特征
支持等开销负载均衡;
基于组播进行更新----224.0.0.5 224.0.0.6
支持触发更新 ; 每30min进行一次周期更新
需要结构化的部署---区域划分 地址规划
相同区域传递拓扑,不同区域传递路由
区域划分的规则:
- 星型结构,0区为骨干区域;大于0则为非骨干区域,所有非骨干区域必须接入到骨干区域上。
- 必需要有ABR(域间路由器): 两个区域相连时,必须存在ABR,ABR同时工作在两个区域上。
Router-ID 路由器标识符
用于一个OSPF域中唯一的标识一台路由器。
Router-ID的设定可以通过手工配置的方式也可以使用系统自动生成的方式。
定义RID值,建议使用IP地址,全网唯一,要是不进行手工配置则会自动生成-------优先配置为环回的最大数值,如果没有环回,则自动配置为最大物理接口数值。
使用COST值作为度量值:Cost=开销值=参考带宽/接口带宽;默认参考带宽为100M,整段路径cost值之合最小为最佳。
若接口带宽大于参考带宽,则度量值为1,可能会导致选路不佳,故而在接口带宽大于参考带宽的网络中,可以人为的修改参考带宽。
[R1-ospf-1]bandwidth-reference 1000 修改参考带宽为1000Mbits/s
注意:一旦修改参考带宽,需全网所有设备都修改一致。
2)OSPF协议详解
(1)ospf的数据包类型
- HELLO包 用于邻居间的发现、关系建立及保活;
- DBD包(数据库描述包)用于携带本地数据库目录;
- LSR包(链路状态请求包) 在查看完对端邻居的DBD包后,基于本地的位置查询LSA 随后去索要未知的LSA信息,就通过这个LSR包。
- LSU包(链路状态更新包) 用于携带各种LSA信息
- LSACK包 (链路状态确认包) 用于确认接收到对端的信息
(2)OSPF的状态机
Down状态:表示未激活的状态,一旦本地发出hello包,则进入下一个状态。
Init状态:表示初始化状态
Tow-way状态:双向通信 表示建立了邻居关系
经过条件匹配,成功则进入下一个状态机,失败则停留于tow-way状态(失败即只建立邻居关系)。
Loading 状态: 加载状态,在查看完对端邻居的DBD包后,使用LSR包来询问自己位置的LSA信息,对端使用LSU包进行回复,本地还需要使用LSACK进行确认回复。
Full 状态: 邻接关系建立的标识
(3)OSPF的工作过程
启动配置完成后,本地组播 224.0.0.5 发送hello包,Hello包将携带本地的RID值,及已知的邻居的RID值,若接收到对端的hello包中有自己的RID则视为认识,邻居关系的建立,生成邻居表,开始条件匹配,成功 则进入下一个阶段 不成功 则 永远是邻居(停留在2-way状态),使用空的DBD包进行主从选举,对比RID 大为优 且 优先进入下一个状态,优先共享数据库目录 ,之后使用 LSR/LSU/LSACK 来获取未知的LSA信息并加载于本地的LSDB中。 启用SPF算法基于本地LSDB生成有向图,在计算出最短路径树,在基于树形结构算出本地为起始点到达全网各个节点的最优路径,最后加载于本地路由表中,收敛完成后,hello保活即可。每30min进行一次周期更新,周期更新即为对比数据库目录,如果相同 则继续hello包保活,如果不相同,则重新收敛。
结构突变
- 新增一个网段,直连新增网络设备,直接使用更新包告知邻接关系,需要ack确认。
- 断开一个网段,直连断开网络设备,直接使用更新包告知邻接关系,需要ack确认。
- 无法沟通: hello time 10s ,dead time 40s,时间到了就删除邻居信息。
注意:
- 只有邻接关系才能互相收发LSA;
- 若所有人都是邻接关系,则会造成大量的重复更新;
- BDR只是DR的备胎,DR掉线时,BDR会承担DR的职责。
(4)OSPF的基础配置
[R1-ospf-1]area 0 进入0 区
[R1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0
[R1-ospf-1-area-0.0.0.0]network 12.1.1.0 0.0.0.255
反掩码:可以简单理解为将掩码反过来
[R1-ospf-1]area 0 进入0 区
[R1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0
[R1-ospf-1-area-0.0.0.0]network 12.1.1.0 0.0.0.255
(5)OSPF的扩展配置
1.网络类型(两个)
①点到点的网络:在一个网段中,仅支持存在两个节点的网络。(在点到点的网络类型中,可以直接成为邻接关系)
②MA:多路访问---在一个网段内,存在的节点数量不限
在MA网络中,若所有设备均是邻接关系,则会造成大量的重复更新,故进行DR/BDR的选举,所有非DR/BDR的设备被称之为DRother,DRother之间维持邻居关系。(DR和BDR中与所有设备均为邻接关系,存在所有设备的路由表信息。而DRother之间为邻居关系,只能互相发送HELLO包进行保活。)
选举规则:
- 先比较参选接口的优先级 默认1 范围0-255 大为优
- 若参选接口的优先级相同,比较参选设备的RID,大为优
[R1-GigabitEthernet0/0/0]ospf dr-priority 2 将参选接口优先级改为2
切记:ospf的DR选举是非抢占性的,故需要重启ospf进程达到重新选举的目的。
<R1>reset ospf process 重启ospf进程
2.手工认证
在邻居间接口上定义安全密钥
[R1-GigabitEthernet0/0/0]ospf authentication-mode md5 1 cipher 123456
在相应接口上设置其账号(范围:1-255)为1密码为123456
3.Ospf的手工汇总:
区域汇总:在ABR上将A区域共享到B区域时,方可进行手工汇总。
[R2-ospf-1]area 0 进入需要汇总的区域
[R2-ospf-1-area-0.0.0.0]abr-summary 192.168.0.0 255.255.252.0
在需要汇总的区域 进行手工汇总
4.被动接口
也叫沉默接口,仅接受不发送路由信息的接口,仅能配置在路由器与PC之间。
[R1]ospf 1进入需要设置被动接口的路由器的ospf进程
[R1-ospf-1]silent-interface g 0/0/1 设置该接口为沉默借口
加快收敛-改计时器
修改一台路由器的hello time,该接口的dead time将自动关闭匹配; 邻居间直连接口的hello/dead time时间不一样,则无法建立邻居关系,修改时,不易修改的过小。
5.缺省路由
在边界路由器上,配置一条缺省信息之后,该设备将向内部所有设备发送缺省理由,方向指向边界路由器。
[R3]ospf 1 进入边界路由起的ospf进程
[R3-ospf-1]default-route-advertise always 下发缺省路由