一、动态路由
定义:各个路由器之间运行某种协议(算法),通过收发数据包的形式获取未知路径(路由器交换信息)。
特点:
优:减少管理任务
缺:占用网络带宽
动态路由有自己的路由算法,能够自动适应网络拓扑的变化,适用于具有一定数量三层设备的网络。
路由器通过度量值选择最优路由路径
度量值:跳数、带宽、负载、时延、可靠性、成本
收敛:使所有路由表都达到一致状态的过程。交换信息的过程已完成,达到稳定状态。
1.1 静态路由与动态路由的比较
静态路由------管理员手工配置路由
动态路由------路由器间自动学习路由
网络中静态路由与动态路由互相补充
1.2 按照路由执行算法分类:
路由协议分类 | 依据 | 如 | |
距离矢量路由协议 | 源网络到目的网络所经路由器的个数(跳数) | RIP、IGRP(思科私有)、BGP(路径矢量协议)、EIGER(高级距离矢量协议) | 对全网拓扑不了解 |
链路状态路由协议 | 源网络到目的网络的各路径综合情况 | OSPF、IS-IS | 对全网拓扑了解,知道环境 |
二、RIP
RIP(Routing Information Protocol(路由信息协议))是 一种较为简单的内部网关协议IGP(Interior Gateway Protocol),主要用于规模较小的网络中,比如校园网以及结构较简单的地区性网络。对于更为复杂的环境和大型网络,一般不使用RIP。
RIP是基于距离矢量算法的路由协议,它通过UDP报文进行路由信息交换,使用的端口为520。
RIP的度量值为跳数,但RIP具有种种限制,其最大跳数只能达到15,当跳数等于或大于16时,则目的网络不可达。
2.1 RIP的工作过程
1、路由器先学习自己直连路由的网段,创建路由表
2、更新周期为30s,到达30s时路由器会向 **邻居(邻接关系的路由器)**发送自己的路由表信息,同时也会接收到邻居发送的路由表信息,此时比对两表,更新补充没有的网段,并记录下一跳及跳数
3、再过30s,第二个周期时,路由器会再次发送整个路由表信息
特点:定期更新、邻居、广播更新、全路由表更新
2.2 路由环路
2.3 水平分割与毒性逆转
为防止路由环路发生,提高收敛速度,RIP支持水平分割(Split Horizon) 和 毒性逆转(Poison Reverse)功能
1、水平分割:在路由信息传送过程中,路由器从某个接口接收到的更新信息不允许再从这个接口发出去。同时也减少路由更新信息占用的链路带宽资源。
2、毒性逆转:路由器从某个接口上接收到某个网段的路由信息之后,并不是不往回发送信息了,只不过是将这个网段标志为不可达再发送出去。收到此种的路由信息后,接收方路由器会立刻抛弃该路由,而不是等待期老化时间到来。可以加速收敛。
2.4 RIP版本对比
版本 | RIP v1 | RIP v2 |
区别 | 有类路由协议 | 无类路由协议 |
广播更新(255.255.255.255)(不兼容v2) | 组播更新(224.0.0.9)(兼容v1) | |
不支持VLSM(自动划分) | 支持VLSM | |
自动路由汇总,不可关闭 | 自动汇总可关闭,可手工汇总 | |
不支持不连续子网 | 支持不连续子网 | |
报文不携带掩码信息 | 报文携带掩码信息 | |
支持外部路由标记,可以根据Tag对路由进行灵活控制 | ||
支持对报文进行验证,提供明文验证和MD5验证两种方式 |
2.5 命令:
[R1]rip 1######启动RIP
[R1-rip-1]version 2######启动版本2(缺省为版本1)
[R1-rip-1]undo summary######关闭路由器自动聚合(即所有路由信息都会按照IP地址分类归类)
[R1-rip-1]network 192.168.10.0(网段)######宣告主网络号,v2会携带掩码组播更新224.0.0.9,v1不携带,广播更新255.255.255.255
[R1-rip-1]network 200.1.0.0
兼容模式
[R1]int g0/0/1
[R1-GigabitEthernet0/0/1]rip version 2 multicast ######把设置成rip1路由器的某一接口单独设置成rip版本2
三、OSPF
3.1 OSPF路由协议概述
自治系统(AS):由同一个技术管理、使用统一选路策略的一些路由器的集合。AS包括IGP和EGP。
内部网关路由协议(IGP):运行在AS内部的路由协议,主要解决AS内部的选路问题,发现、计算路由。主要有RIP、OSPF、IS-IS、EIGRP等。
外网网关路由系统(EGP):运行在AS与AS之间的路由协议,解决AS之间的选路问题,主要有BGP等。
OSPF(Open Shortest Path First)是IETF组织开发的一个基于链路状态的内部网关协议。目前针对IPv4协议使用的是OSPF Version 2(RFC2328);针对IPv6协议使用OSPF Version 3(RFC2740)。
特点:
(1)可以适应大规模的网络
(2)路由变化收敛速度快
(3)无路由环
(4)支持变长子网掩码VLSM
(5)支持区域划分
(6)支持以组播地址发送协议报
3.2 OSPF工作过程
1、建立邻接关系
2、链路状态数据库
3、最短路径树
4、路由表
3.3 OSPF区域
为了适应大型网络,OSPF在AS内划分多个区域,每个OSPF路由器只维护所在区域的完整链路状态信息。
区域ID:可以用十进制数字表示,也可表示成一个IP
骨干区域:负责区域间路由信息的传播
3.4 Router ID
Router ID:OSPF区域内唯一标识路由器的IP地址
3.4.1 选取规则
自动选取:选取路由器lookback(回环口)接口上数值最高的IP地址
如果没有lookback接口,在物理端口中选取IP地址最高的
手工选取:也可以使用router-id命令指定router id(优先级最高的)
DR指定路由
解决链路邻接关系过多,造成网络拥塞
BDR:备份指定路由
其他路由器DRothers只和DR或BDR形成邻接关系
**变成**
3.4.2 DR和BDR的选举方法
自动选举方法:网段上RouterID最大的路由器将被选举为DR,第二大的为BDR
手工选举:优先级范围0~255,数值越大,优先级越高,默认为1
如果优先级相同,则需要比较router id
如果路由器的优先级被设置为0,它将不参与DR和BDR的选举
3.4.3 DR和BDR的选举过程
路由器的优先级可以影响一个选举过程,但不能强制更换已经存在的DR或BDR路由器;
因为每个路由器开机时间不同,选举时间又非常短,一般先开机的路由器会被选举DR和BDR。
选举过程只作了解:
假设所有路由器同时开机
所有路由器(认为自己是DR)通过组播地址244.0.0.5发送HELLO包,发现邻接关系;
比较路由器的优先级,确认A为DR,B为BDR,其他为DRother。
DR,BDR通过224.0.0.5发送信息;
其他路由器通过224.0.0.6发送消息。
3.5 OSPF的度量值为COST
COST=108/BW (BW为接口带宽)
最短路径是基于接口指定的代价(cost)计算的
接口类型 | 代价(108/BW) |
Fast Ethernet(百兆) | 1 |
Ethernet(千兆) | 10 |
56K(电话线上网) | 1785 |
3.6 OSPF的包类型
OSPF数据包承载在IP数据包内,使用协议号89(网络层)
OSPF的包类型 | 描述 |
Hello包 | 用于发现和维持邻居关系,选举DR和BDR |
数据库描述包(DBD)华:DD | 用于向邻居发送摘要以同步链路状态数据库 |
链路状态请求包(LSR) | 在路由器收到包含新信息的DBD后发送,用于请求更详细的信息 |
链路状态更新包(LSU) | 收到LSR后发送链路状态通告LSA,一个LSU可能含有几个LSA |
链路状态确认包(LSAck) | 确认已经收到DBD/LSU,每个LS需要被分别确认 |
OSPF启动的第一个阶段就是使用Hello报文建立双向通信的过程
OSPF启动的第二个阶段是建立完全邻接关系
Down 邻居状态机的初始状态,是指在过去的Dead-Interval时间内没有收到对方的Hello报文或OSPF没有启动时
Attempt: 只适用于NBMA类型的接口,处于本状态时,定期向那些手工配置的邻居发送Hello报文
Init 本状态标识已经收到邻居的Hello报文但该报文列出的另据没有包含我的Router ID
2-way 本状态标识双方互相收到了对端发送的Hello报文建立了邻居关系。在广播和NBMA类型的网路中,两个接口状态时Drother的其他情况状态机将继续转入高级状态
Exstart 在此状态下,路由器和他的邻居之间通过互相互换DD报文来决定发送时的主/从关系。建立主/从关系主要是为了保证在后续的DD报文中能够有序的发送
Exchange 路由器将本地的LSDB用DD报文来描述并发给邻居
Loading 路由器发送LSR报文向另据请求对方的dd报文。
FULL在此状态下邻居路由器的LSDB中所有的LSA本路由器全都有了,即本路由器和邻居建立了邻接状态
3.7 OSPF将网络划分为四种类型
1、点到点网络(Point-to-Point)
自动发现邻居,不需DR/BDR、组播224.0.0.5
2、广播多路访问网络(Broadclst MultiAccess, BMA)
自动发现邻居、选DR/BDR、 组播224.0.0.5、 224.0.0.6(此为上述内容的类型)
3、非广播多路访问网络(None Broadcast MultiAccess, NBMA)
手工指定邻居、选DR/BDR、 单播
4、点到多点网络(Point-to-Multipoint)
自动发现邻居,不需DR/BDR、组播224.0.0.5
使用OSPF的考虑因素:
网络拓扑、网络规模、其他特殊的要求、路由器自身的要求
3.8 OSPF与RIP的比较:
3.9 命令
OSPF配置命令
[R1]int g0/0/0 ######配置接口ip地址
先配置端口IP
[R1-GigabitEthernet0/0/0]ip add 11.0.0.2 24
[R1-GigabitEthernet0/0/0]un sh
[R1-GigabitEthernet0/0/0]int g0/0/1
[R1-GigabitEthernet0/0/1]ip add 12.0.0.1 24
[R1-GigabitEthernet0/0/1]un sh
[R1-GigabitEthernet0/0/1]int loo 0
[R1-LoopBack0]ip add 1.1.1.1 32
[R1-LoopBack0]ospf 1 router-id 1.1.1.1 ######创建OSPF进程,配置路由ID
[R1-ospf-1]area 0 ######进入区域0,区域ID可以用数字表示,也可以用IP表示,若区域0则是骨干区域
[R1-ospf-1-area-0.0.0.O]network 1.1.1.1 0.0.0.0 ######宣告OSPF区域内的直连网段,使用反掩码
[R1-ospf-1-area-0.0.0.0]network 12.0.0.0 0.255.255.255
< Huawei >reset ospf process ######重置OSPF进程
三、OSPF多区域原理与配置
3.1 生成OSPF多区域的原因
1、改善网络的可扩展性
2、快速收敛
3.2 OSPF的三种通信量
域内通信量:单个区域内的路由器之间交换数据包构成的通信量
域间通信量:不同区域的路由器之间交换数据包构成的通信量
外部通信量:OSPF域内的路由器与OSPF区域外或另一个自治系统内路由器之间交换数据包构成的通信量
3.3 OSPF的路由器类型
3.4 OSPF 的区域类型
骨干区域
Area 0
非骨干区域:跟聚能狗学习的路由种类来区分
标准区域
末梢区域(stub)
完全末梢区域(Totally stubby)
满足以下条件的区域
只有一个默认路由作为其区域的出口
区域不能作为虚链路的穿越区域
Stub区域里无自治系统边界路由器ASBR
不能骨干区域Area 0
末梢区域
没有LSA4、5、7通告
完全末梢区域
除一条LSA3的默认路由通告外,没有LSA3、4、5、7通告
非纯末梢区域(NSSA)
3.5 链路状态通告(LSA)类型
3.6 实验