继吉 发表于 2019-1-27 12:30:44

OSPF(Open Shortest Path First开放式最短路径优先)

  **协议**
  OSPF(Open Shortest Path First开放式最短路径优先)是一个内部网关协议(Interior Gateway Protocol,简称IGP),用于在单一自治系统(autonomous system,AS)内决策路由。是对链路状态路由协议的一种实现,隶属内部网关协议(IGP),故运作于自治系统内部
  **AD值**
  思科OSPF的协议管理距离是110
  华为OSPF的协议管理距离是150

  **链路状态**
  链路式路由器接口的另一种说法,因此OSPF也称为接口状态路由协议;OSPF通过路由器之间通告网络接口的状态来建立链路状态数据库,生成最短路径树,每个OSPF路由器使用这些最短路径构造路由表
  **原理**
  #建立邻接表
  #同步数据库
  #计算路由表
  **区域分类**
  骨干:0区域
  非骨干:不是0区域的
  **Hello协议的目的**
1.用于发现邻居
    2.在成为邻居之前,必须对Hello包里的一些参数协商成功
    3.Hello包在邻居之间扮演着keepalive的角色
    4.允许邻居之间的双向通信
       5.它在NBMA(Nonbroadcast Multi-access(非广播地址))网络上选举DR和BDR
  **建立邻居影响因素**
  1、RID不能相同;
      router ospf 1
     router-idx.x.x.x
  clear ip ospf process
  2、区域ID必须相同;
  3、认证必须成功(认证类型必须相同,并且密码必须相同)
  4、子网掩码必须相同(特殊情况下)
  5、hello时间必须相同;
            interface fas0/0
           ip ospf hello-interval {value}
  6、dead时间必须相同;
            interface fas0/0
        ip ospf dead-interval {value}
  7、特殊标记位必须相同;
  8、优先级必须不能全为0(特殊情况下)
9、3层MTU必须相同,否则会卡在Exatart状态
      Interface fas0/0
        Ip mtu +num(如1499)
  
  **OSPF状态**
1.Down:此状态还没有与其他路由器交换信息。首先从其ospf接口向外发送hello分组,还并不知道DR(若为广播网络)和任何其他路由器。发送hello分组是,使用组播地址224.0.0.5。
    2.Attempt: 只适于NBMA网络,在NBMA网络中邻居是手动指定的,在该状态下,路由器将使用HelloInterval取代PollInterval来发 送Hello包.
    3.Init:初始化收到了Hello包,但是2-Way通信仍然没有建立起来.
     4.two-way: 双向会话建立,而 RID 彼此出现在对方的邻居列表中。(若为广播网络:例如:以太网。在这个时候应该选举DR,BDR。
     5.ExStart: 信息交换初始状态,在这个状态下,本地路由器和邻居将建立Master/Slave关系,路由器ID大的的成为Master.
     6.Exchange: 信息交换状态:本地路由器和邻居交换一个或多个DBD分组(也叫DDP) 。DBD包含有关LSDB中LSA条目的摘要信息)。
     7.Loading: 信息加载状态:收到DBD后,使用LSACK分组确认已收到DBD.将收到的信息同LSDB中的信息进行比较。如果DBD中有更新的链路状态条目,则想对方发送一个LSR,用于请求新的LSA 。
  
            8.Full: 完全邻接状态,该状态表示双方的数据库完全同步
  
  **DR与BDR的选取原则**
  1.优先级为0的不参与选举
  2.优先级高的路由器为DR
  3.优先级相同时,以router ID 大为DR。router ID 以回环接口中最大ip为准。若无回环接口,以真实接口最大ip为准。
  4.缺省条件下,优先级为1
  **OSPF定义的5种网路类型**
  类型
  2层
Hello与dead
  DR/BDR
  是否主动发包
  broadcast :广播
  (MA , multi-access)
  当2层协议为ethernet时,
  对应的是广播网络类型;
hello是10s;
dead是40s
  需要选举DR/BDR
  端口主动发包,发包方式为组播(224.0.0.5/6)
   non-broadcast :
  非广播。(NBMA)
  
  当2层协议为Frame-relay时,
  对应的是非广播网络类型;
   hello是30s;
dead是120s
  需要选举DR/BDR;
  端口不主动发包,发包方式为单播;
  【OSPF实现单播:neighbor x.x.x.x】
  point-to-point
  点到点(P2P)
  当2层协议为HDLC\PPP时,
  对应的是点到点网络类型;
hello是10s;
dead是40s
  不需要选举DR/BDR;
  端口主动发包,发包方式为组播(224.0.0.5)
  point-to-Multipoint:
  点到多点(p2mp)

hello是30s;
dead是120s;
  不需要选举DR/BDR;
  端口主动发包,发包方式为组播(224.0.0.5)
  
  point-to-Multipoint non-broadcast:
  点到多点(p2mp-NB)

hello是30s;
dead是120s;
  不需要选举DR/BDR;
  端口不主动发包,发包方式为单播
  
  **LSA类型**
  
  1类LSA:router LSA
  任何一个路由器,都会在任何一个区域中产生一个 1类LSA ;
  可以将1类LSA理解为“自我介绍”,用于说明本身有哪些链路进入了该区域,并且是连接着哪些设备,是如何连接的;到对方的距离是多少;
  1类LSA只能在一个区域内部进行传输
  link-id:路由器的RID
  adv:路由器的RID
  传输范围:只能在一个区域内部
  ADV是否变化:不变化
  2类LSA:net Link state
  这种类型的 LSA ,只有在选举DR的网络环境中才会有。
  只有DR才有资格产生 2 类 LSA
  link-id:表示的是 DR 的接口IP地址;
  ADV:DR的 RID ;
  传输范围:一个区域内部
  ADV是否变化:不变化;
     
   // 基于 LSDB 中的1类LSA 或者 1和2类LSA,就可以计算出一个区域内部的路由,叫做 O 的路由;
  3类LSA:summary net link state
  在不同的区域之间传输路由信息;
  这种类型的LSA,仅有 ABR 可以产生。
  3类LSA被ABR产生以后,首先进入到 OSPF 区域0,然后再转发到其他区域。
  ABR:
  1、可以将非0区域中的“域内-O”路由,转变成3类LSA,发送到0区域;

  2、可以将0区域中的“域内-O”路由,转变成3类LSA,发送到非0区域;也可以将0区域中的“域间-OIA”路由,转变成新的3类LSA,发送到其他的非0区域中;
  3、一定不可以将非0区域中的3类LSA转发到0区域;
  link-id:表示的是路由的前缀;
  adv:ABR的RID;
  传输范围:一个区域内部
  ADV是否变化:是;
  4类LSA:summary ASB link state
  专门是为了辅助5类LSA计算路由而生的;
  传递的信息是 ASBR 的 RID ;
  是由与 ASBR在同一个区域的 ABR 产生的;
  传递过程中每经过一个ABR,ADV都会变化一次。
  link-id:表示的是 ASBR的 RID;
  adv:ABR
  传输范围:同一个区域内部;
  ADV是否变化:是的;
  5类LSA:external LSA
  表示的是OSPF的外部路由,没有任何区域概念;
  可以在OSPF网络中畅通无阻。
  哪里有OSPF,哪里就有5类LSA。
  link-id:表示的是外部路由前缀;
  adv:ASBR的 RID ;
  传输范围:没有限制;
  ADV是否变化:否
  




页: [1]
查看完整版本: OSPF(Open Shortest Path First开放式最短路径优先)