基础实战篇 – OSPF配置

一. 初识OSPF

1.1. OSPF概述

OSPF是开放式最短路径优先,是IETF(国际互联网工程任务组)开发的一个基于链路状态的IGP(内部网关协议)。目前针对IPV4协议使用是OSPF。

动态路由协议因其灵活性高、可靠性强、易于扩展等特点被广泛应用于现网。在动态路由协议中,OSPF是使用场景非常广泛的动态路由协议之一

1.2. OSPF特性

  • 版本:V2支持IPv4,V3支持IPv6
  • 基于SPF算法,也被称为Dijkstra算法
  • 使用主播收发部分协议报文,主播地址为224.0.0.5、224.0.0.6
  • 支持区域划分
  • 支持等价路由
  • 支持报文认证(明文、密文)

1.3. OSPF的专业术语

名称描述
router-id用于在一个 OSPF中唯一的标识一台路由器
area从逻辑上将设备划分为不同的组,每个组用区域号来标识
CostCost值等于100Mbit/s接口带宽,其中100Mbit/s为指定的默认参考值
进程号OSPF支持多进程,在同一台设备上可以运行多个不同的OSPF进程,它们之间互不影响彼此独立

1.4. OSPF维护的3张表

表名描述
邻居表查看OSPF路由器之间的邻居状态使用命令display ospf peer查看
LSDB表保存自己产生的即从邻居收到的LSA信息,使用命令display ospf lsdb查看
OSPF路由表包括Desttination、Cost和NextHop等指导转发的信息,使用display ospf routing命令查看

1.5. OSPF报文类型

报文类型作用
Hello发现和维护邻居关系
Database Description交互链路状态数据库摘要
Link State Request请求特定的链路状态信息
Link State Update发送详细的链路状态信息
Link State Ack发送确定报文

1.6. OSPF的邻居状态

项目Value
down邻居的初始状态,表示没有从邻居收到任何信息
init收到了hello报文,但是自己不再收到的hello报文的邻居列表中
two-way收到了对方的hello报文,而且在hello报文里看到自己的router-id,选DR/BDR
extart发送DD报文,选择主/从
exchange相互发送包含链路状态信息摘要的DD报文,描述本地LSDB的内容
loading相互发送LSR报文,请求LSU通告LSA

二. 实验题

2.1. 实验1:点到点链路上的OSPF

2.1.1. 实验目的

  • 学会在路由器上启用OSPF路由进程
  • 学会启用参与路由协议的接口,并且通告网络级所在的区域
  • 掌握度量值Cost的计算方法
  • 掌握Hello相关参数的配置方法
  • 了解点到点链路上的OSPF特征
  • 学会查看和调试OSPF路由协议的相关信息

2.1.2. 实验拓扑图

点到点链路 OSPF 拓扑图

2.1.3. 实验步骤

(1)IP地址配置

1)配置路由器R1,命令如下:

< Huawei > system-view [ Huawei ] undo info-center enable [ Huawei ] sysname R1 [ R1 ] interface s0/0/0 [ R1-Serial0/0/0 ] ip address 192.168.12.1 24 [ R1-Serial0/0/0 ] undo shutdown [ R1-Serial0/0/0 ] quit [ R1 ] interface LoopBack 0 [ R1-LoopBack0 ] ip address 1.1.1.1 24 [ R1-LoopBack0 ] quit
R1 IP 配置截图

2)配置路由器R2,命令如下:

< Huawei > system-view [ Huawei ] undo info-center enable [ Huawei ] sysname R2 [ R2 ] interface s0/0/0 [ R2-Serial0/0/0 ] ip address 192.168.23.2 24 [ R2-Serial0/0/0 ] undo shutdown [ R2-Serial0/0/0 ] quit [ R2 ] interface s0/0/1 [ R2-Serial0/0/1 ] ip address 192.168.12.2 24 [ R2-Serial0/0/1 ] undo shutdown [ R2-Serial0/0/1 ] quit [ R2 ] interface LoopBack 0 [ R2-LoopBack0 ] ip address 2.2.2.2 24 [ R2-LoopBack0 ] quit
R2 IP 配置截图

3)配置路由器R3,命令如下:

< Huawei > system-view [ Huawei ] undo info-center enable [ R2 ] sysname R3 [ R3 ] interface s0/0/1 [ R3-Serial0/0/1 ] ip address 192.168.23.3 24 [ R3-Serial0/0/1 ] undo shutdown [ R3-Serial0/0/1 ] quit [ R3 ] interface LoopBack 0 [ R3-LoopBack0 ] ip address 3.3.3.3 24 [ R3-LoopBack0 ] quit
R3 IP 配置截图

