OSPF的结构化部署

本文详细介绍了OSPF的区域划分结构,包括区域特点、区域间的路由交换、ABR的角色和功能,以及华为OSPF多区域配置的步骤。还探讨了解决网络不规则区域划分导致的问题,如使用隧道、Vlink和多进程双向重发布的方法,以及如何避免环路问题。
摘要由CSDN通过智能技术生成

一、OSPF区域化结构 

  • OSPF为了适应大中型网络环境,进行了结构化部署------区域划分
  • 区域划分的特点
    • 区域内部传递拓扑信息,区域间传递路由信息。
    • 区域划分是基于路由器接口的。
    • 区域编号----32bit
      • 区域0-----骨干区域
      • 非骨干区域----非0区域

区域划分目的:为了减少OSPF域中LSA的数量

  • 区域划分规则
    • 所有的非骨干区域都必须和骨干区域直接相连----星型拓扑
    • 骨干区域唯一
  • 不规则区域
    • 远离骨干区域的非骨干

    • 不连续的骨干区域

  • 区域边界路由器----ABR
    • 同时属于多个区域,且至少有一个接口属于骨干区域。
    • 在骨干区域中至少存在一个活跃的邻居。

ABR是连接两个或多个区域的路由器。它具有两个或多个区域的接口,并负责在这些区域之间进行路由信息的交换和转发

ABR设备规则:

  1. 至少连接两个区域
  2. 连接的区域中至少有一个是区域0
  3. 在区域0中至少存在一个活跃的邻居

ABR最基本功能:传递区域间路由信息

ABR有以下主要功能:

  • 区域间路由信息交换:ABR负责与相邻区域的ABR交换路由信息,以确保不同区域之间的路由信息得到传递。
  • 路由聚合:ABR将来自不同区域的路由信息进行聚合,以减少整个域内的路由信息数量。这样可以提高网络的可扩展性。
  • 路由策略的应用:ABR可以根据需要对路由信息进行策略调整和过滤,以控制不同区域之间的路由信息传递范围。
  • 区域边界的维护:ABR负责维护区域边界的连通性,以确保不同区域之间的通信能够正常进行

如果一台路由器的多个接口分别接入到了多个不同的区域,则该设备会为每一个区域单独维护一套LSDB

要求:

1、OSPF要求域中的所有非骨干区域(区域ID不为0)都必须与Area0相连

2、骨干区域不能被分割

OSPF为了保证所有工程师遵循两条区域划分规则,作出如下规定:

  • 非骨干区域之间不允许直接相互发布区域间路由信息。--------因为不存在ABR设备

  • 从非骨干区域收到的路由信息,ABR能接收但不会使用这条路由信息-----OSPF的区域水平分割机制(从一个区域学习到的路由信息,不能再传递回该区域)

OSPF有如下规定:

  1. 对于伪ABR设备,不允许转发区域间路由信息。
  2. 对于真是ABR设备:
  • 可以将直连的非骨干区域的区域内路由信息传递给骨干区域
  • 可以将直连的骨干区域的区域内路由信息传递给非骨干区域
  • 能够将自己从骨干区域学习到的域间路由信息传递给非骨干区域

路由器角色

  • 内部路由器---IR---所有接口都接入同一个OSPF区域
  • 骨干路由器---BR---接入Area0的路由器
  • 区域边界路由器---ABR
  • AS边界路由器---ASBR
    • 工作在OSPF自治系统的边界,负责将OSPF域外的路由引入到本OSPF域中。
      1. 设备连接在不同的AS,且具有活跃的邻居。
      2. 该设备执行了重发布操作。

二、OSPF多区域划分配置(华为)

拓扑设计

在这个拓扑中,我们有一个核心区域(Area 0)和三个子区域(Area 1、Area 2、Area 3)。每个子区域都连接到核心区域,并且各自都有一些内部网络

配置步骤

步骤1:基本配置

首先,我们需要进行基本的设备配置。

步骤2:配置区域间连接

在OSPF多区域网络中,区域间连接是非常重要的。我们需要为每个区域配置适当的连接。

以下是在路由器上配置区域间连接的示例:

配置R1的区域间连接

在R1上创建虚拟接口

[R1] interface vlanif 10
[R1-Vlanif10] ip address 10.0.0.1 255.255.255.0
[R1-Vlanif10] ospf network-type p2p

将虚拟接口添加到区域0

[R1] ospf 1
[R1-ospf-1] area 0
[R1-ospf-1-area-0] network 10.0.0.0 0.0.0.255

将R1的物理接口添加到相应区域

[R1] interface GigabitEthernet 0/0/0
[R1-GigabitEthernet0/0/0] ip address 192.168.1.1 255.255.255.0
[R1-GigabitEthernet0/0/0] ospf network-type p2p
[R1-GigabitEthernet0/0/0] ospf 1 area 1

配置R1与R2的区域间连接

[R1] ospf 1
[R1-ospf-1] area 1
[R1-ospf-1-area-1] network 192.168.1.0 0.0.0.255
[R1-ospf-1-area-1] network 192.168.2.0 0.0.0.255

配置R2的区域间连接

在R2上创建虚拟接口

[R2] interface vlanif 10
[R2-Vlanif10] ip address 10.0.0.2 255.255.255.0
[R2-Vlanif10] ospf network-type p2p

将虚拟接口添加到区域0

[R2] ospf 1
[R2-ospf-1] area 0
[R2-ospf-1-area-0] network 10.0.0.0 0.0.0.255

将R2的物理接口添加到相应区域

