OSPF:Open Shortest Path First,开放式的最短路径优先协议
ospf的概述:
OSPF(Open Shortest Path First开放式最短路径优先)是一个内部网关协议(Interior Gateway Protocol,简称IGP),用于在单一自治系统(autonomous system,AS)内决策路由。是对链路状态路由协议的一种实现,隶属内部网关协议(IGP),故运作于自治系统内部。著名的迪克斯加算法被用来计算最短路径树。OSPF支持负载均衡和基于服务类型的选路,也支持多种路由形式,如特定主机路由和子网路由等
OSPF最大缺点:更新量大-->为了能在大型网络生存--进行结构化的部署--区域划分、地址规划
区域之内传协议
区域之间传路由
OSPF:开放式最短路径优先协议
无类别(携带掩码)链路状态(基于拓扑)型IGP(AS内部)协议
更新量大—》为了能在中大型网络生存—进行结构化的部署—区域划分、地址规划
触发更新,每30min周期更新;组播更新—224.0.0.5—all ospf 224.0.0.6—DR/BDR
存在V1-V3 目前通用V2; V3是IPV6使用;
协议基于IP封装,跨层封装3层报头,协议号89;支持等开销负载均衡;
使用范围:IGP
协议算法特点:链路状态路由协议,(SPF算法)
协议是无类别的网络协议、传播网络掩码
一、OSPF特点:
1.OSPF是一种典型的链路状态型路由协议
2.传递信息称作 LSA,LSA链路状态通告,包含路由信息和拓扑信息
路由LSA:描述本路由器上接口的路由信息
拓扑LSA:描述路由器之间的链路状态
3.更新方式:触发更新+30分钟的链路状态刷新
4.更新地址:组播和单播跟新,组播地址:224.0.0.5(ALL SPF router) 224.0.0.6(ALL DR router)
5.支持路由认证
6.支持手工汇总
7.支持区域划分
8.OSPF比较消耗设备资源,一个路由器上最多支持31个OSPF进程
二、OSPF区域:
基于接口(链路)的划分
区域划分意义:1.减少LSA的数量 2.减少LSA的传播范围
区域的标记:使用了32个二进制1.十进制 2.类似于IP地址(AB类)
区域的分类:
1.骨干区域:区域标记位0或0.0.0.0
2.非骨干区域:区域标记不等于0或0.0.0.0
区域设计原则:向日葵型网络结构
1.OSPF网络中必须存在唯一的骨干区域
2.若存在非骨干区域,非骨干区域必须与骨干区域直接相连
OSPF中路由器的角色:
骨干路由器:一个路由器的所有接口都属于Area0的区域中
非骨干路由器:一个路由器的所有接口都是属于非骨干区域中
ABR:区域边界路由器,处于Area0和非Area0之间的区域的路由器,能产生3类LSA的路由器
ASBR:自治系统边界路由器,一个路由器处于OSPF网络和非OSPF的网络的边界,将非OSPF网络引入到OSPF网络中,能 够产生5类或7类
三、OSPF的数据包类型
OSPF数据包的头部结构
跨层封装到IP报头,协议号89
存在5个类型的数据包:
1.Hello包
组播周期发送,用于邻居、邻接关系的发现、建立、周期保活;
在hello包中存在本地已知邻居的RID,用于保活这些邻居; hello time 10s或者 30s
Dead time 为hello time 的4倍;
2.DBD包
数据库描述包
3.LSR包
链路状态请求,按照DBD中报文的未知LSA头部进行请求。
4.LSU包
链路状态更新,携带LSA信息
Number of LSAs:该报文包含LSA 的数量
5.LSACK包
链路状态确认
LSA header :该报文包含LSA 的头部
四、OSPF工作过程
启动配置完成后,邻居间组播收发hello包,建立邻居关系;生成邻居表:
之后进行条件的匹配,匹配失败的邻居将保持为邻居关系,仅hello包周期保活即可;
匹配成功的邻居间,将进行邻接关系的建立;过程中先使用DBD进行目录交互,在使用LSR/LSU/LSack来获取本地未知的LSA信息;最终完成邻接关系间的LSDB同步;生成数据库表;再然后,本地基于LSDB,生成有向图—>树型结构—>最短选路 SPF算法
基于树形结构计算本地到达所有未知网段的最短路径,然后将其加载到路由表中;
收敛完成,hello包周期保活;每30min邻居间再周期比对DBD包;
结构突变:
- 新增网段 –直连新增网段的设备,直接使用更新包告知本地的所有的邻接
- 断开网段 -直连断开网段的设备,直接使用更新包告知本地的所有的邻接
- 无法沟通 -dead time倒计时结束后,邻居间断开关系,删除信息;
名词:
LSA 链路状态通告,在不同环境下产生不同的拓扑或路由,一条信息为一个LSA
LSDB 链路状态数据库 整个网络LSA的集合
LSDB同步 OSPF的收敛行为,整个网络LSDB需要一致
LSA洪泛 OSPF的收敛行为,需要整个网络接收到同一条LSA
五、OSPF邻居状态机制:
1.Down:未收到邻居发来的hello包
2.Init:初始化状态,一旦开始发送hello包,进入初始化状态
3.attempt:尝试状态
4.two-way:双向通信状态(邻居状态)
5.Extart:预启动状态,一旦开始发送主存DBD,则进入预启动状态
6.exchange:预交换,主存选举完成,则发送携带LSA头部消息的DBD,进入预交换状态,会发送LSR数据包
7.Loading:加载状态,一旦发送了LSU数据包,进入了加载状态,进行大量LSA的学习
8.Full:邻接状态(双方LSA全部学习)
六、OSPF的基础配置
[r1]ospf 1 router-id 1.1.1.1 启动时需要定义进程号,仅具有本地意义
建议配置RID—全网唯一—手工配置—本地环回接口最大数值---物理接口最大数值
[r1-ospf-1]
[r1-ospf-1]area 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.1 0.0.0.0
OSPF的区域划分规则:
- 星型拓扑—非骨干区域需要连接骨干区域
- 必须存在ABR—区域边界路由器—区域间必须存在一个边界设备
[r2]display ospf peer 查看邻居表
[r2]display ospf peer brief 查看邻居表的简表
OSPF Process 1 with Router ID 2.2.2.2
Peer Statistic Information
----------------------------------------------------------------------------
Area Id Interface Neighbor id State
0.0.0.0 GigabitEthernet0/0/0 1.1.1.1 Full
0.0.0.1 GigabitEthernet0/0/1 3.3.3.3 Full
邻居关系建立后,进行条件的匹配;匹配失败将保持为邻居关系,仅hello包周期保活;
匹配成功将可以建立为邻接关系:
首先使用DBD进行主从关系选举,在使用DBD进行数据库目录的交互:
关于DBD包的几个参数:
- MTU OSPF协议会在DBD包中携带与邻居直连接口的MTU值;要求邻居的MTU值必须完全一致,否则将卡在exstart状态机;默认华为设备间不检测这个MTU值;
[r1]interface GigabitEthernet 0/0/1
[r1-GigabitEthernet0/0/1]ospf mtu-enable 在于邻居间直连的接口上开启MTU检测;若一端开启,另一端也必须开启;
- 隐性确认 一台设备使用和另一台设备一样的序列号来确认对端的数据 OSPF中从来对主进行隐性确认;
- 描述字段 I为1标识本地发出的第一个DBD M为0本地发出的最后一个DBD MS 为1代表主 S为0代表从
在使用DBD相互交互完数据库目录后,再使用LSR/LSU/LSack来获取未知的LSA信息;
最终实现所有设备的LSDB一致;生成数据库表:
<r1>display ospf lsdb 查看数据库表
当数据库同步完成后,OSPF将基于本地的LSDB,计算为有向图—>树型结构—>最短路径加载于路由表中:
华为设备优先级默认10;
<r1>display ospf routing 查看本地所有与OSPF相关路由,发出+接收的
度量为cost值=开销值=参考带宽/接口带宽
OSPF选择整段路径cost值之和最小为最短路径;默认参考带宽100M
若接口带宽大于参考带宽,cost值为1;可能导致选路不佳
可以修改设备的参考带宽:
[r1]ospf 1
[r1-ospf-1]bandwidth-reference ?
Mbits/s)
[r1-ospf-1]bandwidth-reference 1000
切记:若进行修改,整个网络中所有设备需要修改为一致;
七、OSPF从邻居关系建立为邻接关系的条件
关注网络类型
- 点到点网络 邻居正常必然成为邻接关系
- MA网络中 由于OSPF不支持接口的水平分割;故若两两设备间均为邻接关系,将导致大量的重复更新;因此必须进行DR/BDR选举,DR/BDR使用组播224.0.0.6;
在该网段内的非DR/BDR设备间只能建立为邻居关系;
选举规则:先比较参选接口的优先级0-255 数值大优,为0标识不参选
默认为1;若优先级相同,比较参选设备的RID值,数值大优;
修改接口优先级可以干涉选举:
[r1]interface GigabitEthernet 0/0/1
[r1-GigabitEthernet0/0/1]ospf dr-priority 2 参选接口修改优先级
注:DR选举为非抢占行为;故修改优先级需要重启的OSPF进程
<r1>reset ospf process
Warning: The OSPF process will be reset. Continue? [Y/N]:y
拓扑结构:
中心到站点(轴辐状-星型结构) DR必须定在中心站点,没有BDR
部分网状结构 基于实际环境关注是否固定DR;
全连网状结构 --- DR/BDR选举正常
八、OSPF的不规则区域
- 远离了骨干的非骨干区域
- 不连续骨干区域—本地学习到来自区域x的路由后,不得共享到X区域
解决方案:
- 普通GRE,tunnel 隧道
在合法与非法ABR间使用tunnel建立一条新的逻辑链路;之后将该链路宣告到OSPF协议中
缺点:
- 周期的OSPF进行需要实际通过中间区域进行传递,大大增加中间区域的资源占用
- 选路不佳---ospf设备接收到两条去往同一网段的路由时,先关注两条路由获取的区域ID;骨干区域优于非骨干
九、LSA
1.1类LSA(router)
产生原因:需要知道同一个区域内的拓扑信息
功能:用于在本地设备所在区域内传递路由和拓扑信息
传播范围:在本地所在区域内,终止于ABR(连接相同协议的不同区域的边界路由器,即产生3类LSA信息)
特点:
(1)在MA网络中,1类LSA仅仅包含MA的接口(transmit conn)以及metric 值,掩码和拓扑信息在2类LSA出现
(2)link ID=ADV router = 产生1类LSA的路由器的 RID
(3) link count :标识包含了几条信息
2.2类LSA (network)
产生原因:
(1)一类LSA中如果出现了MA网络,并不知道MA网络中的设备的数量和连接的情况
(2)MA网络中 只有DR路由器才会产生2类LSA
功能:描述MA网络中所存在的所有路由器,该MA网络的网络掩码是多少
传播范围:在本区域内传输,终止于ABR(无论是否存在MA接口)
特点:
(1)Link-id:MA网络中DR 接口地址 ADV:DR接口所属路由器的router-id
(2)描述了MA的掩码信息与拓扑信息(此MA网段连接了哪些路由器)
3.3类LSA (summary)
产生原因:各个域间需要传递路由,为了全网可达
功能:用于在不同区域之内传递路由(只有路由信息)
传播范围:在区域间传递(默认仅仅在某个区域中传输,进入其他区域时必须由新的ABR重新产生)、整个OSPF 域 (不属于任何一个路由器)
特点:
(1)Link-id:路由网络号(将某一个区域传输给其他区域的路由器的接口IP,物理接口)
(2)ADV:默认为本区域ABR的router-ID 在穿越不同区域时发生改变 (若传输给某一个区域时,其区域含有区域边界路由器ABR,则改变ADV)
4.4类LSA: summary ASBR LSA
功能:除了产生5类LSA所在区域,用于通告ASBR位置
Link id:ASBR的router-id
ADV router: 默认ASBR所在区域的ABR的 router-id
特点:在穿越不同区域时,有新的ABR重新产生。(与3类LSA一致)
5.5类LSA (external) 外部LSA
产生原因:不同的协议存在同一个网路中,为了全网可达
功能:将外部路由引入OSPF域中
特点:
(1)Link-id:外部路由网络号 (外部区域的路由器的接口IP) ADV:ASBR router-ID
(2)种子度量值:将其他的协议重发布到OSPF中时会有一个默认的度量值 20(类型 2 传递metric值是不变的)而类型1是改变的
(3)转发地址:Forward address
广域网技术
数据链路层面: 针对不同的物理链路定义不同的封装
局域网封装:Ethernet 2 , IEEE802.3
广域网封装:PPP HDLC FR ATM
HDLC: 高级数据链路控制协议,默认思科的串行链路封装为HDLC,分为工业 标准的HDLC和思科私有的HDLC ,两者不同通用,思科私有的HDLC中加入一些 控制字符,识别上层协议,已经三层的传输方式
PPP: 点对点封装协议,华为串行链路默认封装为PPP, PPP链路需要建立一 条端到端的链路,PPP会话建立分为:
1.LCP
2.PPP认证
3.NCP
LCP:链路控制协议,通过发送LCP数据进行物理链路和封装的确认
PPP认证: 增加PPP会话的安全性,PAP CHAP
NCP:网络控制协议,通过发送NCP 针对上层协议进行封装,IPCP 协商,在 NCP协商过程中,会自动将自己本端IP地址以路由方式发送给对方,当PPP会 话建立之后,会产生到达对方接口IP地址的32位主机路由
PAP : 密码认证协议,是一种一次性的简单的明文认证