OSPF协议的LSDB分析和路由计算(2)

2020-02-21 00:01

北京金桥世纪

OSPF作为优秀的IGP路由协议之一,本身特别复杂,概念太多,好在我司已有不少优秀的OSPF方面的文章,内容丰富详细,颇具参考价值。正也因为如此,这里只是结合自己的学习过程,把作为OSPF路由测试新手测试时遇到的一些问题和心得,拿出来和大家分享一下,请指正。

1 OSPF协议的LSDB分析和路由计算

1.1 OSPF的路由形成概述

首先从简要介绍一下OSPF协议的路由计算过程: 1、 交换机间互发hello报文建立邻接;

2、 邻接路由器间发送update报文,传播第一、二类LSA到全区域;

3、 各路由器根据第一、二类LSA获得网络拓扑、计算得到区域的内部路由(每个区域

单独计算);

4、 ABR根据步骤3计算得到的各域内路由为骨干区域生成第三、四类LSA,通过update

报文向骨干区域传播;

5、 ASBR发送update报文,向整个AS发布第五类LSA; 6、 各路由器根据第三、四、五类LSA继续计算域间路由。

1.2 组网图

本文将以图1的组网图来详细描述OSPF的LSDB的形成和OSPF路由计算过程。

北京金桥世纪

图1 OSPF组网图

组网说明:

网络由五台路由器8505-1、8505-2、8505-3、8508和8512组成,区域划分、路由器的router id和各网段IP地址都已经在图上标注清楚。为了便于记忆识别,各路由器的接口IP地址的最后一位与自己的router id的最后一位保持一致。 例如:

8505-2的router id为0.1.1.1,那么它在网段192.168.100.0/24上的接口的IP就是192.168.100.1/24,同理8508(router id为0.2.2.2)在该网段上的接口的IP为192.168.100.2/24。

另外,area 2为nssa区域,area 3通过area 1和area 0建立虚连接。

1.3 OSPF的启动

1.3.1 启动OSPF

使交换机运行OSPF用下面这条命令:

ospf [ process-id [ router id router id | vpn-instance vpn-instance-name] ]

process-id:OSPF进程号,取值范围为1~65535。如果不指定进程号,将使用缺省进程号

北京金桥世纪

1。process-id只具有本地意义。

推荐使用ospf process-id router id router id的方式启动OSPF,这样该OSPF进程的router id将不会随路由器的其它参数的改变而改变。 例如:

在8505-2上配置如下: ospf 100 router id 0.1.1.1

? 说明:

一、OSPF的router id选择优先级依次如下:

1. 建立OSPF 进程时候配置的router id,无条件使用;

2. RM(路由管理)配置的router id(通过命令行router id router id 配置,在没有别的进程使用它的情况下);

3. 接口地址(loopback优先,没有被别的进程使用的优先)。

因此当建立OSPF进程时如果没有明确指定router id,则会存在随机选择router id的情况,对以后的路由配置、管理带来障碍。

二、使用命令行router id router id 设定router id时,router id必须设置为有效的IP地址。但是建立OSPF 进程时配置的router id可以使用诸如0.0.0.1的IP地址:

ospf 102 router id 0.0.0.1

1.3.2 接口使能OSPF

仅仅在交换机上启动OSPF进程是不能和其它交换机建立OSPF邻居、交换路由信息的。这时必须首先在选定区域内使用network命令指定网段,以间接指定要运行OSPF的接口。 network ip-address ip-mask

ip-address:接口所在网段地址。

ip-mask:IP地址通配符(类似于IP地址的掩码取反之后的形式),也支持IP地址掩码输入。

通常一个网段指定一个vlan虚接口,这样该vlan虚接口就可以发送接收OSPF协议报文了。

例如:

在8505-2上area 0视图下配置vlan虚接口所在网段后,8505-2和8508相连接的接口就开始发送接受OSPF报文了:

network 192.168.100.0 0.0.0.255

? 说明:

一、为什么不是通过指定接口本身来使能OSPF?

答:因为OSPF的区域参数中有个地址范围列表(List of address ranges),网络和主机是否属于

一个区域,取决于其地址是否在区域所定义的某个地址范围之内。详见rfc2328附录“C.2 区域参数”。

二、为了在一个接口上运行OSPF协议,必须使该接口的主IP地址落入该命令指定的网段范围。

如果是该接口的从IP地址落入该命令指定的网段范围,则该接口不会运行OSPF协议。当该vlan内没有up状态端口时,该接口也不会运行OSPF协议,display ospf process-id brief也看不到该接口。

三、当network命令指定的网络地址范围大于vlan虚接口所在网络地址范围时,发布的是vlan虚

接口所在的网络地址;若存在两个接口同时符合network指定的网段时,这两个接口同时使能OSPF,但发布的网段同样也只是它们各自所在的网段。