[R2] interface GigabitEthernet 0/0/0
[R2-GigabitEthernet0/0/0] ip address 192.168.2.1 255.255.255.0
[R2-GigabitEthernet0/0/0] ospf network-type p2p
[R2-GigabitEthernet0/0/0] ospf 1 area 2

配置R2与R1和R3的区域间连接

[R2] ospf 1
[R2-ospf-1] area 2
[R2-ospf-1-area-2] network 192.168.2.0 0.0.0.255
[R2-ospf-1-area-2] network 192.168.3.0 0.0.0.255
步骤3:配置区域内路由

接下来,我们需要在每个区域内配置区域内路由。以下是在路由器上配置区域内路由的示例:

在Area 1中配置区域内路由

[R1] ospf 1
[R1-ospf-1] area 1
[R1-ospf-1-area-1] network 192.168.1.0 0.0.0.255
[R1-ospf-1-area-1] network 10.1.1.0 0.0.0.255

在Area 2中配置区域内路由

[R2] ospf 1
[R2-ospf-1] area 2
[R2-ospf-1-area-2] network 192.168.2.0 0.0.0.255
[R2-ospf-1-area-2] network 10.2.2.0 0.0.0.255

在Area 3中配置区域内路由

[R2] ospf 1
[R2-ospf-1] area 3
[R2-ospf-1-area-3] network 192.168.3.0 0.0.0.255
[R2-ospf-1-area-3] network 10.3.3.0 0.0.0.255
步骤4:验证配置

最后,我们需要验证配置是否正常运行。可以通过以下命令验证OSPF邻居关系和路由信息:

[R1] display ospf peer
[R1] display ospf routing-table
[R2] display ospf peer
[R2] display ospf routing-table

三、解决案例

由于网络升级、合并、割接等操作;或者因为网络单点故障原因,导致网络出现不规则区域划分,从而导致网络出现数据通讯障碍问题

最根本的解决方案:修改OSPF规划和配置,使得整个OSPF域满足区域划分要求

 OSPF路由项开销值——cost =路由传递方向上所经过没一台路由器如接口开值之和

第一种解决方式,使用tunnel隧道

在R2和R3之间构建一个GRE隧道,将该隧道宣告进骨干区域,实现将R3设备变为ABR设备。

使用该方式的问题:

  • 可以产生选路不佳。

  • 会造成重复更新

  • 因为虚拟链路的存在,R2和R3之间需要建立邻居。导致在维护邻居时使用的hello报文消耗中间区域资源。

第二种解决方案,虚链路---Vlink

思路:使用一个合法的ABR设备为伪ABR设备进行授权,授予其可以执行ABR功能的权限。

[r2-ospf-1-area-0.0.0.1]vlink-peer 3.3.3.3

[r3-ospf-1-area-0.0.0.1]vlink-peer 2.2.2.2

注意:需要在穿越的区域中进行配置,并且配置的是RID值,而非邻居IP地址

虚链路的配置条件:只能穿越一个区域。原因在于配置时使用的时RID,而RID值只能通过TOPO信息寻找,而跨区域时无法找到相应RID值,故数据无法传输

查看Vlink邻居关系

Vlink被视作为骨干区域的一段延伸(Vlink永远属于Area 0)

使用该种方式的问题:

  • 虚链路只能穿越一个区域。

  • 虚链路的两端节点需要通过hello报文进行维护,导致需要周期性发送数据,从而消耗被穿越区域的资源。

Vlink不能再骨干区域进行配置

Vlink不仅仅应用在解决不规则区域,还可以修复一些次优路径或者骨干区域不健壮问题Vlink还可以解决没有骨干区域的场景

当Vlink两端节点选择不当时,可能会引发环路问题

第三种解决方式,多进程双向重发布

网络中最常用的方式

将R3设备运行在不同的路由区域,这种设备会被称为是ASBR设备。

重发布是在运行了不同协议不同进程的边界设备(ASBR)上,将一种协议按照另一种协议的规则发布出去

[r3-ospf-1-area-0.0.0.2]undo network 34.0.0.3 0.0.0.0

[r3-ospf-1]undo area 2

[r3]ospf 100 router-id 3.3.3.3

[r3-ospf-100]area 2 

[r3-ospf-100-area-0.0.0.2]network 34.0.0.3 0.0.0.0
[r3-ospf-1]import-route ospf 100 ----将通过OSPF 100学习到的路由以及本地发布到OSPF 100的路由信息重新引入到OSPF 1当中

[r3-ospf-100]import-route ospf 1

协议标志为O_ASE代表该条路由信息时OSPF的域外路由信息,其优先级被设定为150

该解决方式,会使全网设备正常学习所有路由信息,并且不存在选路不佳以及资源消耗问题。

多进程一般用于网络隔离使用

骨干链路单点故障

Vlink环路问题

环路:

  • 如果R2做了汇总,且汇总结果为10.0.0.0/8
  • 将该汇总路由发送给Area 1,而R4设备从Area 1接收该汇总路由时,仅接收不使用(OSPF区域水平分割原理)
  • 但是R4会接收通过Vlink链路传递来的Area 0区域的所有拓扑信息,从而生成路由信息
  • 为了减少Area 2区域的路由信息,故R4也需要进行汇总操作,汇总结果为10.1.0.0/16
  • R2和R4汇总的路由均传递给R3,而因为最大掩码匹配规则,R3选择R4传递的路由,而R4真实数据传递的吓一跳为R3,导致环路产生。

解决方案:OSPF规定,vlink所在的非骨干区域,不能传递聚合路由。也就是说,ABR设备不能向配置了Vlink链路的区域传递聚合路由信息

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值