HCIEOSPF学习详解文档格式.docx
《HCIEOSPF学习详解文档格式.docx》由会员分享,可在线阅读,更多相关《HCIEOSPF学习详解文档格式.docx(18页珍藏版)》请在冰豆网上搜索。
(一)----邻居状态概述
OSPF共有8种状态机,分别是:
Down、Attempt、Init、2-way、Exstart、ExchLoading、Full。
∙Down状态:
刚刚开始启用ospf邻居会话/邻居会话超时,初始阶段发起新一轮hello包
∙attempt状态:
仅在NBMA网络在NBMA网络中邻居是手动指定的,在该状态下,路由器使用HelloInterval取代PollInterval来发送Hello包
∙init状态:
收到链路对端设备的hello包且hello信息满足建立邻居的“4+1”条件,变为init状态发送hello包(带有邻居的R-ID)
∙two-way状态:
从处于init状态邻居收到带有自己路由器的ID的hello立刻从init状态上升2-way状态完成邻居建立进入DRBDR竞选流程。
∙Exstart状态:
完成DR和BDR选举后,发送DD报文协商LSA更新阶段的主从关系和序列号MTU
∙Exchange状态:
主从关系协商完毕主设备开始发送带有LSDB的简略信息的DD报文LSR请求自身设备没有的LSA
∙Loading状态:
载入状态回应请求的LSA(LSALSULSACK交互发送)最后一个LSACK发完上升为full状态
∙Full状态:
向对端发送了最后一个lsack及收到对端的最后一个lsack后本地设备状态切换为full状态LSA同步更新完成,完成OSPF邻居的最终状态邻节状态(Full)
(二)OSPF状态分析
(1)one-way是什么状态,如何进入two-way当收到一个HELLO包中,没有包含自己
的routerid,这时为one-way,当收到的HELLO包中包含自己的routerid则为two-way
(2)DR的选举过程及时间:
首先所有的路由器都会成为DRothers,先选举BDR,
BDR发现没有DR,自动成为DR,DRothers发现没有BDR,再选举出来一个BDR。
DR的选举时间等于Deadtime,只有在广播网络中才会选举DR。
(3)firstDD与DD的区别:
首先firstDD也称为空DD,作用是选举出主从,并且统一一个序列号,保证数据库同步过程的有序可靠。
(4)如何选举主从,选举主从的作用:
选择routerid大的为主,接下来交互的DD报文统一序列号,保证同步数据库同步的有序与可靠。
(三)OSPF状态停留解析
1----------OSPF邻居状态停留在int状态?
int状态是本端收到一个符合邻居条件(满足4+1)的hello包后会将其在本端设置为int状态;
如果本端对端不发送带有本设备ID的hello包,会一直停留在int状态,收到对方hello包带有本端ID会将邻居状态上升到2-way
2--------------OSPF邻居状态停留在2-way状态:
在MA(广播网,就是咱们的以太网中)每一个网段链路上只有DR和BDR和其他成员会建立邻接状态(FULL);
其他OSPF设备只建立2-way在OSPF设备中,只有处于Full状态的成员之间才会交互LSAAR和BDR的选举依靠OSPF设备的接口优先级决定,默认为1,最大255,为0表示本设备不参与DR及BDR的选举。
3--------------OSPF邻居状态停留在exstart状态
(1)状态解析:
OSPF邻居之间在交互LSA之前需要通过交互DD报文协商交换LSA这期间的主从关系,另外还需要协商MTU值如果MTU值协商失败(两端接口MTU不一致)就会使得OSPF状态停留在exstart状态
-GigabitEthernet0/0/0]mtu1400--------------------------------修改此接口的IPMTU为1500字节
[AR-1-GigabitEthernet0/0/0]ospfmtu-enable------------------------启用此接口下OSPF对MTU的参考
[AR-2-GigabitEthernet0/0/0]ospfmtu-enable-----------------------启用接口OSPF的MTU的参考(按照接口MTU值走)[AR-2-GigabitEthernet0/0/0]quit注意:
华为设备对OSPF的DD报文中参考值为0,意为忽略DD报文协商阶段的MTU值,无论多端设备的DD报文中携带多少都可以协商成功。
二-----OSPF报文概述
(1)---OSPF5种数据包的类型和作用描述
1.hello包用来发现邻居建立邻居维持邻居(缺省下10秒一发,4倍hello超时)
1.DD(数据链路描述包):
协商MTU值协商主从关系描述LSDB简略信息(重传时间5s)
DBD分为firstDBD和DBD
<
1>
firstDBD不携带LSA头部信息。
通过firstDBD确认主从关系。
主的作用只是为了控制序列号的同步。
Router-ID高的将成为主。
2>
DBD只携带LSA的头部信息,没有携带LSA的具体信息。
承载完整LSA是LSAUpdate包。
1.LSR(链路状态请求包):
向邻居请求本设备缺省的LSA(重传时间5S)
是不携带LSA头部的,只通过(通告ID,LSA类型,linkstate-ID)来请求具体的条目
1.LSU链路状态更新包:
用于回应链路状态请求包LSR,而发送的更新包
含有真正LSA完整信息的,用来回应LSRequest。
5.LSAck(链路状态确认包):
本路由器回应邻居确切收到我的LSU链路状态更新包
三-----影响OSPF邻接关系建立的因素(10条)
(1)Route-ID(Route-ID冲突导致的问题)
在同一区域内:
R1和R2及R2和R3都可以正常建立邻居,同步数据库的时候就会出现问题,R2的lsdb中,adv为1.1.1.1的lsa(LSA1和LSA2)只有一份,路由计算会出现问题。
假设R1宣告(network)一条路由10.10.10.0/24,R1会把这条LSA(adv=1.1.1.1,type=1LSID=1.1.1.1,seq=80000001)发送给R2,R2收到后会发给他的邻居R3,R3收到发现通告者是1.1.1.1,但是自己又没有这个网段,于是会给R3发送一个自己的LSA1(age=1s,seq=80000002),R2收到后会与之前adv=1.1.1.1的LSA1进行比较,选择这条seq更大的LSA1,然后也会转发给R1,R1收到后发现自己有这个网段,又会发送一条新的LSA1(seq=80000003),会一直出现这样重复的情况,而导致路由动荡。
假设R1引入一条路由10.10.10.0/24,R1会把这条LSA(adv=1.1.1.1,type=5,LSID=1.1.1.1,seq=80000001)发送给R2,R2收到后会发给他的邻居R3,R3收到发现通告
者是1.1.1.1,但是自己又没有这个网段,于是会给R2发送一个(age=3600s,seq=80000001)的LSA5,R2收到后,会与之前收到的LSA5进行比较,因为seq和checksum与之前的一样,所以会优选age=3600s的,然后也会转发给R1,R1收到后发现自己有这个网段,
又会发送一条新的LSA5(seq=80000002),会一直出现这样重复的情况,而导致路由动荡。
实验现象:
R2有时候有路由,有时候没路由,在一段时间后,有一台会自己修改router-id。
在不同区域;
邻居关系正常,区域内及区域间路由能学到进路由表。
如果R1和R3不引入外部路由的话,是不会出现问题的。
因为ospf在区域间使用LSA3,LSA3是由区域的ABR根据LSA1、LSA2产生的,adv是ABR的router-id,区域间路由只是被当成叶子挂在ABR上,本区域内的spt树上不会出现在有相同router-id的节点,也就不会出现问题。
但是如果在相同router-id的设备上做引入的时候就会出现问题了,因为asbr的router-id是需要被ospf域内的所有路由器所知道的,如果发现asbr的router-id与本设备的router-id一样时,会出现问题
分析:
假设R1引入一条路由10.10.10.0/24,R1会把这条LSA(adv=1.1.1.1,type=5,LSID=1.1.1.1,seq=80000001)发送给R2,R2收到后会发给他的邻居R3,R3收到发现通告者是1.1.1.1,但是自己又没有这个网段,于是会给R2发送一个(age=3600s,seq=80000001)的LSA5,R2收到后,会与之前收到的LSA5进行比较,因为seq和checksum与之前的一样,所以会优选age=3600s的,然后也会转发给R1,R1收到后发现自己有这个网段,又会发送一条新的LSA5(seq=80000002),会一直出现这样重复的情况,而导致路由动荡。
(2)接口区域ID:
区域ID包含在ospf头部,双方不一致时无法建立邻居
(3)认证:
认证类型分为不认证(00),明文认证(01)和MD5认证(02),OSPF的认证放在OSPF头中,所以OSPF一边接口认证,一边区域认证可以认证成功。
(4)MA网络掩码(为什么p2p中掩码可以不一致):
MA网路中掩码必须一致,因为MA网络中所有路由器共用一个网段,只有一个2Lsa的Network来描述当前的网络拓扑和网络号,所以当掩码不一致时,无法通过一个2LSA描述不同的掩码。
P2P网络中掩码之所以可以不一致是因为P2P中有1LSA的stub类型来描述每一个网络的掩码信息,并且在PPP链路中NCP阶段,两台路由器会互推自己的IP地址,并且以32位主机路由的方式加入自己的路由表,所以P2P网络中建立邻居不需要掩码一致。
(5)MA网络中优先级不能为零,DR选举不成功。
(6)区域类型(option字段中的E位与N位):
(7)hello-dead间隔(区别网络类型)
(8)MTU(默认不检查,不一致时会停留在哪种状态):
如果开启了MTU检查,如果双方MTU不一致,则小的一方停留在Exstart状态,另一方停留在Exchange阶段。
(9)网络类型
(四种,当两边不一致是否一定建立不了邻居,如果能建立会不会有问题,哪种网络类型发送单播,哪种发送组播)
答:
双方网络类型不一致,不能建立FULL的邻接关系,但如果修改hello,dead时间,可以建立full的邻居关