(2)OSPF路由协议的配置

1)路由器R1的配置如下:

[ R1 ] ospf router-id 1.1.1.1 #OSPF的进程为1,router-id为1.1.1.1 [ R1-ospf-1 ] area 0 #进入区域0 #命令”network 192.168.12.0 0.0.0.255″的作用为匹配192.168.12.0/24网段的ip地址,并且将ip地址属于本网段的接口全部激活OSPF [ R1-ospf-1-area-0.0.0.0 ] network 192.168.12.0 0.0.0.255 [ R1-ospf-1-area-0.0.0.0 ] network 1.1.1.0 0.0.0.255 #通告网络1.1.1.0 [ R1-ospf-1-area-0.0.0.0 ] quit #退出
R1 OSPF 配置截图
💡 技术要点: OSPF选择router-id的规则
场景参数描述
手动配置router-id就作为本设备的路由器id
已创建OSPF进程系统会自动生成设备的router-id
无手动配置router-idrouter-id的选举原则为:设备上有环回口时,选择环回口地址大的作为本设备的router-id;设备上没有环回口时,选择接口ip地址大的作为router-id

说明一点:手动配置的router-id将不生效时,如果想使用手动配置的router-id。可以在用户视图模式下使用reset ospf process命令重设OPF进程是新的router-id生效。还可以删除当前OSPF配置,再重新配置OSPF进程时加上对应的router-id

2)路由器R2的配置如下:

[ R2 ] ospf router-id 2.2.2.2 [ R2-ospf-1 ] area 0 #进入区域0 [ R2-ospf-1-area-0.0.0.0 ] network 192.168.12.0 0.0.0.255 [ R2-ospf-1-area-0.0.0.0 ] network 192.168.23.0 0.0.0.255 [ R2-ospf-1-area-0.0.0.0 ] network 2.2.2.0 0.0.0.255 #通告网络2.2.2.0 [ R2-ospf-1-area-0.0.0.0 ] quit #退出
R2 OSPF 配置截图

3)路由器R3的配置如下:

< Huawei > system-view [ Huawei ] sysname R3 [ R3 ] undo info-center enable [ R3 ] ospf router-id 3.3.3.3 [ R3-ospf-1 ] area 0 #进入区域0 [ R3-ospf-1-area-0.0.0.0 ] network 192.168.23.0 0.0.0.255 [ R3-ospf-1-area-0.0.0.0 ] network 3.3.3.0 0.0.0.255 #通告网络3.3.3.0 [ R3-ospf-1-area-0.0.0.0 ] quit #退出
R3 OSPF 配置截图
💡 技术要点: OSPF协议参数
参数名描述
多进程在同一台设备上可以运行多个不同的OSPF进程,他们之间互相不影响彼此独立
进程号可以在创建OSPF进程时指定进程号,若不指定,默认进程号为1

说明:不同OSPF进程之间的路由交互,相当于不同路由协议之间的路由交互

2.1.3. 实验调试

(1)查看邻居表

#查看R1的邻居表 [ R1 ] display ospf peer brief
OSPF 邻居表验证
💡 技术要点: 邻居表参数名
参数名描述
Area Id表示邻居在某个区域建立的OSPF的邻居关系。这里表示在Area 0中与邻居建立了OSPF的邻居关系
Interface路由器自己和邻居路由器相连的接口。这里表示为s0/0/0接口与邻居相连
Neighbor id表示邻居的router-id。这里表示R1的邻居的router-id为2.2.2.2
State邻居的状态,其中Full表示已经建立的邻接关系,并且双方的数据库已经同步了。在P2P网络中属于最终的状态。当然,在广播型网络中,非指定路由之间的状态会停留在2-Way

(2)查看LSDB表

#查看R1的LSDB表 [ R1 ] display ospf lsdb
LSDB 表截图
💡 技术要点: 数链状态数据库参数信息
参数名描述
TypeLSA的类型
LinkState ID标识每个LSA
AdvRouter表示通告路由器,代表产生该LSA的设备
Age表示本LSA的老化时间
Len代表LSA的大小
Sequence代表LSA的序列号
Metric开销值

(3)查看路由表表

#查看R1的路由表 [ R1 ] display ip routing-table
路由表截图

(4)查看接口状态

