一、OSPF的不规则区域
1、OSPF区域划分遵循的规则
- 必须存在ABR设备
- 必须按照星型拓扑来划分
2、不规则区域
- 远离骨干的非骨干区域
- 非连续的骨干区域
解决方案:
1、使用Tunnel隧道将非法的ABR设备合法化
在R2和R4上创建虚拟隧道,虚拟隧道的协议类型为GRE,将R2上的虚拟接口加入area 0,在R4上创建area 0,将虚拟接口加入area 0,并宣告网段
[R2]int t0/0/0
[R2-Tunnel0/0/0]ip address 10.0.0.1 24
[R2-Tunnel0/0/0]tunnel-protocol gre
[R2-Tunnel0/0/0]source 23.0.0.1
[R2-Tunnel0/0/0]destination 34.0.0.2
[R2]ospf
[R2-ospf-1]area 0
[R2-ospf-1-area-0.0.0.0]network 10.0.0.0 0.0.0.255
[R4]int t0/0/0
[R4-Tunnel0/0/0]ip address 10.0.0.2 24
[R4-Tunnel0/0/0]tunnel-protocol gre
[R4-Tunnel0/0/0]source 34.0.0.2
[R4-Tunnel0/0/0]destination 23.0.0.1
[R4]ospf
[R4-ospf-1]area 0
[R4-ospf-1-area-0.0.0.0]network 10.0.0.0 0.0.0.255
此时R5上出现了路由信息
将R4使用虚拟隧道连接到区域0后,R4可以直接通过拓扑信息学习到区域0里的路由信息,同时通过R2将区域0的拓扑信息转换为路由信息学习,但是R4会将自己通过拓扑信息计算的路由信息加入到路由表,导致开销值巨大
使用Tunnel隧道解决不规则区域的缺点:
- 选路不佳
- 重复更新
- 使用tunnel隧道后,R2、R4会建立邻居关系,会周期性的发送数据维护关系,造成中间部分链路负担加重
2、使用虚链路解决不规则区域(虚链路永远属于area 0)
[R2]ospf
[R2-ospf-1]area 1
[R2-ospf-1-area-0.0.0.1]vlink-peer 34.0.0.2
[R4]ospf
[R4-ospf-1]area 1
[R4-ospf-1-area-0.0.0.1]vlink-peer 12.0.0.2
使用虚链路避免了出现选路不佳和巨大开销值的问题
使用虚链路解决不规则区域的缺点
- R2、R4会建立邻居关系,会周期性的发送数据维护关系,造成中间部分链路负担加重
- 虚链路只能穿越一个区域
3、使用多进程双向重发发布
在不同的路由协议之间,对路由的理解与运行逻辑都不相同,所以在不同的路由协议之间是存在信息隔离的
重发布:将一种协议按照另一种协议的规则发布出去,需要在同时运行两种协议的设备(ASBR:自治系统边界路由器/协议边界路由器)上执行该技术,只有执行了重发布的设备才能叫ASBR设备
[R4]ospf 1 router-id 4.4.4.4
[R4-ospf-1]area 1
[R4-ospf-1-area-0.0.0.1]network 34.0.0.0 0.0.0.255
[R4-ospf-1-area-0.0.0.1]network 4.4.4.4
[R4]ospf 2 router-id 44.44.44.44
[R4-ospf-2]area 2
[R4-ospf-2-area-0.0.0.2]network 45.0.0.0 0.0.0.255
[R5]ospf 2 router-id 5.5.5.5
[R5-ospf-2]area 2
[R5-ospf-2-area-0.0.0.2]network 5.5.5.5 0.0.0.0
[R5-ospf-2-area-0.0.0.2]network 45.0.0.0 0.0.0.255
[R4]ospf 2
[R4-ospf-2]import-route ospf 1
[R4]ospf 1
[R4-ospf-1]import-route ospf 2
O_ASE:导入的路由信息的标记,代表是域外的信息,这些路由信息的可控性较低,信任程度较低,优先级默认设置为150
二、LSA
LSA:链路状态通告,是OSPF在不同网络下用于携带和传递不同的信息
LSDB:链路状态数据库
1、LSA的头部内容
-
type:LSA的类型(OSPFV2掌握6种)
-
Link State ID:链路状态标识符,可以理解为一个LSA的名称,在不同的LSA类型中携带不同的信息
-
AdvRoute:通告路由器,发出LSA信息的RID
-
LS age:LSA的老化时间,单位S, 当一条LSA被始发路由器置0时,该LSA在网络中传播,老化时间也会持续增加;当一条LSA的老化时间到达3600s(最大老化时间)则会从LSDB中删除
-
Len:长度,表示LSA的内容所占的字节数
-
Seq:序列号,本质是由32位二进制构成,一台路由器每发送同一条LSA时都会携带一个序列号,而且逐次加一
序列空间:
直线型:从最小值到最大值逐次加一;优点是新旧关系容易区分;缺点是一旦序列号空间用尽,无法判断新旧
循环型:从最小值到最大值循环,序列号可以一直使用,但是当两个序列号相差较大时,新旧关系不好区分
棒棒糖型:OSPF采用这种序列号空间,但是为了避免循环型空间的缺点,OSPF要求不能进入循环部分,所以取值为0X80000001-0X7FFFFFFE
当序列号到达最大值时,始发设备会将该LSA的老化时间设置为最大老化时间发出,其他设备收到该LSA的设备因为其序列号值最大,将刷新本地LSDB数据库,又因为该条LSA的老化时间为最大老化时间,将把该LSA信息删除;同时始发设备会再次发送一条相同的LSA信息,其序列号为0X80000001,其他设备将该LSA信息收集到数据库,起到刷新序列号空间的作用 -
校验和:这个参数会参与新旧关系的比较,如果两条相同的LSA其序列号也相同,则将比较校验和,校验和较大的判定为新
2、LSA的类型
类型 | LS ID | 通告路由器 | 传播范围 | 携带信息 |
---|---|---|---|---|
Type 1 LSA(Route) | 通告者的RID | 本区域内所有运行OSPF设备的RID | 单区域 | 本地接口直连的拓扑信息 |
Type 2 LSA(Network) | DR的IP | MA网络中DR所在路由器的RID | 单区域 | 单个MA网络网段的补充信息 |
Type 3 LSA(summary) | 路由的目标网络号 | ABR,在通过下一个ABR设备时,修改为新的ABR | ABR相邻的单区域 | 域间路由信息 |
Type 4 LSA(Sum-Asbr) | ASBR的RID | ASBR设备所在区域的ABR设备,再通过下一个ABR设备时,将修改为新的ABR | 除了ABSR所在区域的单区域 | ASBR的位置 |
Type 5 LSA(ase) | 路由的目标网络号 | ASBR | 整个OSPF区域 | 域外路由信息 |
Type 7 LSA(NSSA) | 路由的目标网络号 | ASBR,离开NSSA区域后将被转换为5类LSA | 整个NSSA区域 | 域外路由信息 |
1、Type 1 LSA(Route)
一个网络中,每台设备都需要发送且只发送一条1类LSA信息;1类LSA使用通告路由器的RID作为LS ID
link:每一条link都是在描述路由器接口的连接情况,一个接口可以使用多个link来进行描述
Type | Link ID | Data |
---|---|---|
P2P | 邻居的Route ID | 该网段上本地接口的IP地址 |
TransNet | DR的接口IP地址 | 该网段上本地接口的IP地址 |
StubNet | 该Stub网段IP的网络地址 | 该Stub网段的网络掩码 |
Virtual | 虚连接邻居的Route ID | 去往该虚连接邻居的本地接口的IP地址 |
1类LSA的报文格式
V:置1,代表该路由器时V-Link的一个端点
E:置1,代表该路由器为ASBR设备
B:置1,代表该路由器为ABR设备
2、Type - 2 LSA(Network)
在MA网络环境下,仅依靠1类LSA无法获取完整的拓扑信息,所以引入了2类LSA,对拓扑信息进行补充说明,二类LSA补充的都是一些公共信息,所以一个MA网络中只需一台设备发送就可以了;所以2类LSA由MA网络中的DR设备进行发送并使用DR设备的IP地址作为LS ID
因为1类和2类LSA信息传递的是拓扑信息,而其他LSA传递的是路由信息,传递路由信息的LSA需要经过1类和2类的LSA验算的才能使用;(需要通过1类和2类LSA找到通告者的位置)
3、Type 3 LSA(summary)
3类传递的是路由信息,由ABR设备通告,使用目标网络号作为LS ID;3类中携带的开销值是通告者到达目标网段的开销值
4、Type 5 LSA(ase)
Metric:因为不同的路由协议对开销值的评判标准不同,所以在进行重发布时,无法直接使用原先的开销值,所以在重发布后将舍弃原先的开销值,重新赋予一个规定的初始值—seed metric(种子度量值)将路由重发布到OSPF中时,其初始的种子度量值默认为1
在重发布过程中修改种子度量值import-route rip 1 cost 2
E :标记位:标准开销值的类型
E位置0,表示类型1,如果开销值类型为1,则所有OSPF网络内设备到达域外目标网段的开销值都等于种子度量值加沿途累加开销值
E位置1,表示类型2,5类LSA默认的开销值类型为类型2,如果开销值的类型为2,则所有OSPF网络内设备到达域外目标网段的开销值都等于种子度量值
在重发布中修改开销值类型 import-route rip 1 type 1
Forwarding Address:转发地址;主要是为了应对选路不佳的情况。如果不存在选路不佳的情况,则使用0.0.0.0进行填充,无实质性作用;但是,如果存在选路不佳的情况,则会把最佳选路地址携带在FA地址上,之后设备到达目标网段会查找到达FA地址的路径。而不会按照算法再去寻找通告路由器
Tag — 路由标记 — 主要是给路由信息打标记,方便后面流量的抓取。默认取值为1。
[r4-ospf-1]import-route rip 1 tag 666