OSPF的不规则区域
为了适应大中型网络环境,OSPF需要进行区域划分,区域划分的规则如下
- 区域之间必须存在ABR设备
- 区域划分必须满足星形结构划分
在不满足第二条星形结构划分的情况下,我们将其称之为不规则区域
合法的ABR:有接口宣告在区域0
不连续骨干区域
标准的区域划分是将非骨干区域和中间的骨干区域连接在一起,区域与区域之间存在ABR设备
而不连续骨干区域是在一个完整的骨干区域中,插入一个非骨干区域,使得骨干区域不再连续
远离骨干的非骨干区域
在一个标准的区域划分的基础上,有一个非骨干区域离中心的骨干区域距离过于远,只能就近连接在另一个和骨干区域相连的非骨干区域上,这种情况称为远离骨干的非骨干区域
在此情况下,区域0的AR1可以正常获取区域1的路由信息,但无法获取区域2的路由信息。ARB设备AR4作为区域1和区域2的设备,可以获取区域1、区域2、区域0的信息,但不会共享给区域2的AR5
解决方案一 1:在AR2上物理连接出一条线缆指向区域2,使得区域2直接连接骨干区域
2:构建VPN隧道,用虚拟的线缆将区域2直接连接到骨干区域(建议宣告在区 域0)
这样虽然解决了一部分问题,但是也会额外产生别的问题
问题1:会额外建立邻居关系,导致周期性的数据(hello报文)
需要通过隧道封装占用额外的资源
2:数据会从虚拟隧道传递,使得传输的cost变大,选路不佳(域内路由>域间路由)
解决方案二 v-link 虚链路
找到其中非法的ABR设备(没有连接上骨干区域的区域),与合法的ABR建立 连接,使对方认可自己的ABR身份
建立v-link需要知道对方的RID,建立时需要在两台ARB设备共同存在的区域中 配置,所以,v-link技术不能跨越两个及两个以上的区域
[r2-ospf-1-area-0.0.0.1]vlink-peer 4.4.4.4
[r4-ospf-1-area-0.0.0.1]vlink-peer 2.2.2.2
问题1:虚链路只能跨越一个区域
2:虚链路依旧会建立邻居关系,导致周期性的数据,只能做临时使用
使用虚链路后,不能使用再做OSPF优化,与特殊区域矛盾
解决方案三 多进程双向重发布
在两款不同的协议之间传递路由信息,不同的OSPF进程,也可以看作不同的 协议
在两个进程中间的ABR设备被称为ASBR,配置时在ASBR上配置
[r4]ospf 2 router-id 4.4.4.4 --启动一个新的协议进程
[r4-ospf-2】area 0
[r4-ospf-2-area-0.0.0.0]network 45.0.0.0 0.0.0.255
单向重发布
[r4-ospf-1]import-route ospf 2 ---如果想要A协议获取到B协议的路由信
息,进入A协议的进程中import-route 引入B协议的路由即可
为了防止环路隐患,标准OSPF区域划分的星形结构部署本身就能防环,只有在骨干区域上的路由器才会转发路由信息
而非标准区域划分的结构有环路风险,无法顺利学习路由情况
LSA
LSA 链路状态通告(拓扑信息)
OSPF区域内部的路由器需要互相共享LSA信息,共享完后将通过SPF算法得出一张路由表,将LSA信息存储在LSDB中
LSDP 链路状态数据库
LSA头部
不同的LSA报文头部都是公有的公共参数
参数一 type:类型字段,标准一条LSA的类型
参数二 LSID:链路状态ID,LSA的名字,有重名的可能性
参数三 ADV-router:通告路由器,表明此条LSA的发布来源的RID
前三条可以标识一条LSA,为LSA的三元组:类型、链路状态ID、通告路由器
参数四 LS AGE:LSA的老化时间,默认最大老化时间为1800S,当时间达到1800S(OSPF 的更新周期)时,该条LSA的数据信息将会从数据库中删除(更新)
MAX-AGE:当达到老化时间时,未发送新的LSA更新数据,等待到最大老 化时间时若还未更新,则将此条数据删除
参数五 LEN:LSA长度,LSA的大小
参数六 OPTIONS:可选项字段
参数七 SEQ:LSA的序列号,用于做LSA的新旧判断,当两条三元组相同的LSA同时出现 时,取序列号更新的LSA更新
序列号空间:
直线型序列空间,新旧关系很明显,但是有数量上限
循环形序列空间,没有上限,但新旧关系不明显
棒棒糖序列空间,结合直线型与循环性,但是不让进入循环,扩大了直线型
0X80000001-0X7FFFFFFE
当序列号达到0X7FFFFFFE时,将老化时间设置为3600S,相当于清空整个OSPF网络设备中存储的该LSA,之后立刻重新发送一条完全一致的LSA,序列号为0X80000001
参数八 CHKSUM:校验完整性
六类LSA
type | LSID |
ADV
router
|
携带参数
|
传递范围
|
Router
:
type-1LSA
|
通告路由
器的
RID
|
谁发的该
LSA
,
ADV
-router=该设 备RID
|
拓扑信息
|
在区域内部传递
|
Network
---
type-2LSA
|
DR
的IP地址
|
DR
所在的路由器
RID
|
1
类
LSA
的补充
|
在区域内传递
|
Sum-Net
--
type3LSA
|
其他区域
目标网段
|
本区域相连的
ABR
的
RID
|
其他区域目标网
段信息
|
单区域
|
External
--
type 5LSA
|
域外网段
信息
|
ASBR
设备的
RID
|
域外网段信息
|
整个
OSPF
网络传递
|
Sum-Asbr
--
type-4LSA
|
ASBR
设备 的RID
|
本区域相连的
ABR
的
RID
|
ASBR
设备如何到
(
ADV
-router)
|
除了和
ASBR
设备之间相
|
一类LSA Router
传递拓扑信息的LSA,每台OSPF设备都会发送此类LSA
参数 link ----link type 根据OSPF接口网络类型关联
[r1]display ospf lsdb --查看OSPF链路状态数据库的命令
[r1]display ospf lsdb router 1.1.1.1 ---展开一条1类LSA的命令
二类LSA Network
在以太网中存在的LSA,作用:同样传递LSA(拓扑信息),是1类LSA的补充,补充了以太网中掩码和运行OSPF协议的设备RID。
三类LSA Sum-Net
五类LSA External
<Huawei>display ospf lsdb ase 172.16.0.0 --查看5类LSA的命令
四类LSA Sum-Asbr
<r2>display ospf lsdb asbr 5.5.5.5 展开一条4类LSA的命令
LSA的优化
汇总
不同的片区的每一个设备都指向一个边界路由器,边界路由器又会指向上一级的路由器,这会使得上一级路由器的路由表很繁杂,家用路由器能存储的路由数量也不够多
将不同片区的缺省路由汇总成一条向上发送,一级一级的发送汇总后的路由,可以减少成本
域内路由手工汇总
配置位置是该区域对应的ABR设备的对应区域中配置
[r1-ospf-1-area-0.0.0.2]abr-summary 1.1.0.0 255.255.252.0---网段汇总之后的
结果(必须写汇总网段的真实掩码)
域外路由手工汇总
[Huawei-ospf-1]asbr-summary 172.16.0.0 255.255.252.0
特殊区域
两大类
stub区域—末梢区域
不能是骨干区域、不能存在虚链路V-LINK、不能存在ASBR设备
(远离骨干的非骨干区域时,只有物理连接或者虚拟通道连接的才能用)
[r6-ospf-1-area-0.0.0.2]stub ---配置进对应的区域敲STUB
注意:因为特殊区域的标记会影响建邻居,所以必须该特殊区域的设备都需要配置,否则无法建邻。(该区域的边界路由器也必须配置)
一旦将区域配置为stub区域,该区域将拒绝学习4类和5类LSA
Totally--stub完全末梢区域
配置位置只需要在ABR设备上配置
[r1-ospf-1-area-0.0.0.2]stub no-summary
NSSA--非完全末梢区域
不能是骨干区域 不能存在虚链路V-LINK 必须存在ASBR设备
[Huawei-ospf-1-area-0.0.0.1]nssa
[r3-ospf-1-area-0.0.0.1]nssa no-summary