前言:
OSPF(Open Shortest Path First开放式最短路径优先)是一个内部网关协议(Interior Gateway Protocol,简称IGP),用于在单一自治系统(Autonomous System,AS)内决策路由。是对链路状态路由协议的一种实现,隶属内部网关协议(IGP),故运作于自治系统内部。著名的迪克斯加算法(Dijkstra)算法被用来计算最短路径树。OSPF分为OSPFv2和OSPFv3两个版本,其中OSPFv2用在IPv4网络,OSPFv3用在IPv6网络。OSPFv2是由RFC 2328定义的,OSPFv3是由RFC 5340定义的。与RIP相比,OSPF是链路状态协议,而RIP是距离矢量协议。

文章目录

  • 一、OSPF基本概念
    • 1.内部网关协议和外部网关协议
    • 2.OSPF区域
    • 3.Router ID
    • 4.Router ID选取规则
    • 5.DR和BDR
      • 1)DR和BDR的选举方法
      • 2)DR和BDR的选举过程
    • 6.OSPF的度量值为COST
    • 7.OSPF数据包及类型
      • 1)OSPF数据包
      • 2)OSPF的包类型
    • 8.特殊区域
    • 9.五种类型
    • 10.6种LSA分析
  • 二、抓包实验
    • 1.实验环境
    • 2.拓扑图
    • 3.详细配置
      • 1)抓包分析
      • 2)配置路由
      • 3)查看路由表
    • 总结

一、OSPF基本概念

1.内部网关协议和外部网关协议

自治系统(AS)
内部网关协议(IGP)
外部网关协议(EGP)

2.OSPF区域

为了适应大型的网络,OSPF在AS内划分多个区域
每个OSPF路由器只维护所在区域的完整链路状态信息

3.Router ID

OSPF区域内唯一表示路由器的IP地址

4.Router ID选取规则

选取路由器loopback接口上数值最高的IP地址
如果没有loopback接口,在物理端口中选取IP地址最高的
也可以使用router-id命令指定Router ID

5.DR和BDR

1)DR和BDR的选举方法

——自动选举DR和BDR
网段上Router ID最大的路由器将被选举为DR,第二大的将被选举为BDR
——手工选择DR和BDR
优先级范围是0~255,数值越大,优先级越高,默认为1
如果优先级相同,则需要比较Router ID

如果路由器的优先级被设置为0,它将不参与DR和BDR的选举

2)DR和BDR的选举过程

路由器的优先级可以影响一个选举过程,但是它不能强制更换已经存在的DR或BDR路由器

6.OSPF的度量值为COST

COST=10的8次方/BW
最短路径是基于接口指定的代价(cost)计算的

7.OSPF数据包及类型

1)OSPF数据包

承载在IP数据包内,使用协议号89

2)OSPF的包类型

8.特殊区域

1)Stub区域
由于并不是每个路由器都需要外部网络的信息,为了减少LSA泛洪量和路由表条目,就创建了末梢区域,位于Stub边界的ABR将宣告一条默认路由到所有的Stub区域内的内部路由器,不接受自治系统外部信息,同时也拒绝4类LSA,Stub区域不能包含ASBR(除非ABR也是ASBR).
2)Totally Stub区域
Cisco专用区域,不接受自治系统外部路由和自治系统内其他区域汇总路由。
3)NSSA区域
不接受自治系统外部信息,但NSSA可以包含ASBR。
4)Totally NSSA区域
Cisco专用区域,不接受自治系统外部路由和自治系统内其他区域汇总路由

9.五种类型

1)HELLO报文(hello packet)
周期性的发送给本路由器的邻居,使用的组播地址224.0.0.5.
BR和BDR发送和接受报文使用的组播地址是224.0.0.6。HELLO PACKET内容包括一些定时器数值、DR、BDR、以及自己已经知道的邻居。
HELLO 时钟的值与路由收敛速度、网络负荷大小成正比。
缺省情况下,PTP、BROADCAST类型接口发送HELLO报文的时间间隔的值为10秒;PTMP、NBMA类型接口发送HELLO PACKET时间间隔为30秒;

2)DD报文(Database description packet)
相邻路由器直间互发DD报文,报告对方自己所拥有的路由信息内容包括LSDB中每一条LSA摘要(摘要是指LSA的HEAD,通过改HEAD可以唯一标识一条LSA),这样做的目的是为了减少路由器之间传递信息的量,因为LSA的HEAD只占一条LSA的整个数据量的一小部分。根据HEAD,对端路由器就可以判断出是否已经有了这条LSA。

DATABASE DESCRIPTION PACKET 有两种
(1)空 DD 报文,用来确定MASTER/SLAVE关系。确定MASTER/SLAVE关系后,才发送有路由信息的DD报文
(2)带有路由信息的DD报文,收到有路由信息的DD报文后,路由器比较自己的数据库,发现对方的数据库中有自己需要的数据,则向对方发送LSR(LINK STATE REQUEST)

3)LSR报文(LINK STATE REQUEST PACKET)
两台路 由器之间互相交换DD报文后,知道对端的路由器有那些LSA是本地LSDB所缺少的或者对端更新的LSA,这时需要发送LSR报文向对方请求所需的LSA。内容包括所需要的LSA摘要。

4)LSU报文(LINK STATE UPDATE PACKET)
用来向对端路由器发送所需要的LSA,内容是多条LSA的集合

5)LSACK报文(LINK STATE ACKNOWLEDGMENT PACKET)
由于没有使用 可靠的TCP协议,但 是OSPF包又要求可靠的传输,所以就有了LSACK包。它用来对接收到的LSU报文进行确认。内容是需要确认的LSA的HEAD.

10.6种LSA分析

OSPF 中对链路状态信息的描述都是封装在LSA 中发布出去,常用的LSA 有以下几种类型:

• Router LSA(Type1):

由每个路由器产生,描述路由器的链路状态和开销,在其始发的区域内传播。

• Network LSA(Type2)

由DR 产生,描述本网段所有路由器的链路状态,在其始发的区域内传播。

• Network Summary LSA(Type3)

由ABR(Area Border Router,区域边界路由器)产生,描述区域内某个网段的路由,并通告给其他区域。

• ASBR Summary LSA(Type4)

由ABR产生,描述到ASBR(Autonomous System Boundary Router,自治系统边界路由器)的路由,通告给相关区域。

• AS External LSA(Type5)

由ASBR 产生,描述到AS(Autonomous System,自治系统)外部的路由,通告到所有的区域(除了Stub 区域和NSSA 区域)。

• NSSA External LSA(Type7)

由NSSA(Not-So-Stubby Area)区域内的ASBR 产生,描述到AS 外部的路由,仅在NSSA 区域内传播

二、抓包实验

1.实验环境

实验软件:eNSP软件
实验设备:五台路由器、一台交换机

2.拓扑图

3.详细配置

1)抓包分析

  • 先点击接口进行抓包
  • 开始配置R1路由器
[R1]dis cu
#
sysname R1
#
interface GigabitEthernet0/0/0ip address 12.0.0.1 255.255.255.252
#interface LoopBack0ip address 1.1.1.1 255.255.255.255
#
ospf 1 router-id 1.1.1.1 area 0.0.0.0 network 1.1.1.1 0.0.0.0 network 12.0.0.0 0.0.0.3 
  • R1配置完接口IP后,查看抓包的状态,可以发现,ospf进程宣告直连网段后,开始发送hello包
  • 接着给R2配置IP
[R2]dis cu
#sysname R2
#
interface GigabitEthernet0/0/0ip address 12.0.0.2 255.255.255.252
#
interface GigabitEthernet0/0/1ip address 23.0.0.1 255.255.255.252
#
interface LoopBack0ip address 2.2.2.2 255.255.255.255
#
ospf 1 router-id 2.2.2.2 area 0.0.0.0 network 2.2.2.2 0.0.0.0 network 12.0.0.0 0.0.0.3 network 23.0.0.0 0.0.0.3 。。省略部分内容
  • 配置完R2的接口,宣告OSPF区域后,会发现,双方会建立邻居关系,查看抓包状态可以发现,双方会发送DBD信息库,双方都会发送数据库请求(LSR),收到ACK;发送更详细的信息库(LAU),收到ACK

2)配置路由

  • R3配置
[R3] dis cu
#
sysname R3
#
interface GigabitEthernet0/0/1ip address 23.0.0.2 255.255.255.252
#
interface GigabitEthernet0/0/2ip address 35.0.0.1 255.255.255.0
#
interface LoopBack0ip address 3.3.3.3 255.255.255.255
#
ospf 1 router-id 3.3.3.3 area 0.0.0.0 network 23.0.0.0 0.0.0.3 network 35.0.0.0 0.0.0.255network 3.3.3.3 0.0.0.0
  • R4配置
[R4]dis cu
#sysname R4
#
interface GigabitEthernet0/0/0ip address 35.0.0.2 255.255.255.252
#
interface LoopBack0ip address 4.4.4.4 255.255.255.255
#
ospf 1 router-id 4.4.4.4 area 0.0.0.0 network 4.4.4.4 0.0.0.0 network 35.0.0.0 0.0.0.255
  • R5配置
#sysname R5
#
interface GigabitEthernet0/0/0ip address 35.0.0.6 255.255.255.252
#
interface LoopBack0ip address 5.5.5.5 255.255.255.255
#
ospf 1 router-id 5.5.5.5 area 0.0.0.0 network 5.5.5.5 0.0.0.0 network 35.0.0.0 0.0.0.255
  • 交换机不用配置

3)查看路由表

  • 配置完成后,ospf协议会开始学习并自动收敛路由表条目
  • 例如查看R1路由表
[R1]dis ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: PublicDestinations : 14       Routes : 14       Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface1.1.1.1/32  Direct  0    0           D   127.0.0.1       LoopBack02.2.2.2/32  OSPF    10   1           D   12.0.0.2        GigabitEthernet
0/0/03.3.3.3/32  OSPF    10   2           D   12.0.0.2        GigabitEthernet
0/0/04.4.4.4/32  OSPF    10   3           D   12.0.0.2        GigabitEthernet
0/0/05.5.5.5/32  OSPF    10   3           D   12.0.0.2        GigabitEthernet
0/0/012.0.0.0/30  Direct  0    0           D   12.0.0.1        GigabitEthernet
0/0/012.0.0.1/32  Direct  0    0           D   127.0.0.1       GigabitEthernet
0/0/012.0.0.3/32  Direct  0    0           D   127.0.0.1       GigabitEthernet
0/0/023.0.0.0/30  OSPF    10   2           D   12.0.0.2        GigabitEthernet
0/0/035.0.0.0/24  OSPF    10   3           D   12.0.0.2        GigabitEthernet
0/0/0127.0.0.0/8   Direct  0    0           D   127.0.0.1       InLoopBack0127.0.0.1/32  Direct  0    0           D   127.0.0.1       InLoopBack0
127.255.255.255/32  Direct  0    0           D   127.0.0.1       InLoopBack0
255.255.255.255/32  Direct  0    0           D   127.0.0.1       InLoopBack0
还可以使用 dis ospf pee b 查看邻居关系

总结

  • OSPF协议主要优点

1、OSPF是真正的LOOP- FREE(无路由自环)路由协议。源自其算法本身的优点。(链路状态及最短路径树算法)

2、OSPF收敛速度快:能够在最短的时间内将路由变化传递到整个自治系统。

3、提出区域(area)划分的概念,将自治系统划分为不同区域后,通过区域之间的对路由信息的摘要,大大减少了需传递的路由信息数量。也使得路由信息不会随网络规模的扩大而急剧膨胀。

4、将协议自身的开销控制到最小。见下:

1)用于发现和维护邻居关系的是定期发送的是不含路由信息的hello报文,非常短小。包含路由信息的报文时是触发更新的机制。(有路由变化时才会发送)。但为了增强协议的健壮性,每1800秒全部重发一次。

2)在广播网络中,使用组播地址(而非广播)发送报文,减少对其它不运行ospf 的网络设备的干扰。

3)在各类可以多址访问的网络中(广播,NBMA),通过选举DR,使同网段的路由器之间的路由交换(同步)次数由 O(N*N)次减少为 O (N)次。

4)提出NSSA区域的概念,使得NSSA区域内不再传播引入的ASE路由。

5)在ABR(区域边界路由器)上支持路由聚合,进一步减少区域间的路由信息传递。

6)在点到点接口类型中,通过配置按需拨号属性(OSPF over On Demand Circuits),使得ospf不再定时发送hello报文及定期更新路由信息。只在网络拓扑真正变化时才发送更新信息。

5、通过严格划分路由的级别(共分四极),提供更可信的路由选择。

6、良好的安全性,ospf支持基于接口的明文及md5 验证。

7、OSPF适应各种规模的网络,最多可达数千台。

华为OSPF抓包分析七种状态相关推荐

  1. 华为--OSPF抓包实验分析邻接关系的七个状态,单区域ospf配置

    文章目录 前言 一:OSPF路由协议原理 1.1:具体的原理可以看我的另一篇博客,不再赘述 1.2:一些总结 1.3:OSPF协议五种报文详解 1.4:OSPF协议6种LSA分析 二:OSPF抓包实验 ...

  2. OSPF抓包实验分析邻接关系的七个状态和单区域ospf配置(在华为ENSP上操作)

    点击蓝色目录查看你需要的内容 前言 OSPF路由协议原理 OSPF概述和基本配置命令(点击链接阅读) 总结及扩展 OSPF协议五种报文详解 OSPF协议6种LSA分析 OSPF抓包实验 实验环境 实验 ...

  3. 华为——OSPF单区域实验配置,实验抓包分析,五种报文分析,六种LSA介绍,以及如何建立邻接关系的七种状态

    华为--OSPF单区域实验配置,实验抓包分析,五种报文分析,六种LSA介绍,以及如何建立邻接关系的七种状态 前言 一:OSPF简介 1.1:工作原理 1.1.1:架构介绍 1.1.2:信息传递 1.1 ...

  4. 你知道DR和BDR选举过程吗?了解一下?!精华总结(华为设备,抓包分析,OSPF的DR不抢占原则和wait时间)

    文章目录 前言 一:OSPF邻接关系 1.1:七个状态 二:抓包分析选举过程 2.1:环境 2.2:拓扑图 2.3:配置并抓包分析 三:DR和BDR选举的总结 3.1:第一个hello包什么时候出现? ...

  5. 最通俗易懂的OSPF五种报文+七种状态

    文章目录 OSPF是什么? OSPF的五种报文,你知道哪几个? 那OSPF协议是怎么通过这几个报文运作? OSPF状态机是如何运作的啊? 如果OSPF进程停留在某个状态,问题出至哪里呢? 那OSPF链 ...

  6. Wireshark抓包分析TCP建立/释放链接的过程以及状态变迁分析

    Wireshark抓包分析TCP建立/释放链接的过程以及状态变迁分析 一.介绍计算机网络体系结构 1.计算机的网络体系结构 在抓包分析TCP建立链接之前首先了解下计算机的网络通信的模型,我相信学习过计 ...

  7. Java抓包分析四(基于jnetpcap进行抓包)——分析Http请求数据包

    在上篇文章中Java抓包分析三(基于jnetpcap进行抓包)--抓取Http请求数据包,我们讲解了TCP三次握手的过程和如何抓取Http数据包,但是我们并没有进行一个数据分析,接下来这篇文章我们将要 ...

  8. 用Wireshark抓包分析协议 计算机网络

    此篇博客记录使用Wireshark抓包分析协议. 目录 一.DNS 二.分析TCP握手过程 三.TLS报文 四.HTTP协议 五.SMTP 六.ARP 七.RTP 八.RTMP 一.DNS DNS是域 ...

  9. SNMP Trap抓包分析

    目录 SNMP的组成 SNMP Trap的两种类型 类型整数值定义 TRAP-TYPE NOTIFICATION-TYPE SNMP Trap通用陷阱 Trap-pdu抓包分析 Snmpv2-trap ...

最新文章

  1. Postgresql 物理热备份 -- PITR 时间点恢复(Point In Time Recovery)
  2. jQuery-给ul添加了li之后,添加的li并没有绑定点击监听怎么办?
  3. 使用 XML 实现 REST 式的 SOA
  4. homework-02
  5. 【Nginx】Nginx配置文件参数/启动参数详解;启动/停止/重新加载配置命令
  6. android页面统计代码,android流量统计(示例代码)
  7. qq java版与wp版区别_手机QQ 2.7 (WP版)更新,同时支持WP7和WP8
  8. theme vscode 护眼_vscode的颜色设置(护眼模式)
  9. 【Spring第七篇】Java配置类:JavaConfig
  10. securerandom java_Java 随机数 Random VS SecureRandom
  11. Android引入第三方jar包报错java.lang.NoClassDefFoundErro...
  12. 软件是怎么控制硬件的?
  13. 吉他效果器-削波失真
  14. 当前版本与卡刷包android_安卓7.0 xposed框架卡刷包
  15. lbochs模拟器最新版_bochs模拟器官方下载
  16. poi根据Word模板导出Word文件,Word模板
  17. win7点了计算机看不见硬盘,win7找不到硬盘怎么办_win7识别不到硬盘如何解决
  18. 微信扫码登陆(JAVA)
  19. 让程序员工资随年龄增长递减更合理?
  20. 复选框全部选中/全部取消

热门文章

  1. 学python人工智能电脑要什么配置_没有基础能不能学人工智能 首选语言是Python吗...
  2. [yotroy.cool]气死了,新买的MacBook M1居然第二次崩溃重启了
  3. 5 三大系统,让学习不靠意志力
  4. 通过api 获取eloqua的数据(完整版)
  5. 液晶显示器护眼桌面设置(又称润眼桌面)——把桌面设置成为浅绿色的
  6. 【408操作系统】考点总结(更新ing)
  7. 代码mysql恢复数据库很慢_MySQL导入数据非常慢的解决办法
  8. 将MySQL数据导入hive时报错发现如下错误
  9. 游戏安全逆向工程师:CE基础
  10. 高级软件工程学习笔记