#查看R1的接口状态 [ R1 ] display ospf interface s0/0/0
接口 OSPF 状态截图
💡 技术要点
参数名描述
Cost接口度量值为1562
State链路类型为P-2-P
Type网络类型为P2P
MTU最大传输单元为1500B
HelloHello报文的间隔时间为10S
Dead 40Hello报文的死亡时间为40S
⚠️ 说明:OSPF邻接关系不能建立的常见原因如下
• 区域号码不一致
• 特殊区域的区域类型不匹配
• 认证类型或密码不一致
• 路由器ID相同
• Hello包被ACL deny(拒绝通行)
• 链路上的MTU不匹配
• 接口下的OSPF网络类型不匹配

2.2. 实验2:MA网络上的OSPF

2.2.1. 实验目的

  • 学会在路由器上启动OSPF进程
  • 学会启用参与路由协议的接口,并通告网络及所在的区域
  • 学会修改参考带宽
  • 学会DR选举的控制

2.2.2. 实验拓扑图

MA 网络 OSPF 拓扑图

2.2.3. 实验步骤

(1)配置ip地址

1)配置路由器R1,命令让如下:

< Huawei > system-view [ Huawei ] undo info-center enable [ Huawei ] sysname R1 [ R1 ] interface g0/0/0 [ R1-GigabitEthernet0/0/0 ] ip address 10.1.1.1 24 [ R1-GigabitEthernet0/0/0 ] undo shutdown [ R1-GigabitEthernet0/0/0 ] quit [ R1 ] interface LoopBack 0 #创建环回口编号为0 [ R1-LoopBack0 ] ip address 1.1.1.1 24 #配置ip地址 [ R1-LoopBack0 ] quit
MA 网络 R1 配置截图

2)配置路由器R2,命令让如下:

< Huawei > system-view [ Huawei ] undo info-center enable [ Huawei ] sysname R2 [ R2 ] interface g0/0/0 [ R2-GigabitEthernet0/0/0 ] ip address 10.1.1.2 24 [ R2-GigabitEthernet0/0/0 ] undo shutdown [ R2-GigabitEthernet0/0/0 ] quit [ R2 ] interface LoopBack 0 #创建环回口编号为0 [ R2-LoopBack0 ] ip address 2.2.2.2 24 #配置ip地址 [ R2-LoopBack0 ] quit
MA 网络 R2 配置截图

3)配置路由器R3,命令让如下:

< Huawei > system-view [ Huawei ] undo info-center enable [ Huawei ] sysname R3 [ R3 ] interface g0/0/0 [ R3-GigabitEthernet0/0/0 ] ip address 10.1.1.3 24 [ R3-GigabitEthernet0/0/0 ] undo shutdown [ R3-GigabitEthernet0/0/0 ] quit [ R3 ] interface LoopBack 0 #创建环回口编号为0 [ R3-LoopBack0 ] ip address 3.3.3.3 24 #配置ip地址 [ R3-LoopBack0 ] quit
MA 网络 R3 配置截图

4)配置路由器R4,命令让如下:

< Huawei > system-view [ Huawei ] undo info-center enable [ Huawei ] sysname R4 [ R4 ] interface g0/0/0 [ R4-GigabitEthernet0/0/0 ] ip address 10.1.1.4 24 [ R4-GigabitEthernet0/0/0 ] undo shutdown [ R4-GigabitEthernet0/0/0 ] quit [ R4 ] interface LoopBack 0 #创建环回口编号为0 [ R4-LoopBack0 ] ip address 4.4.4.4 24 #配置ip地址 [ R4-LoopBack0 ] quit
MA 网络 R4 配置截图

(2)OSPF配置

1)配置路由器R1,命令让如下:

< R1 > system-view [ R1 ] ospf router-id 1.1.1.1 [ R1-ospf-1 ] area 0 [ R1-ospf-1-area-0.0.0.0 ] network 10.1.1.0 0.0.0.255 [ R1-ospf-1-area-0.0.0.0 ] network 1.1.1.0 0.0.0.255 [ R1-ospf-1-area-0.0.0.0 ] quit
MA 网络 OSPF 配置截图

2)配置路由器R2,命令让如下:

< R2 > system-view [ R2 ] ospf router-id 2.2.2.2 [ R2-ospf-1 ] area 0 [ R2-ospf-1-area-0.0.0.0 ] network 10.1.1.0 0.0.0.255 [ R2-ospf-1-area-0.0.0.0 ] network 2.2.2.0 0.0.0.255 [ R2-ospf-1-area-0.0.0.0 ] quit

3)配置路由器R3,命令让如下:

< R3 > system-view [ R3 ] ospf router-id 3.3.3.3 [ R3-ospf-1 ] area 0 [ R3-ospf-1-area-0.0.0.0 ] network 10.1.1.0 0.0.0.255 [ R3-ospf-1-area-0.0.0.0 ] network 3.3.3.0 0.0.0.255 [ R3-ospf-1-area-0.0.0.0 ] quit

4)配置路由器R4,命令让如下:

< R4 > system-view [ R4 ] ospf router-id 4.4.4.4 [ R4-ospf-1 ] area 0 [ R4-ospf-1-area-0.0.0.0 ] network 10.1.1.0 0.0.0.255 [ R4-ospf-1-area-0.0.0.0 ] network 4.4.4.0 0.0.0.255 [ R4-ospf-1-area-0.0.0.0 ] quit

(3)实验调试

查看接口OSPF状态

< R1 > system-view #查看R1接口状态的OSPF状态,命令如下: [ R1 ] display ospf interface g0/0/0
DR 选举验证截图
💡 技术要点
• DR的选举只在广播型网络或者非广播型多路访问网络中出现,选举原则为比较该网络中接口的优先级,数值越大越优先,数值为0,不参与选举;
• 如果优先级一样,则比较Router-id,Router-id越大越优先,其次选举为BDR,若没被选上的设备为Drother;
• DR是无法被抢占的,也就意味着在网络运行正常时,即使修改设备的优先级也不会影响该网络中DR的角色变化;
• 所有的Drother与DR和BDR建立邻接关系(Full状态),Drother之间的状态为邻接状态(2-Way)
⚠️ 思考要点
假如有4台路由器的优先级都为1,那么比较rouer id,根据这个原则,R4会变成DR,R3会成为BDR,为什么R1会成为DR,R2会成为BDR?
解答:因为最先配置R1,然后配置R2,如果邻居路由器没有相关DR和BDR字段,那么就等待40秒,然后开始选举DR/BDR

查看接口邻居关系

#查看R3与R4接口邻居关系 [ R3 ] display ospf peer brief
邻居关系验证截图

2.3. 实验3:OSPF下方默认路由

2.3.1. 实验目的

  • 学会在路由器上启动OSPF进程
  • 学会启用参与路由协议的接口,并且通告网络及所在的区域
  • 掌握OSPF下默认路由的配置

2.3.2. 实验拓扑图

默认路由实验拓扑图

2.3.3. 实验步骤

(1)IP地址配置

1)配置路由器R1,命令如下:

< Huawei > system-view [ Huawei ] undo info-center enable [ Huawei ] sysname R1 [ R1 ] interface g0/0/0 [ R1-GigabitEthernet0/0/0 ] ip address 192.168.12.1 24 [ R1-GigabitEthernet0/0/0 ] undo shutdown [ R1-GigabitEthernet0/0/0 ] quit [ R1 ] interface g0/0/1 [ R1-GigabitEthernet0/0/1 ] ip address 192.168.13.1 24 [ R1-GigabitEthernet0/0/1 ] undo shutdown [ R1-GigabitEthernet0/0/1 ] quit
实验3 R1 配置截图

2)配置路由器R2,命令如下:

< Huawei > system-view [ Huawei ] undo info-center enable [ Huawei ] sysname R2 [ R2 ] interface g0/0/1 [ R2-GigabitEthernet0/0/1 ] ip address 192.168.12.2 24 [ R2-GigabitEthernet0/0/1 ] undo shutdown [ R2-GigabitEthernet0/0/1 ] quit [ R2 ] interface g0/0/0 [ R2-GigabitEthernet0/0/0 ] ip address 192.168.24.2 24 [ R2-GigabitEthernet0/0/0 ] undo shutdown [ R2-GigabitEthernet0/0/0 ] quit
实验3 R2 配置截图

3)配置路由器R3,命令如下:

< Huawei > system-view [ R2 ] interface g0/0/0 [ R2-GigabitEthernet0/0/0 ] ip address 192.168.13.3 24 [ R2-GigabitEthernet0/0/0 ] undo shutdown [ R2-GigabitEthernet0/0/0 ] quit [ R2 ] interface g0/0/1 [ R2-GigabitEthernet0/0/1 ] ip address 192.168.34.3 24 [ R2-GigabitEthernet0/0/1 ] undo shutdown [ R2-GigabitEthernet0/0/1 ] quit
实验3 R3 配置截图

