目录:

一、 OSPF路由协议概述

    1,OSPF协议

   2,内部网关协议和外部网关协议

  3,OSPF的工作过程

二、OSPF基本概念

  1,OSPF区域

  2,区域ID

  3,ROUTE ID

   4,DR和BDR

   5,DR和BDR选举

三、OSPF的报文

   1,OSPF组播地址

   2,OSPF数据包的类型

  3,OSPF邻接关系的建立

   4,OSPF的网络类型

   5,OSPF的应用环境考虑与OSPF特点

 6,OSPF与RIP对比

一、OSPF路由协议概述

1,OSPF协议

OSPF路由协议是用于网际协议(IP)网络的链路状态路由协议。该协议使用链路状态路由算法的内部网关协议(IGP),在单一自治系统(AS)内部工作。

2,内部网关协议和外部网关协议

自治系统(AS)

内部网关协议(IGP)

外部网关协议(EGP)

内部网关路由协议(IGP)

例如:RIP、OSPF等

外部网关路由协议(EGP)

例如:BGP等

OSPF是链路状态路由协议

3,OSPF的工作过程

  • 邻居列表
  • 链路状态数据库
  • 路由表

(1)OSPF协议启动后,某个端向本地所有启动OSPF协议的直连接口组播224.0.0.5发送hello包;

(2)链路状态数据库:当其他端收到后将回复hello包,建立邻接关系,端口学习链路状态信息存入链路状态数据库;

(3)最短路径树:Dijkstra算法,计算到达所有未知网段的最短路径;

(4)路由表:将计算出的最短路径加载到本地的路由表中,收敛完成。

二、OSPF基本概念

1,OSPF区域

为了适应大型的网络,OSPF在AS内划分多个区域

每个OSPF路由器只维护所在区域的完整链路状态信息

2,区域ID

区域ID可以表示成一个十进制的数字

也可以表示成一个IP

骨干区域Area 0

负责区域间路由信息传播

非骨干区域

3,Router ID

OSPF区域内唯一标识路由器的IP地址

Router ID选取规则

选取路由器loopback接口上数值最高的IP地址

如果没有loopback接口,在物理端口中选取IP地址最高的

也可以使用router-id命令指定Router ID

4,DR和BDR

在广播网络中,5台路由器总共需要建立n(n-1)/2 个邻接关系。占用了大量带宽,同时也不方便管理。

因此,需要配置DR和BDR来改进。

  • DR(Designated Router):指定路由器,所有其他路由器只和它一个交换整个网络的一些路由更新信息,再由它对邻居路由器发送更新报文;
  • BDR(Backup Designated Router):备份指定路由器,当DR出现故障时,BDR起着备份的作用;
  • DROther(Designated Router Other):成员路由器

5,DR和BDR的选举

(1)自动选举DR和BDR

  • 网段上Rouoter ID最大的路由器将被选举为DR,第二大的将被选举为BDR

(2)手工选举DR和BDR

  • 优先级范围是0——255,数值越大,优先级越高,默认为1
  • 如果优先级相同,则需要比较Router ID
  • 如果路由器的优先级被设置为0,它将不参与DR和BDR的选举

注:

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

如原来选举的DR router-id为1.1.1.1  之后又接入一个路由,router-id 为9.9.9.9  ,但是,因为DR已经选举出来,所以,9.9.9.9 不会替代1.1.1.1 成为新的DR

三、OSPF的报文

1,OSPF的组播地址

  • DR会通过224.0.0.6,向所有邻居通告信息
  • DRother 会通过224.0.0.5 向DR和BDR通告网络状态信息

2,OSPF数据包类型

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

类型:

3,OSPF邻接关系的建立

(1)OSPF启动的第一个阶段是使用Hello报文建立双向通信的过程

(2)OSPF启动的第二个阶段是建立完全邻接关系

4,OSPF的网络类型

  • 点到点网络(Point-to-Point)
  • 广播多路访问网络(Broadcast MultiAccess ,BMA)
  • 非广播多路访问网络(None Broadcast MultiAccess , NBMA)
  • 点到多点网络 (Point -to - Multipoint)

目前主要使用的是前两种

5,OSPF的应用环境考虑与OSPF特点 

考虑:

  • 网络规模:自治域内路由器数量
  • 网络拓扑:是网型拓扑还是其他
  • 其他特殊要求:收敛速度等
  • 路由器自身要求:路由器本身的硬件性能

特点:

  • 可适应大规模网络
  • 路由变化收敛速度快
  • 无路由环
  • 支持区域划分支持可变长子网掩码VLSM
  • 支持以组播地址发送协议报

6,OSPF与RIP的对比

动态路由——OSPF的更多相关文章

  1. 动态路由 - OSPF 一文详解

    动态路由 在之前的文章中,介绍了基于距离矢量的路由协议.而在今天这这一部分中会主要讲解链路状态的路由协议,对于动态的路由协议来说,需要具备如下的能力: 发现远端网络 路由器可以直接获得直连路由,这是由 ...

  2. H3C路由器配置——动态路由OSPF协议

    一.介绍 1.OSPF协议介绍 (1).OSPF(Open Shortest Path First,开放最短路径优先)路由协议是用于网际协议(IP)网络的链路状态路由协议.是一个被各厂商设备广泛支持的 ...

  3. Cisco动态路由 OSPF协议

    OSPF描述: 组播扩展OSPF  锁定 同义词 ospf一般指组播扩展OSPF 本词条由“科普中国”百科科学词条编写与应用工作项目 审核 . OSPF(Open Shortest Path Firs ...

  4. 八、路由详细介绍之动态路由OSPF(重点)

    一.OSPF介绍 OSPF优点:无环路.收敛快.扩展性好.支持认证 二.工作原理: 图中RTA.RTB.RTC每个路由器都会生成一个LSA, 通过LSA泛洪进行互相发送相互学习,形成LSDB (链路状 ...

  5. RIP、OSPF、BGP、动态路由选路协议、自治域AS

    相关学习资料 tcp-ip详解卷1:协议.pdf http://www.rfc-editor.org/rfc/rfc1058.txt http://www.rfc-editor.org/rfc/rfc ...

  6. 三台三层交换机OSPF多区域划分动态路由实验

    一.实验拓扑 二.实验步骤 1.给主机设置IP,网关:给交换机划分VLAN,给VLAN划分端口,给VLAN设置IP 2.启用OSPF.宣告网段(network 网络地址 反掩码 区域名     其中0 ...

  7. 两台三层交换机单区域OSPF动态路由实验

    一.   实验目的 1.  掌握三层交换机之间通过OSPF协议实现网段互通的配置方法. 2.  理解RIP协议和OSPF协议内部实现的不同点 二.   应用环境 当两台三层交换机级联时,为了保证每台交 ...

  8. 浅谈-动态路由之OSPF的理解

    路由 在网络中,路由相当于就是一张地图,让路由器知道这个对应的IP数据包应该往哪端口.网段走:而这个"地图"我们称之为路由表,不同的目的IP路由表的下一个跳也不同,其生成方式有又有 ...

  9. CCNP路由实验之七 动态路由之BGP

     CCNP路由实验之七 动态路由之BGP 动态路由协议能够自己主动的发现远程网络,仅仅要网络拓扑结构发生了变化,路由器就会相互交换路由信息,不仅能够自己主动获知新添加的网络,还能够在当前网络连接失 ...

随机推荐

  1. PPT学习总结

    [一]关注 1. 内容 2. 结构 3. 配色 4. 素材 5. 构图 6. 动画 [二]技巧 1. 颜色对比 2. 动画突出 [三]参考 https://www.zhihu.com/question ...

  2. Java面向对象06——类与对象小结

    小结  /* 1. 类与对象    类是一个模板:抽象,对象是一个具体的实例 2. 方法    定义.调用 ​ 3. 对应的引用    引用类型: 基本类型(8)    对象是通过引用来操作的:栈-- ...

  3. Upload-labs 文件上传靶场通关攻略(上)

    Upload-labs 文件上传靶场通关攻略(上) 文件上传是Web网页中常见的功能之一,通常情况下恶意的文件上传,会形成漏洞. 逻辑是这样的:用户通过上传点上传了恶意文件,通过服务器的校验后保存到指 ...

  4. RHCE_DAY01

    shell概述 shell是一个程序,它连接了用户和Linux内核,它可以解释用户输入的命令传递给内核,让用户可以更加方便的使用Linux系统 shell 本身并不是内核的一部分,它只是站在内核的基础 ...

  5. C++ 继承方式 与 普通方式 对比

    1 //C++ 继承 2 //继承是面向对象三大特性之一 3 4 #include <iostream> 5 #include <string> 6 using namespa ...

  6. 代码重构与单元测试——使用“以查询取代临时变量”再次对Statement()方法进行重构(七)

    代码重构与单元测试(一) 代码重构与单元测试--测试项目(二) 代码重构与单元测试--"提取方法"重构(三) 代码重构与单元测试--重构1的单元测试(四) 代码重构与单元测试--对 ...

  7. 浅谈Java迭代器

    迭代器Iterator 概述: 迭代器(Iterator):它不是一个容器,它是一种用于访问容器的方法,可用于迭代 List.Set和Map等容器. 迭代:一个一个的往外拿. 作用:帮我们遍历或者拿到 ...

  8. Blazor 模板化组件开发指南

    翻译自 Waqas Anwar 2021年4月15日的文章 <A Developer's Guide To Blazor Templated Components> [1] 在我之前的一篇 ...

  9. 01 CTF从0到。。。。

    无意间在前段时间接触到了CTF,感觉很有意思,就参加了个单位的短期培训,并且参加了比赛,也是无意混进了决赛.感觉自己不会的还很多!SO,开始写博客开始刷题,自己很菜,不会C,不会Python,不会汇编 ...

  10. Goland 这些技巧,学会开发效率翻倍!

    hi, 大家好,我是 hhf. <Goland 这些实操技巧,你可能还不会!>介绍了日常开发中一些比较好用的技巧.本篇文章继续介绍一些其他比较好用的技巧. 自定义结构 tag Goland ...