• 3.2【OSPF】NP十二班第二天-OSPF邻居状态机及邻居建立1


    OSPF邻居状态机及邻居建立

    控制层面:RIB表
    转发层面:FIB表
     
    Hello报文的作用:发现建立和维护邻居关系
    \Hello报文里的字段
     
    option选项在哪些报文中存在?
    1、Hello    2、DBD   3、LSA

    OPtion选项:

    DN比特位
    DN比特位(宕比特位)置位如何防环
    运营商和客户路由重分发造成环路
    把OSPF重分发进BGP很可能造成环路
     
    通过DN位解决,如果DN位置位了,这条路由本地是不能做选路的,同时也不会重分发进其他的协议
     
    DC位
    按虚电路:需要的时候才建立虚电路
    NP位
    两个比特位:N-NSSA(Hello报文置位,特殊区域类型)      P-7->5(LSA置位,LSA的转换)
    E比特位
    E置位,接收和转发外部LSA,可以接收外部路由,Stub区域不能接收和转发外部路由
    *************************************************************************
    OSPF支持5种网络类型?
    1、RFC(IETF)定义的(RFC-协议的开发标准):
    点到点、点到多点、广播、非广播、虚电路广播
    2、思科私有:cisco的私有网络类型主要是对NBMA做的扩展:点到点、广播、点到多点非广播
     
    如何通过Hello报文建立邻居关系?
    1.进程下宣告network
    (1)前缀12.1.1.0  通配符
    12.1.1.0  0.0.0.255  //这种方式去通告有可能把其他接口也宣告进去
    0表示匹配,1表示忽略
    精确宣告:12.1.1.0   0.0.0.0 或 直接在接口下去宣告
    (2)12.1.1.0   0.0.0.3  把掩码为30的都宣告进OSPF(00000011)
    2.接口下宣告
    当把接口宣告进OSPF,只要被宣告的 接口才会定期发送hello报文,通过组播方式发送,目标地址:224.0.0.5 (ALLSPFRouters),所有开启了SPF算法的路由器,只能传1跳;
     
     
    在配OSPF以后,会 自动生成一个RouterID,唯一 标识一台设备
    OSPF中如何选举Router-id?
    可以手工指定也可以自动选举,手工指定优先于自动选举。
    Router-id自动选举步骤
    1、优先设备上罗辑接口IP地址大的
    2、如果没有罗辑接口的情况下,优选活动的物理接口IP地址大的
    3、在一台设备上配置多个OSPFj进程,应该配置不同router-id,思科优化,华为是不同的进程用相同router-id,华为会出现冲突
     
    在一台设备上配多个OSPF进程,进程之间可以做路由互通吗?
    不可以,多个进程之间是独立的,如果想要互通,也要做重分发
     
    ************************************************************************

    OSPF邻接建立

    首先要建立邻居关系,然后选择性地建立邻接关系
    在不同的网络类型下面,hello报文发送的间隔是不一样的
     
    同一个接口可以宣告进不同的OSPF进程?
    不行:同一个接口只能宣告进一个OSPF进程
     
    同一个接口可以宣告进同一个OSPF的不同区域?
    不行
     
    所以,一个接口只能宣告进一个OSPF进程的一个区域
     
    MA(广播网)
    接口宣告进OSPF,会自动判断这个接口属于哪种网络类型。
     
    OSPF是如何识别这个接口是属于哪个网络类型的?
    根据接口的二层封装:
    如果接口的封装是ARPA:以太网-broadcast类型
    如果接口是串口,并且封装是HDLC/点到点:点到点的网络类型
    如果是帧中继的封装:NBNA(NON_BROADCAST)非广播
     
    通过串口,都是点到点(看接口的二层封装)
     
     
     
     
    MA网络的邻居建立过程
    MA网络就是Multiaccess多路访问网络,在同一网段里面,路由器和交换机相连,OSPF中需要选出DR和BDR,来减小LSA泛滥
    3次握手建立可靠的邻居关系:
    1.两边互发hello报文
    2.验证通过,2在active neighbor里面包含对端的router-id
    3.后续1发给2,也会包含2的router-id
     
    建立可靠的邻居关系的 3种状态:在hello报文里包含对端的router-id
     1.Down:Down状态接口开始发送hello报文,1发hello报文给2,2需要将hello报文中 的参数和2本地参数做比对,匹配成功,本地开始接收报文,2会将down状态改为Init状态;同理,1也会从down变为Init
     
    2.Init:需要让邻居知道你已经收到他的hello报文了,后续2回复hello报文,报文中会包含R1的router-id,1看到2回复的报文中包含有自己的router ID,1会将Init状态变为2way状态;说明1、2建立了单向连接
     
    3.2WAY状态:1变为2WAY状态,会给2回,报文中也会包含2的router-id,说明1、2已经建立了双向连接
     
    在R2上通过show ip ospf neighbor看R1的状态
    2WAY是建立邻居的标志;说明已经建立了邻居关系,但还不是邻接关系
     
    ************************************************************************
    OSPF的8种邻居状态机:(本设备维护邻居的当前状态)
    1、DOWN   8、 Attempt(NBMA)      2、Init 
    3、2WAY      4、Exstart                  5、Exchange 
    6、loading   7、FULL
    #show ip ospf neighbor
     
    ==============================================
    OSPF第二天课堂笔记
     
    option选项在哪里报文中存在? (DNDCNPE)
    1、hello 2、DBD 3、LSA
     
    OSPF支持的网络类型:
     
    1、RFC(IETF)定义的:点到点、点到多点、广播、非广播、虚链路
    2、Cisco私有:cisco的私有网络类型主要是对NBMA做的扩展:点到点、广播、点到多点非广播
     
    Router-id的主要作用是唯一标识一台设备。
     
    OSPF中如何选举Router-id,可以手工指定也可以自动选举,手工指定优先于自动选举。
     
    Router-id自动选举步骤
    1、优先设备上逻辑接口IP地址大的
    2、如果没有逻辑接口的情况下,优选活动的物理接口IP地址大的。
     
    Cisco中同一台设备上配置多个OSPF进程,每个进程需要使用独立的Router-id,不能公用(如果同一设备多进程使用同一个Router-id会对5类LSA的通告造成影响)。
     
    注:一个接口只能宣告进一个OSPF进程的一个区域。
     
     
    R1#show ip os inter fast 0/0  \查看宣告进OSPF的接口信息
    FastEthernet0/0 is up, line protocol is up
      Internet Address 12.1.1.1/24, Area 0
      Process ID 1, Router ID 12.1.1.1, Network Type BROADCAST, Cost: 1
      Enabled by interface config, including secondary ip addresses
      Transmit Delay is 1 sec, State WAITING, Priority 1
      No designated router on this network
      No backup designated router on this network
      Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
        oob-resync timeout 40
        Hello due in 00:00:05
        Wait time before Designated router selection 00:00:35
      Supports Link-local Signaling (LLS)
      Index 1/1, flood queue length 0
      Next 0x0(0)/0x0(0)
      Last flood scan length is 0, maximum is 0
      Last flood scan time is 0 msec, maximum is 0 msec
      Neighbor Count is 0, Adjacent neighbor count is 0
      Suppress hello for 0 neighbor(s)
    R1#
     
     
    OSPF的邻居状态机:(本设备维护邻居的当前状态)
     
    1、DOWN 2、Attempt(NBMA) 3、Init 4、2WAY 5、Exstart 6、Exchange 7、loading 8、FULL
     
    1、DOWN:初始情况下维护邻居的状态为DOWN,在DOWN状态下开始发送HELLO报文,广播网络类型中hello报文是每隔10S发送一次,而Dead interval是hello interval的4倍,也就是40S,用于维护邻居关系,如果在dead interval时间范围内都没有收到邻居发送的hello报文,就说明邻居故障需要断开邻居关系。
     
    2、Attempt(NBMA)
     
    3、Init:收到邻居发送的hello报文并且检测通过,本地维护邻居的状态从DOWN变为Init,如果处于Init状态,说明已经和邻居建立了单向连接。
     
    4、2WAY:在邻居发送的hello报文中包含自己的router-id,说明对方已经收到并确认了本端发送的hello报文,邻居状态需要从Init变为2WAY。如果处于2WAY状态,说明和邻居建立了双向连接。2WAY状态标识邻居建立完成。
     
     
    有哪些因素会影响OSPF的邻居建立?
    1、hello和dead时间不一致 (修改hello时间dead时间会自动改变,修改dead时间hello时间不变)
    2、认证类型和认证数据不一致 (认证类型=0表示不认证,为1表示明文认证,为2表示密文认证)
      (1):配置接口认证后,从该接口发送的OSPF报文中会携带认证
      (2):配置区域认证后,所有属于该区域的接口在发送OSPF报文中都会携带认证
        注:如果同时配置了接口认证和区域认证,那么接口认证优先于区域认证
     
     
    接口认证配置
      (1)明文配置 
    interface FastEthernet0/0
    ip address 12.1.1.1 255.255.255.0
    ip ospf authentication
    ip ospf authentication-key cisco  \在接口下配置明文认证
    ip ospf 1 area 0
    duplex half
     
      (2)密文认证 (MD5认证中的序列号作用是抗重放攻击,同样的序列号报文只执行一次)
    interface FastEthernet0/0
    ip address 12.1.1.1 255.255.255.0
    ip ospf authentication message-digest  \接口下开启MD5认证
    ip ospf authentication-key cisco
    ip ospf 1 area 0
    duplex half
    end
     
    区域认证配置
     
    (1)明文配置
     
    router ospf 1
    log-adjacency-changes
    area 0 authentication\首先需要在区域下开启认证功能
     
    •R1(config)#interface serial 0
      ip ospf authentication-key cisco \区域开启认证后还需要在接口下配置认证密码
     
    (2)密文配置
     
    router ospf 1
    log-adjacency-changes
    area 0 authentication message-digest \首先需要在区域下开启认证功能
     
    •R1(config)#interface serial 0
    •R1(config-if)#ip ospf message-digest-key 1 md5 CISCO
     
    3、Router-id冲突
    R1(config)#router ospf 1
    R1(config-router)#router-id ? \进程下手工修改router-id(建议使用手工指定)
      A.B.C.D  OSPF router-id in IP address format
    Reload or use "clear ip ospf process" command, for this to take effect
    R1(config-router)#
    4、区域ID不一致
    5、网络类型不一致 ? (hello和dead不一致) \如果一边是广播网,另一边是点到点,可以正常建立邻居关系,但是无法正常选路。
     
      网络类型    hello interval    dead interval
      广播            10S                40S
      非广播          30S                120S
      点到点          10S                40S
      点到多点        30S                120S
      虚链路      cisco 无              cisco 无
     
    R2(config-if)#ip ospf network ?  \修改接口网络类型
      broadcast            Specify OSPF broadcast multi-access network
      non-broadcast        Specify OSPF NBMA network
      point-to-multipoint  Specify OSPF point-to-multipoint network
      point-to-point      Specify OSPF point-to-point network
     
    6、掩码不一致 ?
    7、接口地址不在同一网段 ?
    8、区域类型不一致
    9、ACL
    10、PASSIVE接口(OSPF中的passive接口不收发hello报文)
     
    R2#show ip os neighbor  \查看邻居状态
     
    Neighbor ID    Pri  State          Dead Time  Address        Interface
    12.1.1.1          1  FULL/DR        00:00:38    12.1.1.1        FastEthernet0/0
                        (邻居状态机/接口状态机)
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     

    <wiz_tmp_tag id="wiz-table-range-border" contenteditable="false" style="display: none;">





    附件列表

  • 相关阅读:
    Spring Cloud Sleuth服务跟踪
    Spring Cloud Zuul(服务网关)
    百度地图,定位,添加图标
    kmp算法
    将16进制unsigned char数组转换成整数
    导入多个手机的数据库数据到本地数据库
    VLC添加水印
    QAbstractItemView区分单双击
    QWebView崩溃的问题
    Windows平台dump文件的产生,调试;工程配置pdb文件怎么生成
  • 原文地址:https://www.cnblogs.com/xuxaut-558/p/11221888.html
Copyright © 2020-2023  润新知