OSPF分为OSPFv2和OSPFv3两个版本,其中OSPFv2用在IPv4网络,OSPFv3用在IPv6网络

思科OSPF的协议管理距离(AD)是110,华为OSPF的协议管理距离是10

通告网络接口的状态来建立链路状态数据库,生成最短路径树,每个OSPF路由器使用这些最短路径构造路由表

手工指定Router-ID。
路由器上活动Loopback接口中IP地址最大的,也就是数字最大的,如C类地址优先于B类地址,一个非活动的接口的IP地址是不能被选为Router-ID的
如果没有活动的Loopback接口,则选择活动物理接口IP地址最大的
 
OSPF计算的Cost,同样是和接口带宽成反比,带宽越高,Cost值越小。到达目标相同Cost值的路径,可以执行负载均衡,最多6条链路同时执行负载均衡。
 
OSPF包的目标地址使用的是224.0.0.5 而除了DR/BDR以外发送的OSPF包的目标地址为224.0.0.6
 
  1. Down:此状态还没有与其他路由器交换信息。首先从其ospf接口向外发送hello分组,还并不知道DR(若为广播网络)和任何其他路由器。发送hello分组使用组播地址224.0.0.5。
  2. Attempt: 只适于NBMA网络,在NBMA网络中邻居是手动指定的,在该状态下,路由器将使用HelloInterval取代PollInterval来发送Hello包。
  3. Init: 表明在DeadInterval里收到了Hello包,但是2-Way通信仍然没有建立起来。
  4. two-way: 双向会话建立,而RID彼此出现在对方的邻居列表中。(若为广播网络:例如:以太网。在这个时候应该选举DR,BDR。)
  5. ExStart: 信息交换初始状态,在这个状态下,本地路由器和邻居将建立Master/Slave关系,并确定DD Sequence Number,路由器ID大的的成为Master。
  6. Exchange: 信息交换状态,本地路由器和邻居交换一个或多个DBD分组(也叫DDP),DBD包含有关LSDB中LSA条目的摘要信息。
  7. Loading: 信息加载状态:收到DBD后,将收到的信息同LSDB中的信息进行比较。如果DBD中有更新的链路状态条目,则向对方发送一个LSR,用于请求新的LSA。
  8. Full: 完全邻接状态,邻接间的链路状态数据库同步完成,通过邻居链路状态请求列表为空且邻居状态为Loading判断
(1)Stub区域
由于并不是每个路由器都需要外部网络的信息,为了减少LSA泛洪量和路由表条目,就创建了末梢区域,位于Stub边界的ABR将宣告一条默认路由到所有的Stub区域内的内部路由器,不接受自治系统外部信息,同时也拒绝4类LSA,Stub区域不能包含ASBR(除非ABR也是ASBR).
(2)Totally Stub区域
Cisco专用区域,不接受自治系统外部路由和自治系统内其他区域汇总路由。
(3)NSSA区域
不接受自治系统外部信息,但NSSA可以包含ASBR。
(4)Totally NSSA区域
Cisco专用区域,不接受自治系统外部路由和自治系统内其他区域汇总路由
 
 

SPF的八种状态机:

1.down

刚启动OSPF进程,还未收到邻居的任何信息。

2.attempt

只发生NBMA网络中,使用单播更新,发送HELLO分组,但从邻居没有收到任何信息。

3.init

只有一方收到的另一方的HELLO数据包,并且在邻居字段中收到对方的route-id.

4.two-way

本路由器收到对方的HELLO数据包,并且在邻居字段中看到自己的route-id.

5.exstart

在交换DBD之前阶段选出主/从路由器。

6.exchange

完成协商交换DBD.

7.loading

向对方发送LSA请求分组确定自己少哪些LSA,发送LSU告诉对方自己详细的LSA信息。并用LSA ACK确认。

8.full

数据同步,完成邻接关系。

OSPF邻居关系停在各状有态的原因:

一.OSPF邻居表为空
1.接口上没有启动OSPF

2.访问列表阻止了HELLO包分组。

3.hello间隔与DEAD时间不匹配。

4.区域ID不匹配。

5.PASSWD不对。

6.一个OSPF邻接体存在第二个IP地址。

7.frame-relay map中缺少broadbast关键字。

二.OSPF邻居关系停在ATTEMPT状态:

1.错误配置了neighbor语句。

2.ACL阻止了HELLO分组。

3.NBMA中单播中断。

三.OSFP邻居关系停在INIT状态:

1.hello在某一边丢失。

2.验证某一边启用。

四.OSPF邻居在TWO-WAY:

1.二边的优先级都为0

五.OSPF邻居停滞exstart/EXCHANGE状态

1.不匹配接口的MTU(可以使用ip ospf mtu-ingore忽略,在MTU小的一方打)

2.在邻居上有重复的ROUTE-ID.

(120/1)代表120是最大管理距离,1是当前的跳数,也是就说这是个rip协议,静态路由。 
思科各路由协议的优先级排名(从高到低)
DIRECT | 0
STATIC | 1
EIGRP Summary | 5
eBGP | 20
内部 EIGRP | 90
IGRP | 100
OSPF | 110
IS-IS | 115
RIP | 120
EGP | 140
外部EIGRP | 170
iBGP | 200
未知 | 255

