zoukankan      html  css  js  c++  java
  • 数通HCIP-ospf知识点


    前言

    内容均属本人整理创作,如有遗漏或错误,欢迎评论指出!
    更多资源请参考我的【GitHub

    OSPF

    一、ospf基础

    1、ospf(open shortest path first)

    • 开放式最短路径
    • 路由信息传递与路由计算分离。
    • 基于SPF算法。 域内防环
    • 以“累计链路开销”作为选路参考值

    2、ospf工作过程

    • 邻居建立
    • 同步链路状态数据库
    • 计算最优路由

    3、ospf头部报文

    • Version :对于当前所使用的OSPFv2,该字段的值为2。
    • Type:OSPF报文类型。
    • Packet length:表示整个OSPF报文的长度,单位是字节。
    • Router ID:表示生成此报文的路由器的Router ID。
    • Area ID:表示此报文需要被通告到的区域。
    • Checksum:校验字段,其校验的范围是整个OSPF报文,包括OSPF报文头部。
    • Auth Type:为0时表示不认证;为1时表示简单的明文密码认证;为2时表示加密(MD5)认证。
    • Authentication:认证所需的信息。该字段的内容随AuType的值不同而不同。

    4、ospf报文类型

    • hello

      • 作用

        • 发现和维护邻居关系
        • 选举DR和BDR
        • 邻居发现:自动发现邻居路由器。
        • 邻居建立:完成Hello报文中的参数协商,建立邻居关系。
        • 邻居保持:通过Keepalive机制,检测邻居运行状态
      • 周期

        • P2P bradcast 10s
        • NBMA P2MP 30S
      • 关键字段

        • source ospf route(route-id)
        • area ID
        • auth type
        • network mask
    • DD

      • 1、协商主从(空dd报文) 2、发送lsa头部摘要
    • LSR

      • 作用请求完整的lsa
    • LSU

      • 用于承载lsa
    • LSACK

      • 收到lsu后进行确认

    5、ospff的LSDB同步

    • ExStart:邻居状态变成此状态以后,路由器开始向邻居发送DD报文。Master/Slave关系是在此状态下形成的,初始DD序列号也是在此状态下确定的。在此状态下发送的DD报文不包含链路状态描述。
    • Exchange:在此状态下,路由器与邻居之间相互发送包含链路状态信息摘要的DD报文。
    • Loading:在此状态下,路由器与邻居之间相互发送LSR报文、LSU报文、LSAck报文。
    • Full:LSDB同步过程完成,路由器与邻居之间形成了完全的邻接关系。

    6、状态机

    • down

      • 未收到hello报文
    • attempt

      • 此状态只在NBMA网络上存在,表示没有收到邻居的任何信息,但是已经周期性的向邻居发送报文,发送间隔为HelloInterval
    • lnit

      • 收到hello报文,但邻居字段中未看到自己的route-ID
    • 2-way

      • 此事件表示路由器发现与邻居的双向通信已经开始
    • exstart

      • 交互 DD空报文
    • echange

      • 交互DD报文(按DD序列号)
    • loading

      • 发送LSR回复LSU
    • full

      • 全毗邻

    7、DRBDR选举

    • 为减少MA网络中的LSA泛洪及邻接关系数量,OSPF会在每一个MA网络中选举一个指定路由器 DR(Designated Router)和一个备用指定路由器BDR(Backup Designated Router)。降低协议流量

    • DR–以大为优

      • ma网络中只有一台具有选举DR的资格,其他路由器和DR路由建立邻接关系

      • 1、优先级

        • 默认为1。0表示不参与。优先级大的为DR

        2、route-id

        • 大的为DR
    • BDR

      • 备份DR

    8、network-type

    - `p2p`
    
    - 组播形式发送协议报文
    - 周期10s  无需选举DR  BDR
    - 和邻居建立邻接关系
    
    • BMA

      • 组播形式发送hello LSU LSACK报文

      • 单播形式发送DD LSR报文

      • 周期10s 需要选举DR BDR

      • 邻接关系

        • DR与BDR 、DRother建立邻接关系
        • BDR与DR 、DRother建立邻接关系
        • DRother之间只建立邻居关系
    • NBMA

      • 需要选举DR BDR 周期30s

      • 邻接关系

        • DR与BDR 、DRother建立邻接关系
        • BDR与DR 、DRother建立邻接关系
        • DRother之间只建立邻居关系
    • P2MP

      • 无需选举DR BDR 周期10s
      • 和邻居建立邻接关系

    9、链路状态

    • 链路的类型;
    • 接口IP地址及掩码;
    • 链路上所连接的邻居路由器;
    • 链路的带宽(开销)。

    10、区域

    • 骨干区域:area 0
    • 非骨干区域区域:area 1-x

    二、ospf域内路由

    1、route-LSA头部

    • Type:LSA类型,Router-LSA是一类LSA。
    • LS id:链路状态ID。
    • Adv rtr:产生此Router-LSA的路由器Router ID。

    2、link-type

    • stubnet

      描述直连的网络号

      • ink id:直连的网络号
      • data: 子网掩码
      • metric: 自身到改直连网络的开销
    • p2p

      描述p2p、p2mp链路上的邻居

      • link id:邻居的router id
      • data: 与邻居相连的接口
      • metric: 自身到该邻居的开销
    • transent

      描述broadcast、NBMA链路上的邻居

      • link id:伪节点的router id,借用DR接口的地址充当
      • data:自身和伪节点相连的接口地址
      • metric:自身到伪节点的开销
    • virtual

      描述v-link上的邻居

      • link id: v-link上邻居的router id
      • data: 与邻居相连的接口IP metric: 到邻居的开销

    3、router-LSA

    • Type:链接类型(并非OSPF定义的四种网络类型)

      • Point-to-Point:描述一个从本路由器到邻居路由器之间的点到点链接,属于拓扑信息。
      • TransNet:描述一个从本路由器到一个Transit网段(例如MA网段或者NBMA网段)的链接,属于拓扑信息。
      • StubNet:描述一个从本路由器到一个Stub网段(例如Loopback接口)的链接,属于路由信息。
    • Link ID:此链接的对端标识,不同链接类型的Link ID表示的意义也不同。

    • Data:用于描述此链接的附加信息,不同的链接类型所描述的信息也不同。

    • Metric:描述此链接的开销

        - ### 4、network-LAS
      
        	- `Type`:LSA类型,Network-LSA是二类LSA。
        	- `LS id`:DR的接口IP地址。
        	- `Adv rtr`:产生此Network-LSA的路由器Router ID,即DR的Router ID。
        	- `Net mask`:该网段的网络掩码。
      

    5、LSA

    • 1 oute LSA:路由信息

    • 2 etwork LSA: 链路路由信息

    • 3 etwork summary LSA:区域间路由信息

    • 4ASBR summary LSA:连接外部信息

    • 5AS external LSA:外部路由信息

    • 7NSSA LSA:特殊区域引入的外部路由

    6、SPF算法

    • 在一类LSA和二类LSA中,包括了拓扑信息和路由信息。

    • OSPF将依据SPF算法和各类LSA进行最短路径树的计算

      • Phase 1:依据一类LSA中的Point to Point,TransNet以及二类LSA,构建SPF树。
      • Phase 2:依据一类LSA中的Stub以及二类LSA,计算最优路由。

    三、域间路由

    1、区域间路由汇总

    • 基于进程
    • 产生下一条null接口
    • 所有明细路由消失后才消失
    • cost值取明细路由中最小的

    2、Network-Summary-LSA

    • Ls id:目的网段地址。
    • Adv rtr:ABR的Router ID。
    • Net mask:目的网段的网络掩码。
    • Metric:ABR到达目的网段的开销值。

    3、ABR计算区域间路由

    • 根据三类LSA中的Adv rtr字段,判断出ABR。
    • 根据Ls id、Net mask、Metric字段获得ABR到达目的网络号/掩码、开销。
    • 如果多个ABR产生了指向相同目的网段的三类LSA,则根节点将根据本路由器到达目的网段的累计开销进行比较,最终生成最小开销路由。如果根节点到达目的网段的累计开销值相同,则产生等价负载的路由。

    4 防环机制

    • OSPF划分了骨干区域和非骨干区域,所有非骨干区域均直接和骨干区域相连且骨干区域只有一个,非骨干区域之间的通信都要通过骨干区域中转,骨干区域ID固定为0。
    • OSPF规定从骨干区域传来的三类LSA不再传回骨干区域

    5 虚连接

    • 骨干区域必须是连续的,但是并不要求物理上连续,可以使用虚连接使骨干区域逻辑上连续。
    • 虚连接可以在任意两个区域边界路由器上建立,但是要求这两个区域边界路由器都有端口连接到一个相同的非骨干区域
      • 命令
    ospf  x
    vlink-peer  xxxx  // 逻辑接口的ip地址
    

    四、ospf外部路由

    1、AS-external-LSA

    • 将被泛洪到所有的ospf区域

    • 包含信息

      • Ls id:目的网段地址。
      • Adv rtr:ASBR的Router ID。
      • Net mask:目的网段的网络掩码。
      • Metric:ASBR到达目的网络的开销值,默认值为1。
      • Tag:外部路由信息可以携带一个Tag标签,用于传递该路由的附加信息,通常用于路由策略,默认值为1。

    2、ASBR-Summary-LSA

    • Ls id:该ASBR的Router ID。
    • A rtr:该产生此四类LSA的ABR的Router ID。
    • Metric:从该ABR到达此ASBR的OSPF开销值。

    3、引入外部路由

    • 命令
    import-route    xxxx   type  x x
     display  ospf  lsdb 
     display  ospf  lsdb  ase   self-originate
    

    4、外部路由的计算

    • 度量值

      • metric-1 A+B

        • external type-1
      • metric-1 A

        • external type-2

    5、次优路由

    • forwarding-address的值应当被设为该路由表中该路的ip address
    • OSPF通过设置Forwarding Address来解决这个问题

    五、ospf特殊区域及其他特性

    1、特殊区域

    • stub area

      • 末梢区域

        • 阻挡 type-4,type-5 LSA 进入,允许type-3 LSA进入
      • 配置注意事项

        • 骨干区域不能被配置为Stub区域。
        • 如果要将一个区域配置成Stub区域,则该区域中的所有路由器必须都要配置成Stub路由器。
        • Stub区域内不能存在ASBR,自治系统外部路由不能在本区域内传播。
        • 虚连接不能穿越Stub区域建立。
    • totally stub

      • 完全未末梢区域

        • 阻挡type-3 type-4 type-5LSA进入,只允许缺省路由的type-3LSA进入
      • Totally Stub区域访问其他区域及自制系统外部是通过默认路由实现的。

      • 自制系统外部、其他OSPF区域的网络发生变化,Totally Stub区域内的路由器是不直接受影响的。

    • NSSA

      • 非完全末梢区域

        • 阻挡type-4 type-5 LSA进入
      • 细节

        • -no-summary之后。arbitrary产生几类的默认路由?

          • 3类。ospf形式的默认路由只能以3、5、7类存在
        • ABR同时特使ASBR的设备引入外部路由,np不置位,因为不需要吧7类再转成5类,因为ASBR本身就产生5类LSA.
          nssa 命令细节

     nssa ?
      default-route-advertise      Originate Type 7 default into NSSA area //在ASBR上配置产生缺省路由的type-7LSA到NSSA区域的
      flush-waiting-timer          Flush waiting timer
      no-import-route              No redistribution into this NSSA area //	ABR如果做了外部路由,由于NSSA内部路由可以通过外部路由
      no-summary                   Do not send summary LSA into NSSA
      set-n-bit                    Set n bit in DD packet in NSSA area
      suppress-forwarding-address  Suppress forwarding address for Translated Type-5
                                   LSAs
      translator-always            Set NSSA translator role always
      translator-interval          Configure NSSA translator interval value
      zero-address-forwarding      Allow zero forwarding address for Type-7 LSAs
      <cr>                         Please press ENTER to execute command 
    
    • totally NSSA

      • 非完全末梢区域

        • 外部路由引入用type-7描述,NSSA的abr在注入area 0时把type-7转换为type-5
        • 不允许三类LSA在本区域内泛洪
        • BR上需要追加no-summary参数。
        • P-BIT位置并且FA(forarding address)不为0的type-7才能转换成type-5
    • NSSA LSA

      • NSSA区域的ABR收到七类LSA时,会有选择地将其转换为五类LSA,以便将外部路由信息通告到OSPF网络的其它区域。
      • NSSA区域有多个ABR时,进行7类LSA与5类LSA转换的是Router ID最大的ABR。

    2、其他特性

    • 区域间路由汇总和外部路由汇总

      • 多条连续的IP前缀汇总成一条路由前缀
      • 命令
    ospf  x
    asbr-summary  x.x.x.x  x.x.x.x
    
    • ospf更新机制

      • 定时更新

        • LSA每1800s更新一次,3600s失效。
      • 触发更新

        • 当链路状态发生变化之后,立即发送链路状态更新。
    • ospf认证机制

      • 方式

        • 接口认证方式。

          • 优先选择
        • 区域认证方式。

      • 认证模式

        • null(不认证)
        • simple(明文)
        • md5(密文)
        • HMAC-MD5

    往期文章
    最最最能测出你数通hcia基础扎不扎实的实验
    stp始终学不会?这份思维导图,猛男必点,猛女必看!
    华为交换机中hybrid、access、trunk的区别

    本文作者: 肉肉
    本文链接:https://blog.csdn.net/Arouroua/article/details/105989754
    版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明出处!

  • 相关阅读:
    Android通讯录查询篇ContactsContract.Data
    startActivityForResult 用法
    Android 开发 – 使用菜单
    屏幕旋转 转
    动态更改屏幕方向LANDSCAPE与PORTRAIT 转
    .使用ContactsContract API
    主题:android之XmlResourceParser类使用实例 转
    Android使用AttributeSet自定义控件的方法 转
    EmbossMaskFilter BlurMaskFilter
    字典转换成实体列表
  • 原文地址:https://www.cnblogs.com/linwenye/p/12866553.html
Copyright © 2011-2022 走看看