OSPF(Open Shortest Path Fitst,ospf)开放最短路径优先协议,是由Internet工程任务组开发的路由选择协议,公用协议,任何厂家的设备。
链路状态路由协议(也可以说OSPF)工作原理:
每台路由器通过使用Hello报文与它的邻居之间建立邻接关系 <?XML:NAMESPACE PREFIX = U3 /><?XML:NAMESPACE PREFIX = O />
每台路由器向每个邻居发送链路状态通告(LSA),有时叫链路状态报文(LSP). 每个邻居在收到LSP之后要依次向它的邻居转发这些LSP(泛洪)
每台路由器要在数据库中保存一份它所收到的LSA的备份,所有路由器的数据库应该相同
依照拓扑数据库每台路由器使用Dijkstra算法(SPF算法)计算出到每个网络的最短路径,并将结果输出到路由选择表中
OSPF的简化原理:发Hello报文——建立邻接关系——形成链路状态数据库——SPF算法——形成路由表。
几个概念:
OSPF的特征:
1.快速适应网络变化
2.在网络发生变化时,发送触发更新
3.以较低的频率(每30分钟)发送定期更新,这被称为链路状态刷新
4.支持不连续子网和CIDR
5.支持手动路由汇总
6.收敛时间短
7.采用Cost作为度量值
8.使用区域概念,这可有效的减少协议对路由器的CPU和内存的占用.
9.有路由验证功能,支持等价负载均衡
运行OSPF的路由器需要一个能够唯一标示自己的Router ID
OSPF的网络类型:
广播型网络, 比如以太网,Token Ring和FDDI,这样的网络上会选举一个DR和BDR,DR/BDR的发送的OSPF包的目标地址为224.0.0.5,运载这些OSPF包的帧的目标MAC地址为0100.5E00.0005;而除了DR/BDR以外的OSPF包的目标地址为224.0.0.6,这个地址叫AllDRouters
NBMA网络, 比如X.25,Frame Relay,和ATM,不具备广播的能力,在这样的网络上要选举DR和BDR,因此邻居要人工来指定
点到多点网络, 是NBMA网络的一个特殊配置,可以看成是点到点链路的集合. 在这样的网络上不选举DR和BDR
点到点网络, 比如T1线路,是连接单独的一对路由器的网络,点到点网络上的有效邻居总是可以形成邻接关系的,在这种网络上,OSPF包的目标地址使用的是224.0.0.5,这个组播地址称为AllSPFRouters
虚链接,它被认为是没有编号的点到点网络的一种特殊配置.OSPF报文以单播方式发送
OSPF的DR(指定路由)与BDR(备份路由):
通过组播发送Hello报文
具有最高OSPF优先级的路由器会被选为DR(255最高)
如果OSPF优先级相同具有最高路由器ID,路由器会被选为DR
DR与BDR的选举过程?
1. 在和邻居建立双向通信之后,检查邻居的Hello包中Priority,DR和BDR字段,列出所有可以参与DR/BDR选举的邻居.所有的路由器声明它们自己就是DR/BDR(Hello包中DR字段的值就是它们自己的接口地址;BDR字段的值就是它们自己的接口地址)
2. 从这个有参与选举DR/BDR权的列表中,创建一组没有声明自己就是DR的路由器的子集(声明自己是DR的路由器将不会被选举为BDR)
3. 如果在这个子集里,不管有没有宣称自己就是BDR,只要在Hello包中BDR字段就等于自己接口的地址,优先级最高的就被选举为BDR;如果优先级都一样,RID最高的选举为BDR
4. 如果在Hello包中DR字段就等于自己接口的地址,优先级最高的就被选举为DR;如果优先级都一样,RID最高的选举为DR;如果没有路由器宣称自己就是DR,那么新选举的BDR就成为DR
5. 要注意的是,当网络中已经选举了DR/BDR后,又出现了1台新的优先级更高的路由器,DR/BDR是不会重新选举的
6. DR/BDR选举完成后,其他Rother只和DR/BDR形成邻接关系.所有的路由器将组播Hello包到224.0.0.5,以便它们能跟踪其他邻居的信息.其他Rother只组播update packet到224.0.0.6,只有DR/BDR监听这个地址 .一旦出问题,反过来,DR将使用224.0.0.5泛洪更新到其他路由器
OSPF路由器在完全邻接之前,所经过的几个状态:
1.Down: 初始化状态
2.Attempt: 只适于NBMA网络,在NBMA网络中邻居是手动指定的,在该状态下,路由器将使用HelloInterval取代PollInterval来发送Hello包
3.Init: 表明在DeadInterval里收到了Hello包,但是2-Way通信仍然没有建立起来
4.two-way: 双向会话建立
5.ExStart: 信息交换初始状态,在这个状态下,本地路由器和邻居将建立Master/Slave关系,并确定DD Sequence Number,接口等级高的的成为Master
6.Exchange: 信息交换状态,本地路由器向邻居发送数据库描述包,并且会发送LSR用于 请求新的LSA
7.Loading: 信息加载状态,本地路由器向邻居发送LSR用于请求新的LSA
8.Full: 完全邻接状态,这种邻接出现在Router LSA和Network LSA中
在OSPF协议的环境下,区域(Area)是一组逻辑上的OSPF路由器和链路,区域是通过一个32位的区域ID(Area ID)来识别的
OSPF的区域:
在一个区域内的路由器将不需要了解它们所在区域外部的拓扑细节。在这种环境下:
路由器仅仅需要和它所在区域的其他路由器具有相同的链路状态数据库
链路状态数据库的减小也就意味着处理较少的LSA通告 
大量的LSA泛洪被限制在一个区域里面
对于和区域相关的通信量定义了下面3种通信量的类型:
域内通信量(Intra-Area Traffic)
域间通信量(Inter-Area Traffic)
外部通信量(External Traffic) 
OSPF的路由器类型
内部路由器(Internal Router)
区域边界路由器(Area Border Routers,ABR)
骨干路由器(Back bone Router)
自主系统边界路由器(Autonomous System Boundary Router,ASBR)
分段区域(Partitioned Area)是指一个区域由于链路的失效而使这个区域的一个部分和其他部分隔离开来的情形。
虚链路(Virtual Link)是指一条通过一个非骨干区域连接到骨干区域的链路。
在配置虚链路的时候,有几条相关的规则,
虚链路必须配置在两台ABR路由器之间
配置了虚链路所经过的区域必须拥有全部的路由选择信息,这样的区域又被称为传送区域(Transit Area)  传送区域不能是一个末梢区域
配置一个基本的OSPF的过程含有以下3个必要的步骤:
步骤1:确定和每一个路由器接口相连的区域;
步骤2:使用router ospf process-id命令来启动一个OSPF进程;
步骤3:使用network area命令来指定运行OSPF协议的接口和它们所在的区域。

配置OSPF具体命令:

Router(config)#router ospf process-id
Router(config-router)#network address mask area area-id
好了我们今天所讨论的就是,OSPF网络类型三种。通过实验来验证前面的理论拓扑如下,
基本配置,根据拓扑配置IP地址。
在路由器启动期间,路由器上所有的接口都是管理关闭(administratively shutdown)的,如果OSPF不能发现一个有效的IP地址作为它的路由器ID,那么OSPF将不会启动。
解决方法-使用一个loopback接口(环回接口)
Loopback接口是一个仅在软件上有意义的、虚拟的接口并且它总是有效(up)的,我们来给路由器设置上loopback接口,
给路由器配置OSPF协议
起了路由器协议之后查看网络是不是相通?
我们来进行查看Router1的网络类型
进入Router1、Router2的接口下进行更改,
router(config)#ip ospf network broadcast 广播
router(config)#ip ospf network non-broadcast 非广播
router(config)#ip ospf network point-to-point 点对点
router(config)#ip ospf network point-to-multipoint 点对多点
我们要把它改成广播型网络
更改后再进行查看
前面我们说了,在广播型网络中是选择DR与BDR的,而且是通过优先级选择的,在优先级相同的时候看路由ID。我们的路由二的路由ID比Router1的高,所以应该是Router2为DR
那么我想把Router1变成DR有没有办法?可以改变优先级实现
在路由器选择好DR和BDR之后,在进入一个更高的路由器的时候是不重新选择DR与BDR的,所以我们可以先保存,之后在重启或者是重新打开(模拟器存在BUG)
看看是不是见效了,使得Router2变成的是BDR
完成了第一个实验我们再来进行把Router2和Router3之间变成NBMA网络
我们之前把Router2的串行接口变成的广播
在Router3上进行更改
变成NBMA之前还得给路由器指定邻接邻居,因为在NBMA网络中是不具备广播能力,在这样的网络上选举DR与BDR的时候邻居需人工指定。
再来Router3上进行查看是不是达到我们要的?
变为了NBMA网络了,
ping一下看是不是已经学到相连的邻居
接下来我们进行第三个实验,把Router3和Router4变成点对多点之后还可以正常通讯,在这样的网络中是不选举DR和BDR的
在Router3的串行线S1/1上是点对点网络
还和刚才的命令一样,在Router3和Router4上进行更改
更改之后查看结果
检查网络的相关性,看看是不是相通
网络很正常,你做了吗?

转载于:https://blog.51cto.com/crystals/278415

CCNP OSPF协议详解相关推荐

  1. CCNP——OSPF协议详解及其支持的网络类型

    OSPF协议简介: O SPF O = open 开放 SPF = shortest path first 最短路径优先 cost=metric OSPF = 开放性的最短路径优先协议 如果到达一个目 ...

  2. OSPF(HCNA)——OSPF协议详解

    目录 1.链路状态与LSA 1.链路状态 2.LSA 2.OSPF报文的类型 3.单区域OSPF网络 1.链路状态数据库 2.最短路径树 3.OSPF路由器 4.多区域OSPF网络 5.邻居关系与邻接 ...

  3. OSPF报文详解——LSA概述

    目录 一.OSPF报文详解: (1)---OSPF头部分析: (2)---hello字段分析: 二.LSA报文--链路状态通告 (1)---简介: (2)---头部信息: (3)---数据部分: 一. ...

  4. zz:NETCONF协议详解

    随着SDN的大热,一个诞生了十年之久的协议焕发了第二春,它就是NETCONF协议.如果你在两年前去搜索NETCONF协议,基本得到的信息都是"这个协议是一个网管协议,主要目的是弥补SNMP协 ...

  5. 入木三分学网络第一篇--VRRP协议详解-----(1)

    原帖:http://blog.chinaunix.net/uid-11654074-id-2857384.html 目录 入木三分学网络第一篇--VRRP协议详解 1. VRRP产生背景及应用环境 1 ...

  6. OSPF路由协议详解

    OSPF路由协议详解 一.OSPF路由协议详概述 AS自治系统分类 二.OSPF工作过程及原理 1.OSPF工作过程 2.OSPF工作原理 五种报文 三个阶段 三张表 三.OSPF区域 OSPF区域类 ...

  7. nb服务器协议,nb-iot协议详解

    设计的优点是都能部署在现在的LTE网络,只需要对基站和核心网的软件进行升级即可,不需要为IoT物联网通讯专门设计并建设一个专门网络,可以大大降低建设成本.与LTE一样,NB-IoT终端在开机并搜索载波 ...

  8. VRRP协议详解-----(1)

    目录 入木三分学网络第一篇--VRRP协议详解 1. VRRP产生背景及应用环境 1.1为什么要用VRRP 2.VRRP基本原理及实现过程 2.1 VRRP基本概念 2.2 VRRP报文组成 2.3  ...

  9. ISIS--中间系统协议详解

    ISIS–中间系统协议详解 简介:IS-中间系统,即路由器(router)也是一种动态路由协议,类似于IP中的OSPF,但是OSPF大多用于企业网,而ISIS多用于运营商网络.ISIS协议的包没有IP ...

最新文章

  1. 看 nova-scheduler 如何选择计算节点 - 每天5分钟玩转 OpenStack(27)
  2. 七彩岁月【我与51CTO一“七”成长】
  3. BCH易于使用不只是说说而已
  4. Elasticsearch 存储模型
  5. linux系统死亡之平台,又一个Linux发行版宣告死亡
  6. VS2017中的附加到进程
  7. 【半译】扩展shutdown超时设置以保证IHostedService正常关闭
  8. html window 属性,html中window对象top 、self 、parent 等属性
  9. 顶岗实习周记java方向_JAVA软件开发——顶岗实习周记25篇.doc
  10. 九小时九个人九扇门(01背包)
  11. 论一个蒟蒻的脑子里可以有多少坑(貌似咕了……目前更新保持在noip阶段)
  12. NOIP2017普及组T3(棋盘)题解
  13. Sakai Demo搭建及遇到的问题汇总
  14. laravel框架使用教程
  15. 快速串联 RNN / LSTM / Attention / transformer / BERT / GPT
  16. 不知不觉自己的C盘越来越大了?你可能需要看一看这个
  17. 电子电路笔记----基本放大电路--半导体三极管
  18. Google自带翻译无效解决3个步骤
  19. Android Home键按键事件监听
  20. 《Android Studio开发实战》学习(五) - 截图

热门文章

  1. 03系统多界面_【part two】操作说明——系统管理、公司管理、客户管理
  2. SNMP高速扫描器braa
  3. Unity 游戏开发技巧集锦之创建部分光滑部分粗糙的材质
  4. winscp linux中文文件夹名称乱码,解决windows传送到linux下中文文件名及文件内容乱码问题...
  5. java a标签正则_正则表达式:java中婚配HTML中a标签中的中文字符
  6. 简单快捷方法:CAJ 文件转 成PDF文件
  7. 外媒:Feinstein Institute的研究人员通过脑植入电极唤起触觉
  8. 逆转衰老!“70岁”小鼠经过数月治疗,肾脏皮肤血液细胞重返“年轻态”
  9. 减肥登Cell封面上热搜:华东师大热疗探索新突破,这一波网友们想象力大开
  10. SCI期刊上发现大量辣眼学术名词,用机翻规避抄袭,作者主要来自中国