北京金桥世纪

1.4 LSDB详解

各路由器形成邻接后,各区域路由器彼此间通过update报文同步LSA。在8505-2上键入命令display ospf 100 lsdb,显示area 0中的LSA:

Type LinkState ID AdvRouter Age Len Sequence Metric Where

Stub 201.0.0.0 0.1.1.1 1124 24 0x0 0 SpfTree Rtr 0.1.1.1 0.1.1.1 1124 60 0x800000ce 0 SpfTree Rtr 0.5.5.5 0.5.5.5 643 36 0x80000004 0 SpfTree Rtr 0.2.2.2 0.2.2.2 1752 48 0x800001c1 0 SpfTree Rtr 0.3.3.3 0.3.3.3 640 60 0x800001fc 0 SpfTree Net 192.168.100.2 0.2.2.2 1752 32 0x8000000d 0 SpfTree Net 192.168.110.1 0.1.1.1 1124 32 0x80000009 0 SpfTree Net 192.168.120.2 0.2.2.2 1752 32 0x80000008 0 SpfTree SNet 204.0.0.0 0.2.2.2 644 28 0x800000f7 14 Uninitialized SNet 192.168.130.0 0.2.2.2 644 28 0x8000012b 13 Uninitialized SNet 192.168.140.0 0.5.5.5 648 28 0x80000004 12 Uninitialized SNet 192.168.140.0 0.3.3.3 645 28 0x80000090 11 Uninitialized SNet 205.0.0.0 0.5.5.5 648 28 0x80000004 1 Uninitialized

AS External Database:

Type LinkState ID AdvRouter Age Len Sequence Metric Where ASE 9.0.0.0 0.2.2.2 926 36 0x80000035 1 Uninitialized ASE 19.0.0.0 0.1.1.1 242 36 0x8000003c 1 Ase List

先来解释一下LSDB中各个字段的含义。

Type:LSA的类型,rfc2328共定义了五种LSA,和85实现的LSA类型一一对应,见下表。各个LSA的详细论述见下文。

表1 五种LSA类型

85 LSA rfc2328定义的LSA 所描述的目的地 传播范围 Rtr Net SNet ABR ASE Router LSA Network LSA Summary Network Summary ASBR AS External LSA 路由器 网络 网络 路由器 网络 域内 域间 AS内 LinkStateID 始发的RouterID DR在该网段的接口IP 被通告的网络的IP 被通告的ASBR的Router ID 目的地IP LinkState ID:连接状态标识符,各LSA所表达的意义不同,其LinkState ID内容也不同,见上表。

AdvRouter:发布该LSA的路由器的router id。 Age:LSA已经存在时间,单位为秒。LSA最大存活时间为3600秒,更新时间为1800秒;也就是说如果由路由器自己生成的LSA的LS时限达到了1800,就需要生成LSA的新

北京金桥世纪

实例,即使LSA体中的内容完全一样(除了LSA头部)。

Len:LSA的长度。

Sequence:LSA的生成序列号,包含同一内容的LSA独立编号,从0x80000001起,至0x79999999止,往复循环。

Metric:发布路由器到发布网段的花费。

Where:是我司OSPF协议的具体实现细节,涉及LSA的存放,与理解协议本身关系不大,一般可以不理会该域。

那么这些LSA是如何形成的? 且看下文解说:)。

1.5 Router LSA

Router LSA是第一类LSA。首先看看0.1.1.1生成的Router LSA:

Type LinkState ID AdvRouter Age Len Sequence Metric Where Rtr 0.1.1.1 0.1.1.1 1124 60 0x800000ce 0 SpfTree

生成时间:当0.1.1.1和其它路由器建立邻接关系后,0.1.1.1就会生成并发布Router LSA。

用display ospf 100 lsdb router verbose命令可以查看该LSA的详细内容: Type : Router Ls id : 0.1.1.1 Adv rtr : 0.1.1.1 Ls age : 254 Len : 60

Seq# : 0x800000fb Chksum : 0x3a88

Options : (DC) ASBR Link count: 3

Link ID: 201.0.0.0 Data : 255.0.0.0 Type : StubNet Metric : 1

Link ID: 192.168.110.3 Data : 192.168.110.1 Type : TransNet Metric : 10

Link ID: 192.168.100.2 Data : 192.168.100.1 Type : TransNet Metric : 5

其中加粗字体是新出现的字段。 Options:表明发布路由器的身份,这里表示0.1.1.1是ASBR(AS boundary routers),ASBR是与属于其他AS的路由器交换路由信息的路由器。ASBR在AS内宣告AS外部路由信息。

Link count是3,表示0.1.1.1接入了三个网段,后面是各个网段的详细说明,包括Link


OSPF协议的LSDB分析和路由计算(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:建筑结构实训任务

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: