第四章 OSPF实验

OSPF(Open Shortest Path First),即开放最短路径优先,是一种用于路由选择的链路状态路由协议。OSPF是一个开放标准的协议,通过在网络中传输路由信息,计算出到达目的网络的最短路径。

一. ospf基础知识

1.1 ospf专业术语

(1)Area(区域):指将整个AS(Autonomous System,自治系统)划分为若干个逻辑上相对独立的区域的做法。每个区域内部的路由器之间交换路由信息,而不需要将所有的路由信息传播到整个AS中。这种分区可以提高网络的可扩展性和管理性。在OSPF协议中,每个区域都有一个唯一的32位区域标识符(Area Identifier)来标识该区域。这个32位的区域标识符是一个二进制数,用于在OSPF协议中唯一地标识一个区域

(2)Router ID(路由器ID):每台运行OSPF协议的路由器都必须具有唯一的Router ID,用来标识路由器在OSPF域中的身份。

(3)Cost(开销):通常指代在路由选择算法中,衡量从一个网络节点到另一个网络节点的连接质量或开销的度量。在OSPF中,成本值是一个非负整数,通常与链路的速度相关。一般情况下,速度较快的链路(如光纤)会被赋予较低的成本值,而速度较慢的链路(如铜线)会被赋予较高的成本值。100 Mbps Ethernet:成本值为 1;即:1cost值=100Mbit/s

(4)LSA(链路状态通告):是OSPF协议中用来描述网络拓扑和链路状态的信息单元。LSA记录了每台路由器所知道的所有连接、邻居路由器信息以及链路状态,在整个OSPF域内用于构建路由表并计算最短路径。LSA的主要类型:

  • Router LSA:描述单个路由器的链路状态信息;包含了该路由器连接的所有网络和邻居路由器的信息。
  • Network LSA:描述多个路由器连接在一起的子网的链路状态信息。
    包含了连接到同一子网上的所有路由器信息。
  • Summary LSA:描述其他区域的摘要信息,主要用于区域之间的路由信息交换。

(5)DR(Designated Router,指定路由器)BDR(Backup Designated Router,备用指定路由器)是用来优化网络性能和减少LSA传输的特殊角色。

在多播网络(如Ethernet)上,所有的OSPF路由器都可以成为邻居,并且每个路由器都需要发送LSA信息给其他路由器。这样可能会导致大量的LSA信息在网络中传播,增加网络拓扑数据库的更新频率。
为了减少LSA的传输和维护邻居关系的复杂性,OSPF使用DR来代表一个OSPF子网内的所有路由器向外发送LSA信息。这样,除了DR以外的其他路由器就不需要在这个子网内发送LSA信息。
DR是OSPF子网内与其他子网之间进行信息交换的重要节点,负责收集所有邻居路由器的LSA信息,并向其他OSPF区域传递这些信息。

 

BDR是备用的指定路由器,当DR失效时,BDR会接替DR的角色,继续负责向外发送LSA信息,确保网络的连通性。网络中的每个OSPF子网只有一个DR和一个BDR,其他路由器则作为一般路由器参与进来。


一个常见的ospf网络可能会采用以下几种区域配置:

  • Backbone Area(骨干区域):OSPF要求至少存在一个骨干区域,通常标识为区域0(Area 0)。该区域负责连接其他区域,所有的其他区域都必须直接或间接连接到骨干区域。
  • Stub Area(Stub区域):Stub区域是一种简化区域,内部路由器只需要知道到达其他区域或外部网络的出口路由即可,不需要了解整个AS内的详细路由信息。
  • Totally Stubby Area(全捷近区域):这是一种更加精简的Stub区域,只有一条默认路由,内部路由器只需要知道该默认路由即可。

 

1.2 ospf维护的三张表

(1)邻居表(Neighbor Table):邻居表记录了OSPF路由器与其直接相邻的其他OSPF路由器之间的邻居关系信息。每个条目包含了邻居路由器的ID、IP地址、状态等信息。通过邻居表,路由器可以了解自己直接连接的邻居路由器,进行邻居关系的建立和维护。

查看的命令:

display ospf peer

(2)链路状态数据库(Link State Database):链路状态数据库存储了整个OSPF域中所有路由器收集到的LSA信息。每个LSA包含了一段网络拓扑信息,描述了网络中所有路由器的连接、邻居关系以及链路状态。链路状态数据库用于构建网络的拓扑图,并支持OSPF路由器计算最短路径,更新路由表中的路由信息。

查看的命令:

display ospf lsdb

(3)路由表(Routing Table):路由表包含了根据链路状态数据库计算出的最短路径信息,用于实际的数据转发和路由选择。 路由表记录了目的网络地址及下一跳路由器的信息,以便将数据包转发到目标地址。OSPF路由器通过不断更新、计算路由表中的路由信息来保证网络中的数据转发始终是最优的。

查看的命令:

display ospf routing

 

1.3 ospf的报文信息

  1. Hello报文:用于在OSPF路由器之间建立邻居关系。
  2. Database Description:用于交换链路状态数据库摘要。
  3. LSA请求报文(LSA Request Packets):用于请求邻居路由器发送特定LSA信息。当一个路由器需要某个LSA信息时,会向邻居路由器发送LSA请求报文以获取该信息。
  4. LSA更新报文(LSA Update Packets):用于向邻居路由器广播自身更新的LSA信息。
  5. LSA确认报文(LSA Acknowledgment Packets):用于确认接收到的LSA更新和请求信息。
    在收到LSA更新或请求后,接收路由器会发送LSA确认报文回复给发送路由器,以确保信息传输的可靠性。

 

1.4 DR与BDR的选举 / router-id的选举

OSPF协议中的选举过程中,会选择一个Designated Router(DR,指定路由器)和一个Backup Designated Router(BDR,备用指定路由器)来管理网络中的邻居关系。在OSPF网络中,所有的路由器都倾向于与DR和BDR建立邻居关系,而非直接与其他路由器建立邻居关系。

1. 选定DR和BDR的一般原则

  •  Router ID(路由器ID):  如果一个路由器拥有最大的Router ID,则该路由器有资格成为DR; 如果一个路由器拥有次大的Router ID,则该路由器有资格成为BDR;
  • 优先级(Priority):OSPF路由器的优先级(Priority)可以手动配置,默认值为0。路由器的优先级越大,成为DR或BDR的机会越高,优先级为0表示路由器不会参与DR/BDR选举。 如果优先级相同,则通过Router ID来决定DR和BDR。优先级的范围<0---255>

2. DR和BDR选举过程:

所有路由器首先认为自己是DR,然后侦听相邻路由器的Hello报文。 如果一个路由器收到的Hello报文中包含了更高优先级的路由器作为DR,那么该路由器会更新自己的DR和BDR列表。如果当前的DR失效(比如关机),BDR将会晋升为DR,并触发新的BDR选举过程。

3. router-id的选举过程:

(1)OSPF 选择 router - id 的规则:如果手动配置了 router - id ,则配置的 router - id 作为本设备的路由器 id ,如果没有手动配置,先创建了 OSPF 进程,系统会自动生成设备的 router - id ,后续手动配置的 router - id 将不生效,此时如果想使用手动配置的 router - id ,可以在用户视图模式下使用 reset ospf process 命令重置 OSPF 进程使新的 router - id 生效。还可以删除当前 OSPF 配置,在重新配置 OSPF 进程时加上对应的 router - id 。

(2)当没有手动配置 router - id 时, router - id 的选举原则为:设备上有环回口时,选择环回口地址大的作为本设备的 router - id ;设备上没有环回口时,选择接口 IP 地址大的作为 router - id 。
(3)network 命令用来指定运行 OSPF 协议的接口和接口所属的区域。 network - address 为接口所在的网段地址。 wildcard - mask 为 IP 地址的反码,相当于将 IP 地址的掩码反转(0变1,1变0)。例如,0.0.0.255表示掩码长度为24 bit

 

二.  ospf实验

实验一:MA网络上的ospf

1. 实验拓扑

5d50e286f3424f01aad55b991c9f3e8d.png

 

2. 实验步骤

(1)配置ip地址

  • R1 ip地址配置命令如下:
<Huawei>system-view
[Huawei]sysname R1
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip address 10.1.1.1 24
[R1-GigabitEthernet0/0/0]int loopback0
[R1-LoopBack0]ip address 1.1.1.1 24

实际操作运行如下:

1b9ab3d761d3482eab79e4f955345e02.png

 

  • R2 ip地址配置命令如下:
<Huawei>system-view
[Huawei]sysname R2
[R2]int g0/0/0
[R2-GigabitEthernet0/0/0]ip address 10.1.1.2 24
[R2-GigabitEthernet0/0/0]int loopback0
[R2-LoopBack0]ip address 2.2.2.2 24

 实际操作运行如下:

31dad119dcad4f05bf836c0f6d4fce4e.png

 

  • R3 ip地址配置命令如下:
<Huawei>system-view
[Huawei]sysname R3
[R3]int g0/0/0
[R3-GigabitEthernet0/0/0]ip address 10.1.1.3 24
[R3-GigabitEthernet0/0/0]int loopback0
[R3-LoopBack0]ip address 3.3.3.3 24

  实际操作运行如下:

ed59442fbf934a809c56dd52d430a4d6.png

 

  • R4 ip地址配置命令如下:
<Huawei>system-view
[Huawei]sysname R4
[R4]int g0/0/0
[R4-GigabitEthernet0/0/0]ip address 10.1.1.4 24
[R4-GigabitEthernet0/0/0]int loopback0
[R4-LoopBack0]ip address 4.4.4.4 24

   实际操作运行如下:

0dedc2c89add4f4d96811fe7a3b119b4.png

 

(2)ospf的配置

  • R1 OSPF配置命令如下:
[R1]ospf router-id 1.1.1.1     //ospf的进程为1,router-id为1.1.1.1
[R1-ospf-1]area 0              //进入区域0(主干区域)
[R1-ospf-1-area-0.0.0.0]network 10.1.1.0 0.0.0.255   

//network <ip地址> <子网掩码的反码>
//命令network 10.1.1.0 0.0.0.255的作用为匹配10.1.1.0/24网段的所有ip地址,并且将ip地址属于本网段的接口全部激活ospf

[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

    实际操作运行如下:

237b15dd50b14b23963efd2fd735dae8.png

  • R2 OSPF配置命令如下:
[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.2 0.0.0.255
  •  R3 OSPF配置命令如下:
[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.3 0.0.0.255
  •  R3 OSPF配置命令如下:
[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 255.255.255.0 
[R4-ospf-1-area-0.0.0.0]network 4.4.4.4 0.0.0.255

(3)实验调试 

  • 查看R1接口的ospf状态,命令如下:
[R1]display ospf interface g0/0/0   //查看g0/0/0接口的ospf

4e13edbac82d4eecbdec730e6f0cf5b2.png 

接口ospf状况分析:

	 OSPF Process 1 with Router ID 1.1.1.1

//ospf的进程号为1,router-id为1.1.1.1

Interfaces 
 Interface: 10.1.1.1 (GigabitEthernet0/0/0)   

 //接口为g0/0/0,接口IP地址10.1.1.1

 Cost: 1       State: DR        Type: Broadcast    MTU: 1500  

//该接口的开销值为1,状态为本网络中的DR,链路类型为广播型网络,接口的MTU(最大传输单元)为1500
 
Priority: 1
//DR的优先级为1

 Designated Router: 10.1.1.1   
 //本网络中的DR为10.1.1.1

 Backup Designated Router: 10.1.1.2
//本网络中的BDR为10.1.1.2

 Timers: Hello 10 , Dead 40 , Poll  120 , Retransmit 5 , Transmit Delay 1 
//Hello报文间隔时间为10s,设备失效时间为40s(40s内没收到邻居发送的hello报文,则认为该设备失效)
  • 查看R3与R4的邻居关系 
display  ospf  peer  brief     //查看R3与R4的邻居状态

e89e3997d81c417eaa22d8c6b66abef0.png

 Area Id          Interface                        Neighbor id      State    
 0.0.0.0          GigabitEthernet0/0/0             1.1.1.1          Full        
 0.0.0.0          GigabitEthernet0/0/0             2.2.2.2          Full        
 0.0.0.0          GigabitEthernet0/0/0             3.3.3.3          2-Way     

邻居关系状态分析:
full:表示已经建立了邻接关系,并且双方数据库已经同步;
2-way:在广播型网络中,非指定路由器之间的状态会停留在2-way

 

 

 

  • 57
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
OSPF(开放式最短路径优先协议)是一种常见的路由协议,可用于在企业网络中实现路由选择。下面是一个简单的 OSPF 实验,展示了如何在网络中配置 OSPF 路由器。 实验拓扑: ``` +----------------+ +----------------+ | | | | | Router 1 |------------| Router 2 | | | | | +----------------+ +----------------+ ``` 1. 配置 IP 地址 在 Router 1 和 Router 2 上分别配置 IP 地址。例如,Router 1 的 IP 地址为 192.168.1.1/24,Router 2 的 IP 地址为 192.168.1.2/24。 2. 启用 OSPF 在 Router 1 和 Router 2 上启用 OSPF。具体来说,需要完成以下步骤: - 在每个路由器上创建一个 OSPF 进程。例如,创建进程号为 1。 - 将每个路由器的 IP 地址添加到 OSPF 网络中。 - 配置每个路由器的 OSPF 路由器 ID。例如,将 Router 1 的路由器 ID 设置为 1.1.1.1,将 Router 2 的路由器 ID 设置为 2.2.2.2。 - 配置每个路由器的 OSPF 邻居。例如,将 Router 1 的邻居设置为 Router 2 的 IP 地址,将 Router 2 的邻居设置为 Router 1 的 IP 地址。 在 Router 1 上,可以使用以下命令启用 OSPF: ``` router ospf 1 network 192.168.1.0 0.0.0.255 area 0 router-id 1.1.1.1 neighbor 192.168.1.2 ``` 在 Router 2 上,可以使用以下命令启用 OSPF: ``` router ospf 1 network 192.168.1.0 0.0.0.255 area 0 router-id 2.2.2.2 neighbor 192.168.1.1 ``` 3. 验证 OSPF 连通性 通过 ping 命令验证 OSPF 连通性。例如,在 Router 1 上执行以下命令: ``` ping 192.168.1.2 ``` 如果一切正常,应该能够收到来自 Router 2 的回复。 这是一个简单的 OSPF 实验,可以帮助你了解如何在网络中配置 OSPF。在实际环境中,需要更复杂的配置才能实现更高级的路由选择和故障转移。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值