OSPF(Open Shortest Path First开放式最短路径优先 -链路状态路由协议的更多相关文章

  1. OSPF(Open Shortest Path First)

    1.概述 路由协议OSPF全称为Open Shortest Path First,也就开放的最短路径优先协议,因为OSPF是由IETF开发的,所以所有厂商都可以用. OSPF的流量使用IP协议号. O ...

  2. 开放式最短路径优先OSPF

    1.OSPF基本知识 OSPF作为基于链路状态的协议,解决了RIP在收敛慢,路由环路,可扩展性差等问题,还有以下优点: 采用组播方式发布报文,可以减少对其他不运行ospf路由器的影响 ospf直尺无类 ...

  3. ZOJ 2760 How Many Shortest Path (不相交的最短路径个数)

    [题意]给定一个N(N<=100)个节点的有向图,求不相交的最短路径个数(两条路径没有公共边). [思路]先用Floyd求出最短路,把最短路上的边加到网络流中,这样就保证了从s->t的一个 ...

  4. s5-15 开放的最短路径优先_OSPF

    L-S路由协议的实例—OSPF 开放的路径优先(Open Shortest Path First) 使用图(graph)来表述真实的网络 - 每个路由器/Lan都是一个节点 - 测量代价/量度(met ...

  5. CCNA学习指南 -开放最短路径优先OSPF(单区域)

    在上个世纪九十年代撰写的<TCP/IP协议详解 卷一:协议>的动态选路中,内容大部分还是介绍 RIP路由选择信息协议,在互联网络如此发达的今天,RIP因为它的局限性逐步被OSPF取代. 在 ...

  6. [Swift]LeetCode847. 访问所有节点的最短路径 | Shortest Path Visiting All Nodes

    An undirected, connected graph of N nodes (labeled 0, 1, 2, ..., N-1) is given as graph. graph.lengt ...

  7. 最短路径遍历所有的节点 Shortest Path Visiting All Nodes

    2018-10-06 22:04:38 问题描述: 问题求解: 本题要求是求遍历所有节点的最短路径,由于本题中是没有要求一个节点只能访问一次的,也就是说可以访问一个节点多次,但是如果表征两次节点状态呢 ...

  8. ZOJ 2760 How Many Shortest Path(最短路径+最大流)

    Description Given a weighted directed graph, we define the shortest path as the path who has the sma ...

  9. AOJ GRL_1_C: All Pairs Shortest Path (Floyd-Warshall算法求任意两点间的最短路径)(Bellman-Ford算法判断负圈)

    题目链接:http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=GRL_1_C All Pairs Shortest Path Input ...

随机推荐

  1. apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName的解决

    apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ...

  2. Ubuntu下安装Apache mysql php的命令

    sudo apt-get install apache2 php5-mysql libapache2-mod-php5 mysql-serversudo apt-get install php5-gd ...

  3. 20145210 《Java程序设计》第一周学习总结

    教材学习内容总结 第一章: 1.Java三大平台,JavaSE的四个组成部分 Java根据应用领域的不同,区分为Java SE.Java EE.Java ME三大平台. 各应用平台的基础:Java S ...

  4. HDU2222 (AC自动机)

    AC自动机模板题. 被卡内存了 死活A不掉.. AC自动机参考教程: http://www.cppblog.com/menjitianya/archive/2014/07/10/207604.html ...

  5. NBU 2475 Survivors(RMQ线段树)

    NBU 2475Survivors 题目链接:http://acm.nbu.edu.cn/v1.0/Problems/Problem.php?pid=2475 题意:给定n个人,每个人有strengt ...

  6. Rest中获取制定操作的UriTemplate

    UriTemplate uri = WebOperationContext.Current.GetUriTemplate("DownloadFile");

  7. Smart210---学习记录 竞态与并发

    竞态与并发 自旋锁 若一个进程要访问临界资源,测试锁空闲,则进程获得这个锁并继续执行:若测试结果表明锁扔被 占用,进程将在一个小的循环内重复“测试并设置”操作,进行所谓的“自旋”,等待自旋锁持有者释 ...

  8. android studio 中怎么使用adb无线调试

    之前再eclipse下进行安卓开发,但谷歌却抛弃了eclipse而力挺android studio开发环境,没办法只好跟着走. 在eclipse下开发时调试用adb无线方式特别方便,但是在androi ...

  9. 扩展KVM镜像的虚拟磁盘大小

    当我们需要扩展模板镜像的虚拟磁盘大小时,比如原来的虚拟磁盘大小为20G,现在我们想将其扩展到30G,那么我们可以根据如下步骤来操作. 整个流程可以分为三个阶段: 1.扩展KVM镜像磁盘文件大小到30G ...

  10. Think Python - Chapter 18 - Inheritance

    In this chapter I present classes to represent playing cards, decks of cards, and poker hands.If you ...