OSPF

问题

当网络规模主键变大的时候, 使用什么样的技术, 可以让网络更好地通?

随着企业的发展, 网络的规模越来越大, 网段的数量越来越多, 公司内部的路由器的数量越来越多.

为了实现不同网络之间的互通, 需要在路由器上配置大量的路由条目, 工作量庞大并且随着网络扩展, 后期管理难度增大.

为了实现不同网段之间的互通, 需要在每个路由器上配置新增加的网段.

如果新添加的网段数量很多, 同时路由器的数量也很多, 就需要对每个路由器进行路由配置, 工作量非常庞大.

如果向删除某个网段, 也同样需要在所有路由器上一个一个地删除, 工作量也非常庞大.

解决方案

在路由器之间允许 ‘动态路由协议‘, 让路由器之间自动学习和分享彼此地路由表信息, 每个路由器都独立地计算出一个去往目标网段地最好路由.

动态路由协议的特点:

  1. 减少了后期网络管理任务, 避免了人为的配置错误.
  2. 在设备之间传输路由, 会占用少量的网络带宽.

动态路由协议的类型:

  1. 内部网关协议(IGP): 在同一公司内部运行的路由协议, 如RIP, ISIS, OSPF
    • 其中,最热门的技术是ISIS和OSPF这一类中的OSPF
    • OSPF 在有点规模的企业网内部常用.
    • ISIS 在大型的数据中心, 运营商常用.
    • RIP如今已接近淘汰, (华为不考了). RIP(路由信息协议)作为一种广泛使用的路由协议,虽然具有简单易用和便于维护等优点,但也存在一些明显的缺点:
      • 网络规模受限:RIP协议对网络规模有严格的限制,它只能支持最多15跳的路由路径,这意味着在大型网络中,RIP可能无法满足需求。
      • 收敛速度较慢:RIP路由表的更新速度较慢,对于动态变化的网络环境可能无法快速响应。
      • 安全性能较差:RIP协议本身存在安全问题,如路径信息易泄露、易受恶意攻击等。
      • 占用带宽:RIP每30秒广播一次更新,可能会占用大量带宽,影响关键IT流程的资源。
      • 不支持多路径:RIP不支持同一路由上的多条路径,这可能导致路由环路和数据包丢失。
      • 坏消息传播慢:当网络中出现故障时,RIP可能需要较长时间才能将故障信息传播到所有路由器,导致网络收敛速度慢。
      • 这些缺点使得RIP在大型网络或对安全性、实时性要求较高的环境中可能不是最佳选择。
  2. 外部网关协议(EGP): 在不同公司之间运行的路由协议, 如BGP.
当有人问, 路由直接传递路由信息用什么技术? 答:OSPF(公司内部),ISIS(运营商等),BGP,以及淘汰的RIP
希望传路由快一点:ISIS OSPF.
希望传路由多一点,稳一点,慢点没事:BGP

OSPF概述

应用在企业内部, 属于公有标准协议, 位于 OSI 模型的第三层.

OSPF 的数据包, 包含着 IP 头部后面, 协议号为 89.

OSPF支持企业网络的层次化设计, 将网络分为 2 层: 骨干和非骨干区域.

OSPF区域的表示

  1. 通过十进制表示: 例如 区域0, 1, 2, 3 等.
  2. 通过点分十进制表示, 例如 区域0.0.0.0, 0.0.0.1, 0.0.0.2 等.
  3. 最大就是232, 和IP地址一样.

OSPF骨干区域

  1. 区域号为 0, 表示的就是骨干区域

OSPF非骨干区域

  1. 区域号不为 0, 表示的就是非骨干区域.
  2. 非骨干区域必须和骨干区域 ‘直接’ 相连, 能实现 ‘区域之间的互通’.

OSPF工作原理

建立OSPF邻居表, 同步OSPF数据库, 计算OSPF路由表.

OSPF报文类型

OSPF报文类型描述
Hello用于发现, 建立, 维护和拆除 OSPF 邻居
DD(数据库描述报文)用于发送 OSPF 数据库条目的简要信息, 高效且稳定地实现数据库同步
LSR(链路状态请求报文)用于请求自己数据库中没有地链路状态通告信息(LSA)
LSU(链路状态更新报文)用于回应LSR报文, 其中包含的是详细的链路状态通告信息(LSA)
LSAck(链路状态确认报文)用于对LSR和LSU报文确认, 实现LSR和LSR报文的可靠传输

Hello报文

Hello报文的作用

建立邻居关系:Hello报文用于发现网络中的邻居设备,并建立和维护这些设备之间的邻居关系。
维护邻接关系:通过周期性发送Hello报文,路由器能够监测邻居路由器的存活状态。如果在特定时间内没有收到某个邻居的Hello报文,就会将其认定为失效,从而触发相应的路由计算和更新操作

Hello报文的发送原则

在IS-IS协议中,Hello报文的发送间隔和邻居保持时间可以通过配置来控制。
Hello报文的发送间隔越短,占用的系统资源越多,可能导致CPU负载过重。
邻居保持时间过长会导致检测到邻居失效的时间延长,从而减慢路由收敛速度;过短则可能导致路由震荡。

Hello报文的字段内容

子网掩码:发送Hello报文的接口子网掩码。
hello间隔:Hello报文的泛洪周期。
可选项:表示发送路由器支持的功能或特性。
路由优先级:用于DR和BDR的选举。
路由失效时间:在邻居路由器被设置为Down前的等待时间。
DR和BDR的接口IP:网络中的DR和BDR的接口IP。
邻居Router-ID:已经建立邻居关系的邻居路由器ID。

