ospf 协议

ospf 协议
TheStoneFishospf 协议
一、分类
ospf 属于动态路由协议、IGP(内部网关协议)使用 ls 算法
ospf 根据链路开销选择最优路径
二、为什么要使用 ospf
rip 的缺点
- 收敛速度慢: 网络改变后收敛速度慢, 需要经过刷新计时器后才会删除
- 可扩展性不高: rip 跳数限制为 16, 最大中间路由数量 15 个
- 带宽消耗大: rip 每隔 30 秒发送更新报文, 带宽消耗高
- 度量值不科学: 使用距离作为度量值
三、ospf 原理
1、收敛过程
步骤 | 过程描述 | 相关机制 |
---|---|---|
1. 初始化路由表 | 路由器启动后,基于直连接口生成初始类型 1 LSA(Router LSA),并加入 LSDB。同时自动通过 Hello 报文发现邻居。 | 路由器开机后自动触发 Hello 报文检测邻居并更新初始路由表。 |
2. 邻居发现 | 使用 Hello 报文检测相邻路由器。邻居关系从 Down -> Init -> 2-Way 状态。 |
- Down :未收到对方 Hello- Init :收到 Hello,但未建立双向通信- 2-Way :双向通信已建立。Hello 间隔(默认 10 秒),Dead 间隔(默认 40 秒)。在广播网络中,达到 2-Way 状态后,进行 DR 和 BDR 的选举。 |
3. 邻接建立 | 在 2-Way 状态后,确定是否需要建立邻接关系。需要建立邻接的路由器关系进入 ExStart 、Exchange 、Loading ,最终达到 Full 状态。 |
- ExStart :协商主从关系,初始化 DD 序列号。- Exchange :交换 DD(Database Description)报文,包含 LSA 头部摘要信息。- Loading :通过 LSR(Link State Request)和 LSU(Link State Update)请求和接收完整的 LSA 信息。- Full :邻接关系完全建立,LSDB 同步完成。 |
4. LSA 生成和传播 | 路由器根据网络拓扑生成 LSA,包括类型 1(Router LSA)、类型 2(Network LSA)等。通过 LSU 报文将 LSA 传播给邻居,更新 LSDB。 | - LSA 类型: - 类型 1(Router LSA):描述路由器自身的链路信息。 - 类型 2(Network LSA):由 DR 生成,描述多访问网络的信息。- 使用 DD、LSR、LSU、LSAck 报文完成 LSA 的交换和确认。 |
5. 路由计算(SPF算法) | 基于最新的 LSDB,运行 SPF 算法计算最短路径树,生成路由表。 | SPF 计算触发条件:LSDB 发生变化时触发。 |
6. 路由表更新 | SPF 计算完成后,将结果写入路由表,供数据转发使用。 | 数据转发优先选用 OSPF 计算的路由。 |
7. 刷新计时器 | 当 LSA 的 Age 字段达到 30 分钟(1800 秒),即使拓扑未发生变化,也会重新生成(序列号加 1,Age 重置)并发布自己的 LSA。 | 更新 LSA 的 Age 字段为 0,序列号加 1,重新传播。 |
8. LSA 老化 | 当 LSA 的 Age 字段达到 3600 秒(1 小时),LSA 被标记为过期并从 LSDB 中删除。 | 老化后删除记录。 |
9. 拓扑变化检测 | 如果链路或邻居状态发生变化,路由器生成新的 LSA,并通过 LSU 更新邻居的 LSDB,触发 SPF 重新计算。 | 更新 LSA 的 Age 字段为 0,序列号加 1,重新传播。 |
10. 收敛 | 全部路由器同步 LSDB,运行 SPF 算法后,OSPF 网络完成状态更新并达到一致性。 | 收敛速度与网络大小和拓扑变化复杂度有关。 |
2、ospf 特点
功能 | 描述 |
---|---|
发送数据包 | 224.0.0.5 用于所有OSPF路由器的通信,如Hello包和DR的LSA通告。 224.0.0.6 用于非DR路由器向DR/BDR发送LSA更新。 基于 ip 协议号 89 |
支持 | 支持vlsm, 认证 |
节省流量 | 使用增量更新 |
快速收敛 | 支持自动触发更新, 没有rip的抑制更新, rip在抑制状态下会导致收敛过慢 |
3、OSPF 邻居状态机状态表
状态 | 描述 |
---|---|
Down | 初始状态,路由器尚未收到邻居的任何 OSPF 报文。在此状态下,路由器开始在接口上发送 Hello 报文以发现邻居。 |
Attempt | 仅适用于非广播多访问(NBMA)网络。路由器主动尝试与邻居建立通信,定期发送 Hello 报文,但尚未收到邻居的回应。 |
Init | 路由器收到了邻居的 Hello 报文,但自己的 Router ID 未出现在邻居的 Hello 报文中,表示单向通信,尚未建立双向通信。 |
2-Way | 路由器在邻居的 Hello 报文中看到了自己的 Router ID,确认双向通信已建立。在多访问网络中,处于此状态的路由器将参与 DR 和 BDR 的选举。 |
ExStart | 开始与邻居建立邻接关系,协商主从(Master/Slave)关系,准备交换数据库描述(DD)报文。 |
Exchange | 交换 DBD 报文,分享各自的链路状态摘要信息,以了解对方的链路状态数据库内容。 |
Loading | 路由器通过发送链路状态请求(LSR)报文,向邻居请求所需的链路状态信息,并接收链路状态更新(LSU)报文,更新本地链路状态数据库。 |
Full | 邻接关系完全建立,链路状态数据库已同步。路由器与邻居之间达到了最高级别的邻接状态,可以正常进行路由计算和数据转发。 |
4、接口在 ospf 网络的角色
状态 | 描述 |
---|---|
Down | 接口未启用或未运行 OSPF,或物理/数据链路层故障,OSPF 不在此接口上发送或接收报文。 |
Loopback | 接口被设置为环回状态,OSPF 将其视为稳定的 Point-to-Point 接口,常用于测试或管理。 |
Waiting | 接口等待 DR/BDR 选举完成,在多访问网络中启动时进入此状态,等待计时器到期或收到包含 DR/BDR 信息的 Hello 报文后退出。 |
Point-to-Point | 接口被配置为点对点网络类型,直接连接两个路由器,不进行 DR/BDR 选举,邻居关系建立过程简化。 |
DR | 接口被选举为指定路由器,负责在多访问网络中泛洪链路状态信息,减轻网络负担。 |
BDR | 接口被选举为备份指定路由器,当 DR 失效时接替其角色,确保网络稳定性。 |
DROther | 接口既不是 DR,也不是 BDR,与 DR/BDR 建立完全的邻接关系,与其他 DROther 路由器保持 2-Way 状态。 |
Point-to-Multipoint | 接口被配置为点到多点网络类型,适用于 NBMA 网络,将每个连接视为独立的点对点链接,不进行 DR/BDR 选举。 |
Point-to-Multipoint Non-Broadcast | 类似于 Point-to-Multipoint,但需要手动配置邻居,适用于不支持广播或多播的网络。 |
5、配置
配置接口 Ip
1 | R1(config-if)#int fa0/0 |
1 | R2(config)#int fa0/0 |
1 | R3(config)#int fa0/0 |
配置 ospf
1 | R1(config)#router ospf 10 |
1 | R2(config)#router ospf 10 |
1 | R3(config)#router ospf 10 |
字段 | 描述 |
---|---|
Link ID | Link ID 是该链路状态广告(LSA)的标识符。通常,对于 Router LSA,它是广告此信息的路由器的 Router ID, 不同类型Link ID不同 |
ADV Router | Advertising Router是生成并发布此 LSA 的路由器的 Router ID |
Age | Age 表示 LSA 在网络中存活的时间(以秒为单位)。初始值为 0,每秒递增。最大值为 3600 秒(1 小时),到达该值后 LSA 将被刷新或从数据库中删除。LSA更新后会清空 |
Seq# | Sequence Number 是 LSA 的序列号,用于确保最新的 LSA 覆盖旧的 LSA。较大的序列号表示更新的 LSA。初始序列号为 0x80000001,之后逐渐递增。链路状态状态变化或者周期性刷新会更新seq |
Checksum | Checksum 是用于验证 LSA 完整性的校验和,确保 LSA 数据未在传输过程中被更改。 |
Link count | Link count 表示此 LSA 中描述的链路数量,在 Router LSA 中,这个值表示该路由器的链路总数 |
1 | R1#show ip ospf database |
上面R1已经生成了一条LSA条目类型为1, Type 2需要在邻居建立Full后生成
可以通过查看具体的类型和直接连接router是LSA类型
1 | show ip ospf database router |
LSA类型 | 描述 | 生成者 | 链路状态 ID | 传递范围 |
---|---|---|---|---|
类型1 | 路由器 LSA(Router LSA) | 每个路由器 | 包含路由器的 Router ID | 仅在同一区域内传播 |
类型2 | 网络 LSA(Network LSA) | 指定路由器(DR) | DR接口的 IP 地址 | 仅在同一区域内传播 |
类型3 | 摘要 LSA(Summary LSA) | 区域边界路由器(ABR) | 区域内网络的 网络地址 | 跨区域传播 |
类型4 | 摘要 ASBR LSA(Summary ASBR LSA) | 区域边界路由器(ABR) | ASBR的 Router ID | 跨区域传播 |
类型5 | 外部 LSA(External LSA),也称为 自治系统外部 LSA(AS External LSA) | ASBR(自治系统边界路由器) | 外部路由的目标网络地址 | 跨区域传播 |
类型6 | 多播 LSA(Multicast LSA) | 不支持 | 不使用 | 不支持 |
类型7 | NSSA LSA(Not-so-Stubby Area LSA),用于 NSSA 区域,类似于类型5的外部 LSA | ASBR(自治系统边界路由器) | 外部网络的 网络地址 | 在 NSSA 区域内传播 |
选举 routerID(Down)
查看接口 ospf 信息, 这里可以看到选举出来的 router id 为 192.168.1.1,
Process ID 10 ospf使用进程号
State WAITING接口角色为WAITING 表示正在等待选举DR/BDR
Hello 10, Dead 40, Wait 40, Retransmit 5
1 | R1#show ip ospf interface fa0/0 |
FastEthernet0/0 is up, line protocol is up
Internet address is 192.168.1.1/30, Area 0
Process ID 10 , Router ID 192.168.1.1, Network Type BROADCAST, Cost: 1
Transmit Delay is 1 sec, State WAITING , Priority 1
No designated router on this network
No backup designated router on this network
Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
Hello due in 00:00:10
Index 1/1, flood queue length 0
Next 0x0(0)/0x0(0)
Last flood scan length is 1, maximum is 1
Last flood scan time is 0 msec, maximum is 0 msec
Neighbor Count is 0, Adjacent neighbor count is 0
Suppress hello for 0 neighbor(s)
通过选举规则可以推断出R2和R3的路由id为192.168.1.5和192.168.1.6
6、建立邻居的过程(Init -> 2-Way)
发送组播Hello报文
建立邻居的过程会检查以下参数是否一致:
区域 ID(Area ID)
认证类型和密码
Hello 间隔
死区间隔
子网掩码
字段 | 长度 | 说明 |
---|---|---|
Version | 8 位 | 表示 OSPF 协议的版本号,OSPFv2 用于 IPv4,OSPFv3 用于 IPv6。 |
Type | 8 位 | 表示 OSPF 包的类型,包括 Hello 包、DBD 包、LSR 包、LSU 包、LSAck 包。 |
Packet Length | 16 位 | 表示整个 OSPF 包的长度,包括头部和数据部分,单位是字节。 |
Router ID | 32 位 | 唯一标识发送该 OSPF 包的路由器的 ID,通常为一个 IP 地址格式。 |
Area ID | 32 位 | 表示 OSPF 区域的 ID,主干区域的 ID 为 0。 |
Checksum | 16 位 | 用于验证 OSPF 包头的完整性,接收方通过校验和检查数据传输的准确性。 |
Autype | 16 位 | 指示认证类型,包括无认证(0)、简单密码认证(1)、MD5 认证(2)等。 |
Authentication | 64 位 | 包含认证信息,具体内容取决于认证类型,用于 OSPF 消息的安全性保证。 |
字段 | 长度 | 说明 |
---|---|---|
Network Mask | 32 位 | 网络掩码,指定 OSPF 接口的子网掩码。 |
HelloInterval | 16 位 | Hello 间隔,指定 Hello 包的发送频率(秒)。 |
Options | 8 位 | OSPF 选项字段,表示路由器支持的 OSPF 特性。 |
Rtr Pri (Router Priority) | 8 位 | 路由器优先级,用于 DR/BDR 选举,优先级越高越有可能成为 DR。 |
RouterDeadInterval | 32 位 | 死间隔,表示在该时间(秒)内未收到邻居的 Hello 包即认为其不可达。 |
Designated Router | 32 位 | 指定路由器(DR)的 IP 地址。 |
Backup Designated Router | 32 位 | 备份指定路由器(BDR)的 IP 地址。 |
Neighbor | 32 位 | 邻居的 Router ID,用于记录在网络上直接相连的邻居路由器。 |
… | … | 可能有多个 Neighbor 字段,每个字段表示一个邻居的 Router ID。 |
路由器启动后会自动发送一个 hello 包, 之后会以 10 秒的默认间隔发送 hello 包, 死间隔时间一般为 hello 包间隔的 4 倍
上面包由ospf头和hello报文和本地链路信令数据块(LLS))组成
**本地链路信令数据块(LLS):**用于扩展ospf, 会在发送的ospf数据包后面加上LLS Data Block,上面R1->R2发送的hello报文也被加上了LLS, 启用扩展选项LR, 主要用于在优雅重启期间通知 OSPF 邻居进行 链路状态数据库的重新同步。
字段 | 长度 | 说明 |
---|---|---|
LLS Checksum | 16 位 | LLS Data Block 的校验和,用于数据完整性验证。 |
LLS Data Length | 16 位 | LLS Data Block 的总长度(字节数,不包括 OSPF 报文的其他部分)。 |
TLVs | 可变 | TLV(Type-Length-Value)结构,包含多个控制信息,每个 TLV 传递特定类型的 OSPF 控制数据。 |
字段 | 长度 | 说明 |
---|---|---|
Type | 16 位 | TLV 类型,标识该 TLV 的类型(例如 EO-TLV、NC-TLV 等)。 |
Length | 16 位 | TLV 值的长度(不包括 Type 和 Length 字段的长度),单位为字节。 |
Value | 可变 | TLV 的具体内容,根据类型不同而不同。例如 EO-TLV 中的选项标志,NC-TLV 中的邻居控制标志等。 |
TLV 名称 | 类型编号 | 长度 | 说明 |
---|---|---|---|
Extended Options and Flags (EO-TLV) | 1 | 4 字节 | 包含 OSPF 的扩展选项和标志位,用于启用特定的 OSPF 功能。 |
Neighbor Control (NC-TLV) | 2 | 4 字节 | 邻居控制标志,用于防止 OSPF 邻居关系因 Hello 包丢失而过期,适用于高丢包环境。 |
OSPF Restart Signaling (RS-TLV) | 3 | 4 字节 | 在优雅重启(Graceful Restart)过程中,通知邻居路由器当前处于重启状态,避免邻居关系被中断。 |
Cryptographic Authentication TLV | 5 | 可变 | 用于在 LLS 数据块中实现加密认证,增强 OSPF 报文的安全性。 |
Checksum TLV | 7 | 4 字节 | 提供对 LLS Data Block 的额外校验,用于确保数据传输的完整性。 |
1 | R2#show ip ospf neighbor |
R2收到R1的hello报文后, R2 上已经有了邻居 R1, 但是状态为 init 因为在接收数据包的时候, R1 发送的数据包没有带有 R2 的 router-id, 但是在 R1 下一次发送数据包会带上 R2 的 router-id 因为第一次接收的时候已经加入了邻居 R2, 这个时候 R2 接收第二个 R1 的 hello 报文后 R2 上的邻居状态就会为 2-Way
上面数据包已经在邻居字段带上R2的router-id了
这里R2第二次收到R1的数据包后接口状态改为了2WAY, 因为这次R1发送的数据包有了R2的router-id
1 | R2#show ip ospf neighbor |
然后同样的步骤R1和R2建立了邻居, R2和R3建立了邻居关系
后续默认每隔10s发送一次hello报文keeplive
7、建立邻接关系(ExStart)
选举BR和BDR
在选举DR和BDR的时候接口状态为ExStart
只有广播网络会选取 DR 和 BDR, p2p 类型网络不需要选举
选举DR和BDR的作用: 减少链路状态更新的冗余, 集中管理LSA
如果没有DR的话 邻接关系有n(n-1)/2个, 有DR的话只需要2(n-2)+1个
路由器通过收到的邻居选举dr和bdr
R1[fa0/0] -> R2[fa0/0]网络需要选举出一个BR和BDR R2[fa0/1] -> R3[fa0/0]也需要选举一个BR和BDR
R1[fa0/0] -> R2[fa0/0]网络
由于R2的路由id 192.168.1.5 > 192.168.1.1 所以指定路由为R2, 备份指定路由为R1
1 | R1#show ip ospf neighbor |
1 | R2#show ip ospf neighbor |
R2[fa0/1] -> R3[fa0/0]网络
由于R3的路由id 192.168.1.6 > 192.168.1.5 所以指定路由为R3, 备份指定路由为R2
1 | R2#show ip ospf neighbor |
1 | R3#show ip ospf neighbor |
选举完成后会在DR上生成LSA记录 类型为2
1 | R2#show ip ospf database |
8、邻接关系初始化(Exchange)
只和DR和BDR建立邻接关系
主从选举(单播DD报文)
字段 | 长度 | 描述 |
---|---|---|
Interface MTU | 16 位 | 接口的最大传输单元(MTU),用于防止发送超过邻居接口可处理的最大数据大小。 |
Options | 8 位 | OSPF 的选项字段,包含一些协议扩展位,用于表明发送方支持的 OSPF 功能。 |
00000 | 5 位 | 保留字段,值通常为 0。 |
I(Initial) | 1 位 | 初始位,表示这是第一个 DD 报文,用于邻居状态初始化。 |
M(More) | 1 位 | 更多位,指示是否还有更多的 DD 报文需要发送。M 位为 1 表示后续还有 DD 报文,为 0 表示这是最后一个。 |
M/S(Master/Slave) | 1 位 | 主/从位,值为 1 表示发送方为 Master,值为 0 表示 Slave(router-id大的为master)。 |
DD Sequence Number | 32 位 | 数据库描述报文的序列号,用于主从之间的报文同步和确认。 |
LSA Headers | 可变 | 链路状态广告(LSA)头部,包含路由器的链路状态信息摘要,帮助邻居快速同步链路状态数据库。 |
上面数据包用来和R2协商主从关系和建立序列号, I表示这是第一个包用来, M表示这不是最后一个报文后续还会有DD报文, MS在这里表示假设成为Master
这里由于R2的router-id比R1大所以R2是Master, R1是Slave, 协商好后之后R1和R2就使用Master发送的序列号作为后续序列号(DB Sequence)并且每次+1
1 | R1#show ip ospf neighbor |
R1的接口状态已经为EXCHANGE这是因为邻接关系和主从关系已经建立成功开始准备发送带有LSA的DD报文了
发送LSA信息(单播DD报文)
字段名称 | 长度 | 说明 |
---|---|---|
LSA Age | 16 位 | 表示 LSA 已在网络中存在的时间(以秒为单位)。这个字段的值每秒递增,最大值为 3600 秒(1 小时)。 |
Options | 8 位 | 指定此 LSA 支持的 OSPF 特性和选项,例如多播、优雅重启等。 |
LSA Type | 8 位 | 指定 LSA 的类型,用于标识不同的 OSPF LSA 类型(如 Router LSA、Network LSA、External LSA 等)。 |
Link State ID | 32 位 | 标识该 LSA 的链路状态 ID,对于不同类型的 LSA,此字段的含义不同。 |
Advertising Router | 32 位 | 生成并发布此 LSA 的路由器的 Router ID,用于标识 LSA 的来源。 |
Sequence Number | 32 位 | 此字段用于判断 LSA 的新旧版本。更高的序列号表示更新的 LSA。 |
Checksum | 16 位 | LSA 的校验和,用于确认 LSA 数据的完整性,确保 LSA 在传输过程中未被修改。 |
Length | 16 位 | 此 LSA 的总长度(以字节为单位),包括头部和数据。 |
发送的DB Sequence为R2第一次发送给R1DD数据包里面的DB Sequence字段, M表示不是最后一个数据包, 这个数据包已经没有MS, 因为在选举的结果R1是Slave
这里发送了一条LSA Header给R2, 这是R1 LSDB 摘要信息, 主要用来让R2选择什么信息是它需要的
发送的DB Sequence在3384的基础上增加了1, M表示后面还有DD报文, MS表示是Master
之后还会发送一个DD报文用来确认同步完成
9、请求LSA(Loading)
发送LSR报文(单播)
字段 | 长度 | 含义 |
---|---|---|
LS type | 32比特 | LSA的类型号。 |
Link State ID | 32比特 | LSA 的链接状态 ID,标识链路状态的具体对象。 |
Advertising Router | 32比特 | 生成并发布该 LSA 的路由器的 ID。 |
R1会根据收到的DD报文的LSA Header来请求自己需要的路由信息
10、回复LSA(Loading)
发送LSU报文(单播)
收到LSR后根据请求的LSA返回对应的LSU, 对端接收到后如果seq大于本地就进行更新, 更新后又会自动触发LSU报文
- 非DR路由器将LSU发送到224.0.0.6,仅由DR/BDR接收。
- DR会将LSU发送到224.0.0.5,让所有非DR路由器接收。
11、确认LSU(Loading)
发送LSAck报文(单播)
当路由器收到LSA后会返回LSAck报文, 如果多个LSA会打包到一个LSAck里面, 不管更新LSA没都会返回, 按原路返回
LSAck报文不只有回复的那几条, 因为在期间触发了多次更新报文(链路状态变化, 例如R1的link id的链路类型变化Stub Network->Transit Network), 因为R2中LSA条目Seq变化自动触发发送LSU报文
12、计算最佳路径(Full)
路由器根据收到的LSDB计算出最佳路径, 使用SPF算法
13、常见LSA类型
类型一
字段 | 长度 | 含义 |
---|---|---|
Link State ID | 32比特 | 生成LSA的Router ID。 |
V (Virtual Link) | 1比特 | 如果产生此LSA的路由器是虚连接的端点,则置为1。 |
E (External) | 1比特 | 如果产生此LSA的路由器是ASBR,则置为1。 |
B (Border) | 1比特 | 如果产生此LSA的路由器是ABR,则置为1。 |
# links | 16比特 | LSA中所描述的链路信息的数量,包括路由器上处于某区域中的所有链路和接口。 |
Link ID | 32比特 | 路由器所接入的目标,其值取决于连接的类型:1:Router ID;2:DR的接口IP地址;3:网段/子网号;4:虚连接中对端的Router ID。 |
Link Data | 32比特 | 连接数据,其值取决于连接的类型:unnumbered P2P:接口的索引值;stub网络:子网掩码;其它连接:路由器接口的IP地址。 |
Type | 8比特 | 路由器连接的基本描述:1:点到点连接到另一台路由器;2:连接到传输网络;3:连接到stub网络;4:虚拟链路。 |
# TOS | 8比特 | 连接不同的TOS数量。 |
metric | 16比特 | 链路的开销值。 |
TOS | 8比特 | 服务类型。 |
TOS metric | 16比特 | 和指定TOS值相关联的度量。 |
LSA类型1还分为4个类型
链接类型 | 描述 | Link ID |
---|---|---|
1 | 与另一个路由器的点对点连接。 | 邻居路由器ID |
2 | 连接到交通网络。 | DR的IP地址 |
3 | 连接到存根网络。 | IP网络 |
4 | 虚拟链接 | 邻居路由器ID |
类型二
字段 | 长度 | 含义 |
---|---|---|
Link State ID | 32比特 | DR的接口IP地址。 |
Network Mask | 32比特 | 该广播网或NBMA网络地址的掩码。 |
Attached Router | 32比特 | 连接在同一个网络上的所有路由器的Router ID,也包括DR的Router ID。 |
类型三和类型四
字段 | 长度 | 含义 |
---|---|---|
Link State ID | 32比特 | 通告的网络地址。如果是ASBR Summary LSA,此字段表示ASBR的Router ID。 |
Network Mask | 32比特 | 该广播网或NBMA网络地址的掩码。如果是ASBR Summary LSA,此字段无意义,设置为0.0.0.0。 |
metric | 24比特 | 到目的地址的路由开销。 |
TOS | 8比特 | 服务类型。 |
TOS metric | 24比特 | 和指定TOS值相关联的度量。 |
类型五
字段 | 长度 | 含义 |
---|---|---|
Link State ID | 32比特 | 通告的网络地址。 |
Network Mask | 32比特 | 通告的目的地址的掩码。 |
E | 1比特 | 外部度量值类型:0:第一类外部路由;1:第二类外部路由。 |
metric | 24比特 | 到目的地址的路由开销。 |
Forwarding Address | 32比特 | 到所通告的目的地址的报文将被转发到这个地址。 |
External Route Tag | 32比特 | 添加到外部路由上的标记。OSPF本身并不使用这个字段,它可以用来对外部路由进行管理。 |
TOS | 8比特 | 服务类型。 |
TOS metric | 24比特 | TOS附加距离信息。 |