OSPF的概述

OSPF(开放式最短路径优先),是我们常见的动态路由之一,也是应用比较广泛的一种路由协议。

OSPF区域

OSPF分为骨干区域和非骨干区域 (area 0 为骨干区域 ,area 1 2 3 为非骨干区域
骨干区域(区域0):骨干区域必须连接所有的非骨干区域,而且骨干区域不可分割,有且只有一个,一般情况下,骨干区域内没有终端用户。
非骨干区域(非0区域):非骨干区域一般根据实际情况而划分,必须连接到骨干区域(不规则区域也需通过tunnel或virtual-link连接到骨干区域)。一般情况下,非骨干区域主要连接终端用户和资源。
注:处于两个区域的路由设备我们称作:边界路由器 ABR
ABR是位于一个或多个OSPF区域边界上,将这些区域连接到主干网络的路由器

OSPF是一种基于链路状态的路由协议,链路状态时通过LSA来进行通告给网络中的其他路由器

OSPF 协议中规定在运行OSPF 的网络中必须有区域0吗?

对于是否有区域0要看你的网络是多区域还是单区域了!
多区域时所有区域必须和区域0相连。所以区域0是必不可少的!
单区域时可以随意规划area0、area10、area11都可以,因为只有一个区域!

OSPF中消息中的报文分为:

1、Hello报文:路由器和路由器打招呼用的
2、DD报文:数据库描述,告诉对方当前设备存在哪一些链路信息
3、LSR报文:告诉网络中的设备,缺哪一些信息找我要
4、LSU报文:缺哪一些信息 我给你
5、LSAck报文:我已收到你给我的链路信息

Router-ID :是ospf网络中用于区分路由器的唯一标识,router-id遵循如下规则:

1、如果有手动配置,那么就优先使用手动配置的
2、如果1不满足,且配置有配置逻辑接口(回环口,那么就会默认使用该路由器上的逻辑口来作为router ID ,如果存在多个,那么根据数值最大的来作为router id
3、如果1 和 2 都不满足,那么路由器会选择所有活动的物理接口来作为router id 不论是否参加了ospf网络运算,一样安装数值最大的来作为router id

OSPF网络中的关系:

邻居关系:

1、在ospf协议中,每台路由器都会周期性的向外发送hello报文,如果相邻路由器发送给对方的hello报文完全一致,那么两台路由器就会彼此建立邻居路由关系 这就叫做邻居关系

邻接关系:

LSDB (链路状态数据库) :存放了各自路由表中的路由信息
1、在点对点或者P2MP二层网络类型中,两台互为邻居关系的路由器一定会同步彼此的LSDB (链路状态数据库),如果两台同步成功后,就会建立了邻接关系

只有两个相邻的路由器才能够形成邻居关系
不相邻的两个路由器建立的关系叫做邻接关系

DR :指定路由器
BDR : 备份指定路由器
以上两种只适用与广播网络或非广播多路访问网络

DR 和 BDR 的选举规则 : 由于在一个广播网络和NBNA 网络中,通过向网络中发送Hello 报文 报文中包含了 每一个路由器的router-ID 和优先级 ,路由器的优先级的取值范围是从0 - 255 取值越小优先级越高

display ospf peer的输出解释

项目

描述

Area

邻居所属的区域

interface

与邻居相连的接口

Router ID

邻居Router ID

Address

邻居接口地址

State

邻居状态:
  • Down:该状态为邻居的初始状态。表示没有邻居收到任何信息。在NBMA网络上,Hello报文在该状态时仍然可以收发,周期为Poll Interval(Hello Interval<oll Interval)

  • Attempt:该状态只存在于NBMA网络上,表明正在尝试建立邻居关系。此时,Hello报文的收发周期为Hello Interval(Hello Interval<oll Interval)

  • Init:该状态表明已经接收到了从邻居发送来的Hello报文

  • 2-Way:该状态表明已经接收到了从邻居发送过来的Hello报文,并且该Hello报文的Neighbor List中包含本地Router ID,即双方可以互通

  • ExStart:该状态为建立Adjacency的第一步,进行主从关系、DD Sequence Number的协商

  • Exchange:从该状态开始,进行LSDB同步操作,交互的报文有DD报文、LSR报文、LSU报文

  • Loading:LSDB正在进行同步操作,交互的报文有LSR报文和LSU报文

  • Full:该状态说明,邻居的LSDB已经同步完成,双方建立了Full邻接关系

Mode

DD交换进程中的作用为Master或Slave:
  • Nbr is Master:邻居是Master,主动发送DD报文

  • Nbr is Slave:邻居是Slave,配合Master发送DD报文

Priority

邻居的优先级

DR

指定路由器

BDR

备份指定路由器

MTU

邻居接口MTU的值

Dead timer due in 35 sec

Dead定时器在35秒后到时

Retrans timer interval

重传LSA的时间间隔,单位为秒

Authentication Sequence

认证序列号                               

OSPF的单区域的配置

实例一:拓补图如下

提前配置好主机IP地址以及端口IP地址

OSPF的配置
AR2的配置

[AR2]interface  LoopBack 1   配置逻辑口作为ospf的router id
[AR2-LoopBack1]ip address 1.1.1.1 24 
[AR2]ospf 1 router-id 1.1.1.1  
[AR2-ospf-1]area 0    (区域为0)
[AR2-ospf-1-area-0.0.0.0]network 192.168.100.0 0.0.0.255  
[AR2-ospf-1-area-0.0.0.0]network 192.168.1.0 0.0.0.255 
[AR2-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.255  (共享直连网段 网段+子网掩码的反码)

 AR1的配置

[Huawei]int LoopBack 1
[Huawei-LoopBack1]ip address 2.2.2.2 24 
[Huawei]ospf 1 router-id 2.2.2.2 
[Huawei-ospf-1]area 0
[Huawei-ospf-1-area-0.0.0.0]network 192.168.1.0 0.0.0.255 
[Huawei-ospf-1-area-0.0.0.0]network 192.168.2.0 0.0.0.255 
[Huawei-ospf-1-area-0.0.0.0]network 2.2.2.2 0.0.0.255

 AR3的配置

[Huawei]int LoopBack 1
[Huawei-LoopBack1]ip address 3.3.3.3 24 
[Huawei]ospf 1 router-id 3.3.3.3
[Huawei-ospf-1]area 0 
[Huawei-ospf-1-area-0.0.0.0]network 192.168.200.0 0.0.0.255 
[Huawei-ospf-1-area-0.0.0.0]network 192.168.2.0 0.0.0.255 
[Huawei-ospf-1-area-0.0.0.0]network 3.3.3.3 0.0.0.255 

 pc3ping pc4能够互通

 实例二:使用ospf协议 没有用interface loopback 

 提前配置好主机IP地址以及端口IP地址

R4的配置

[Huawei]ospf 1
[Huawei-ospf-1]area 0
[Huawei-ospf-1-area-0.0.0.0]network 192.168.1.0 0.0.0.255   ##反子网掩码
[Huawei-ospf-1-area-0.0.0.0]network 192.168.2.0 0.0.0.255

display ip routing-table protocol ospf

 

 R5的配置

[Huawei]ospf 1
[Huawei-ospf-1]area 0
[Huawei-ospf-1-area-0.0.0.0]network 192.168.2.0 0.0.0.255
[Huawei-ospf-1-area-0.0.0.0]network 192.168.3.0 0.0.0.255
[Huawei-ospf-1-area-0.0.0.0]network 192.168.4.0 0.0.0.255 

 R6的配置

[Huawei]ospf 1
[Huawei-ospf-1]area 0
[Huawei-ospf-1-area-0.0.0.0]network 192.168.3.0 0.0.0.255
[Huawei-ospf-1-area-0.0.0.0]network 192.168.5.0 0.0.0.255

pc5 ping pc6

pc5 ping pc7

 pc6 ping pc7

实例三:拓扑图如下

  提前配置好主机IP地址以及端口IP地址

AR6的配置

[AR6-GigabitEthernet0/0/2]ospf 1
[AR6-ospf-1]area 0
[AR6-ospf-1-area-0.0.0.0]network 172.16.10.0 0.0.0.255
[AR6-ospf-1-area-0.0.0.0]network 172.16.20.0 0.0.0.255
[AR6-ospf-1-area-0.0.0.0]network 172.16.1.0 0.0.0.255

display ospf interface   查看与邻居相连的接口

display ospf peer命令输出信息描述

 AR7的配置

[AR7]ospf 1
[AR7-ospf-1]area 0
[AR7-ospf-1-area-0.0.0.0]network 172.16.10.0 0.0.0.255
[AR7-ospf-1-area-0.0.0.0]network 172.16.30.0 0.0.0.255
[AR7-ospf-1-area-0.0.0.0]network 172.16.2.0 0.0.0.255

AR8的配置

[AR8]ospf 1
[AR8-ospf-1]area 0
[AR8-ospf-1-area-0.0.0.0]network 172.16.20.0 0.0.0.255
[AR8-ospf-1-area-0.0.0.0]network 172.16.30.0 0.0.0.255
[AR8-ospf-1-area-0.0.0.0]network 172.16.3.0 0.0.0.255

pc8 ping pc9

pc8 ping pc10

pc9 ping pc10

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