Hello报文的类型

OSPF协议:Hello报文是OSPF五种报文之一,用于建立和维护邻接关系。
IS-IS协议:IS-IS协议通过Hello报文的收发来维护与相邻设备的邻居关系。

配置Hello报文

在华为设备的配置中,可以通过执行特定命令来配置Hello报文的发送间隔和邻居保持时间。
例如,执行命令isis timer hello hello-interval [ level-1 | level-2 ]来配置接口上Hello报文的发送间隔。

DD, LSR, LSU, LSAck

OSPF的特点总结

路由器和网段较多时, 动态协议效率更高.

在企业内网, 适应性和扩展性最强的动态路由协议是 OSPF.

OSPF 属于 网络层 协议, 所以配置之前, 必须确保网络的物理层和数据链路层是互通的.

OSPF支持将网络划分为骨干层 和 非骨干层, 便于网络的扩展, 排错和管理.

关键字

process ID 进程号, 默认是 1 . 取值范围: 1-65535

Router ID:中文名:路由器标识符,OSPF中,每个路由器都需要一个唯一的标识符来识别自己,有助于网络管理员快速识别设备。格式也与IP地址一样都是用32位点分十进制表示(如1.1.1.1等)。

OSPF的单区域配置

  1. 命令是:[R1-ospf-1-area-0]ospf 1 router id 1.1.1.1
  2. Route ID命令配置成功后并不是立即生效的,需要重启设备或重启OSPF进程
  3. 重启ospf进程命令:<R2>ospf 1 process
  4. display ospf 1 brief
  5. Router ID选举规则:
    • 手工配置的Router ID的优先级最高,唯一且稳定。
    • 如果未进行过手工配置,如果存在IP接口的Loopbuck回环接口,则从Loopback接口地址中选择IP地址最大的作为Router ID。回环接口是一个逻辑接口,通常不受物理链路状态的影响,所以这种方式下,路由器ID较为稳定。
    • 如果没有已配置IP地址的Loopback接口,则从其它已配置IP地址的接口中选择IP地址最大的作为Router ID。这种方式下,路由器ID可能会随着接口状态的改变而变化。通常,管理员可以通过查看路由器接口信息来确认当前的路由器ID。

area 0: 区域 0 , 设备会自动识别为 0.0.0.0 这样的点分十进制格式, 和IP地址格式一样.

  • 区域划分的意义是:为了更好地管理网络和设备。

OSPF wild card bits: 反掩码, 可以在配置的时候输入反掩码(如0.0.0.255), 也可以在配置的时候写正掩码, 设备会自动转换为反掩码(如255.255.255.0 转换成0.0.0.255). 因此, 在实际工程中, 怎么方便怎么来, 保证最终结果正确即可. 另外, 不能把OSPF wild ward bits看成通配符, 因为掩码是连续的 1 组成, 如果使用通配符系统会认为输入是无效的(Error: The network mask is invalid because the network mask must be consecutive,由于网络掩码必须连续,因此网络掩码无效)

命令:

  • [AR1]ospf ∥指定ospf协议的进程号,不指定则默认为1。
  • [AR1-ospf-0]area 0 ∥进入ospf协议的区域0。
  • [AR1-ospf-0-area 0]network 192.168.1.0 255.255.255.0 ∥将192.168.1.0/24宣告进入到区域0。
  • [AR1-ospf-0-area 0]network 192.168.12.0 255.255.255.0 ∥network 后面跟的必须是直连路由。
  • [AR2]ospf 2 ∥OSPF协议的进程号,在每个设备上是可以不相同的。
  • [AR2-ospf-0]area 0
  • [AR2-ospf-0-area 0]network 192.168.12.0 255.255.255.0
  • [AR2-ospf-0-area 0]network 192.168.23.0 255.255.255.0
  • [AR3]ospf 3
  • [AR3-ospf-0]area 0
  • [AR3-ospf-0-area 0]network 192.168.23.0 255.255.255.0
  • [AR3-ospf-0-area 0]network 192.168.2.0 255.255.255.0
  • display ospf peer brief //查看网络设备(如路由器)OSPF(Open Shortest Path First)协议邻居简要信息的命令, 通过这些信息,网络管理员可以快速判断OSPF邻居关系的建立情况和状态,从而帮助诊断和解决网络问题。
  • 以下是display ospf peer brief命令输出的一些关键信息:
    • OSPF Process:显示OSPF进程ID和路由器的Router ID。
      • OSPF Process 1 with Router ID 1.1.1.1
    • Area Id:显示邻居所在的OSPF区域ID,表示路由器当前建立的邻居关系所在的区域,OSPF通过区域划分来减少路由信息的交换量和计算复杂度。
    • Interface:显示与邻居建立关系的本地接口。
    • Neighbor id:显示邻居路由器的Router ID。
    • State:显示与邻居的OSPF关系状态。常见的状态包括:
    • 2-way:双方都收到了对方的Hello报文,邻居关系建立。
    • ExStart:开始交换数据库描述报文(DBD,DBD也即DD)。
    • Exchange:交换DBD报文,同步链路状态数据库(LSDB)。
    • Loading:请求和接收链路状态更新(LSU)报文,同步LSDB。
    • Full:双方LSDB完全同步,邻接关系建立。最终完美状态。

No Comments

Send Comment Edit Comment


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
Previous
Next