4)配置路由器R4,命令如下:

< Huawei > system-view [ R4 ] interface g0/0/0 [ R4-GigabitEthernet0/0/0 ] ip address 192.168.34.4 24 [ R4-GigabitEthernet0/0/0 ] undo shutdown [ R4-GigabitEthernet0/0/0 ] quit [ R4 ] interface g0/0/1 [ R4-GigabitEthernet0/0/1 ] ip address 192.168.24.3 24 [ R4-GigabitEthernet0/0/1 ] undo shutdown [ R4-GigabitEthernet0/0/1 ] quit
实验3 R4 配置截图

(2)OSPF配置

1)配置路由器R1,命令如下:

< R1 > system-view [ R1 ] ospf router-id 1.1.1.1 [ R1-ospf-1 ] area 0 [ R1-ospf-1-area-0.0.0.0 ] network 192.168.12.0 0.0.0.255 [ R1-ospf-1-area-0.0.0.0 ] network 192.168.13.0 0.0.0.255 [ R1-ospf-1-area-0.0.0.0 ] quit
实验3 OSPF R1 配置截图

2)配置路由器R2,命令如下:

< R2 > system-view [ R2 ] ospf router-id 2.2.2.2 [ R2-ospf-1 ] area 0 [ R2-ospf-1-area-0.0.0.0 ] network 192.168.12.0 0.0.0.255 [ R2-ospf-1-area-0.0.0.0 ] network 192.168.24.0 0.0.0.255 [ R2-ospf-1-area-0.0.0.0 ] quit
实验3 OSPF R2 配置截图

3)配置路由器R3,命令如下:

< R3 > system-view [ R3 ] ospf router-id 3.3.3.3 [ R3-ospf-1 ] area 0 [ R3-ospf-1-area-0.0.0.0 ] network 192.168.13.0 0.0.0.255 [ R3-ospf-1-area-0.0.0.0 ] network 192.168.34.0 0.0.0.255 [ R3-ospf-1-area-0.0.0.0 ] quit
实验3 OSPF R3 配置截图

4)配置路由器R4,命令如下:

< R4 > system-view [ R4 ] ospf router-id 4.4.4.4 [ R4-ospf-1 ] area 0 [ R4-ospf-1-area-0.0.0.0 ] network 192.168.24.0 0.0.0.255 [ R4-ospf-1-area-0.0.0.0 ] network 192.168.34.0 0.0.0.255 [ R4-ospf-1-area-0.0.0.0 ] quit
实验3 OSPF R4 配置截图

(3)配置默认路由

假设R4为企业网的出口,出口编号为NULL 0,命令如下:

#配置默认路由,出口为NULL 0(可以理解为垃圾桶) [ R4 ] ip route-static 0.0.0.0 0.0.0.0 NULL 0
默认路由配置截图

查看路由表

#查看R4的路由表,命令如下: [ R4 ] display ip routing-table #查看R1的路由表,命令如下: [ R1 ] display ip routing-table
路由表验证截图

通过以上输出结果,可以看到R4上有一条默认路由

可以看到只有R4上有静态路由,在R1、R2、R3上是没有静态路由的,如果一条一条的进行配置就比较麻烦,可以使用OSPF下发默认路由命令如下:

[ R4 ] ospf [ R4-ospf-1 ] default-route-advertise #下发默认路由 [ R4-ospf-1 ] quit
OSPF 下发默认路由截图
💡 技术要点
OSPF网络注入默认路由的命令为default-route-advertise,表示其他的OSPF设备可以收到该设备下发的默认路由,从而减少配置量,在此命令后加上always参数,表示无论进行默认路由下发的设备是否默认路由,都会下发;
• 如果有默认路由,则下发,一般默认情况下,如果企业网络只有单出口,则加always参数;
• 如果有多出口冗余,则不加该参数,以免出现路由黑洞;

2.3.4. 实验调试

[ R1 ] display ip routing-table
最终路由表截图

三. OSPF命令汇总

命令作用
display ospf brief查看OSPF的概要信息
display ospf interface显示OSPF的接口信息
display ospf lsdb显示OSPF的LSDB信息
display ospf peer显示OSPF中各区域邻居的信息
display ospf routing显示OSPF的路由表信息
ospf启动OSPF路由进程
rouer-id配置路由器id
Area设置区域
Network通告网络
default-route-advertise下发默认路由

有问题欢迎在评论区交流!

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注