做营销型网站的企业,济南网站制作建设,重庆app开发,企业简介ppt范文大全该文针对OSPF进行一个全面的认识。建议了解OSPF的基础后进行本文的一个阅读能较好理解本文。
OSPF基础的内容请查看#xff1a;网络安全之动态路由OSPF基础-CSDN博客
OSPF中更新方式中的触发更新30分钟的链路状态刷新。是因为其算法决定的#xff0c;距离矢量型协议是边算边…该文针对OSPF进行一个全面的认识。建议了解OSPF的基础后进行本文的一个阅读能较好理解本文。
OSPF基础的内容请查看网络安全之动态路由OSPF基础-CSDN博客
OSPF中更新方式中的触发更新30分钟的链路状态刷新。是因为其算法决定的距离矢量型协议是边算边传边传边算的方式好处就是网络结构经常改变的话不管怎么改变都能判断出最新的网络状态。不管触发更新多少次只学习最后学习的一次。OSPF是先传递后运算需要把所有的LSA收集起来再计算无法判断哪个是最新的哪个是旧的链路状态型协议就有一个很大的问题新旧LSA比较为了比较新旧LSAOSPF就有一个直线型序列空间序列号最大的最新但有个问题序列号空间是有限的只有32bit。后面又有一个循环序列空间循环使用序列号但又无法判断新旧故此又有了个循环序列空间直线型序列空间棒棒糖型序列空间棒位直线型序列空间糖为循环序列空间……但都不是永久的是暂时的所以就有了30分钟的链路状态刷新。
OSPF为了适用于较大型网络中就要划分区域划分区域都是为了减少LSA数量和减少LSA的传播区域。也就是OSPF的优化为了提高性能。真正的OSPF单个区域是链路状态型协议要传拓扑信息区域与区域之间就是距离矢量型协议不传拓扑信息不然也会出环。
OSPF是基于接口划分也就是OSPF要工作链路两端的接口必须在一个区域所以也可以说是基于链路划分的。
其角色中骨干路由器、非骨干路由器很好理解ABR区域边界路由器与ASBR自治系统边界路由器更准确的区分方式就是ABR是能够产生3类LSA的路由器ASBR是能够产生5类或7类LSA的路由器。
在实际中设备选择ABR与ASBR设备的性能是最高的。其次是骨干路由器接着才是非骨干路由器。
OSPF邻居状态机制与OSPF的状态数据包 OSPF消息数据包Hello打招呼的 DBD数据库的描述报文 LSR 链路状态请求LSU链路状态更新 LSACK链路状态确认。
OSPF数据包是基于IP封装传递不可靠OSPF没有选择周期更新而是触发更新所以通过确认重传保证可靠性。
Hello包
环境如下 对R1进行抓包发现状态包都有了 现在我们查看hello包。 Hello包的目的是建立并维持OSPF邻居关系邻居关系建立之后充当保活包功能。
Init初始化状态一旦开始发送hello报文进入初始化状态。
two-way双向通信状态邻居状态接收到包含自己router-id的对方hello报文。
邻居关系建立条件
1.router-id必须不同。
2、area ID相同。
3、认证认证类型不认证0 明文认证1 MD52认证数据。
4、hello时间dead时间必须一致。
5、特殊区域标识一致E外部路由位1NNSSA外部路由位0P0.
6、MA网络中网络掩码必须一致。
7、必须同时使用单播或组播更新。
8、更新源检测双方的IP地址必须在同一网段。
在AR1发送hello包后就进入Init初始化状态AR2发现AR1发来的hello包含自己的router-id则进入two-way community双向通信状态AR1同理。 two-way状态下MA的网络进行选举DR指定路由器和BDR备份指定路由器
DR选举1、比较优先级范围0~255默认优先级为1越大越优。2、比较各自的router-id越大越优。注意1.DR抢占式关闭的。2、DR是一个接口概念。3、优先级范围0~255数字0代表不参与选举。4、先选举BDR再升级为DR如上图中就可以看到BR是12.1.1.2BDR是12.1.1.1。
exstart预启动状态邻居状态建立了LSA还没有发送在R1,R2正式发送LSA信息前会互相先发送一个LSA目录只针对自己不知道的LSA进行请求查重LSA信息。发送的是BDB报文进行主从选举。一旦发送DBD就进入预启动。 exchange预交换主从选举完成发送LSA目录发送LSR就进入exchange。 loading加载学习LSA的状态即发送LSU报文 接着就是LSACK包 以上OSPF消息数据包一共有五个helloDBDLSRLSULSACK。
其中需要确认的除hello包都需要确认来保证可靠性因为hello周期性发送保证了可靠性。DBD是使用DD序列号确认LSR需要LSU将LSR请求的LSA名称信息发送回去确认LSU需要LSACK将LSU包含的的LSA名称发送回去确认LSACK使用隐式确认。
full邻接状态自己判断LSA同步R1将R2的LSA全部学完R2同理。怎么判断学完了比如R1要学习R2LSA在开始时R2给R1发送了一个LSA目录R1从中查找自己没有的LSA生成一个请求列表为自己要学习的LSA针对请求列表里的LSA进行LSR请求R2中生成一个重传列表将R1要学习的LSA放进重传列表R2发送一个LSA给R1R1收到了将其对应的LSA冲请求目录中删除由隐式确认R2收到ACK则从重传列表删除。R2请求R1LSA同理都有一个重传列表和一个请求列表当两张表清空时变为full状态。
由上可知链路状态一共有六种状态以下状态是双向的
1、init——初始化一旦发送hello包进入该状态
2、two-way community——双向通信状态邻居收到对方的hello包中包含自己的router-id和activity number则进入该状态
3、exstart——预启动进入two-way后判断自己需不需要选举DR和BDR不需要则立即发送DBD报文进入该状态若需要则需要等待一个死亡计时器40S或120S到时之后发送DBD进行主从选举
4、exchange——预交换主从选举完成立即进入该状态并互相发送LSA目录立即发送LSR接收对方的LSU
5、loading——加载一旦收到LSU就进入该状态
6、full——邻接状态请求列表和重传列表清空进入该状态
扩展
down状态一般是看不到的以前建立过邻居邻接状态突然有个邻居建立条件不匹配则出现down。
卡在init状态在一个dead时间没有进入下一个状态会退到down状态。
卡在two-way状态有可能是在选DR和BDR的网络中一直没有选出DR就会持续卡在该状态。
卡在exstart状态是因为mtu不一致问题一方mtu大一方小则大的一方会进入exchange状态而小的一方会一直在extart状态所以卡在exchange状态也是mtu问题导致的。
卡在loading状态是因为LSA无法同步1、设备性能弱无法接收完LSA会导致设备一直崩溃重启。2、弱性能设备上限制了LSA的学习数量导致无法学习完LSA这一个原因是更常见的原因。
正常持续稳定的停留的状态为two-way和full。停留在two-way时是两个Dother与Dother之间会永远停留在该状态。
还有一个attempt尝试/过度状态只有在NBMA网络中可能出现因为其不能主动建立连接只有我们手动配置peer不能主动建立OSPF邻居的网络中可能出现。
———————————————————————————————————————————
OSPF router-id选举规则1、手工指定最优先。2、选举所有逻辑中IP地址最大的。3、选举所有物理接口IP地址最大的。
华为中若以上三点不满足则可以创建router-id为0.0.0.0在使用逻辑或物理接口IP地址时接口可以时关闭状态若一台路由器启用了多个OSPF进程不同进程可以使用相同的router-id不推荐。
思科中若以上三点不满足则无法启用OSPF在使用逻辑或物理接口时接口必须双up该接口可以不通告进入OSPF中同一路由器上多个OSPF进程的router-id必须不同。 OSPFv2——LSA1、2、3、4、5、7类
环境如下其中R2与R4的loop back接口宣告在area0中 在R2与R4中查看OSPF邻居情况 邻接建立成功LSA完全同步现在查看LSA种类。
怎么描述一条LSA1、LSA类型。2、link-id链路标识符。3、ADVrouter 产生路由器
查看链路状态数据库表但dis ospf 100 lsdb查看的是一个LSA的目录表并不是一个完整的。我们要看详细的表就需要分别去查看详细的LSA1、2、3、4、5、7才能查看出完整的LSA。 以上link-id中有的是router-id有的不是router-id。ADVRouter是产生该LSA是哪个路由器的router-id。这三个信息标识同一个LSA。如果另一个LSA的标识符与这三个不同就是不同LSA相同则是同种LSA。
一类LSArouter-LSA。
功能本路由器针对某个区域产生的路由信息和拓扑信息因为OSPF是一个状态型路由协议比如该拓扑中R1的所有都在area 1中所以R1针对area 1中只产生一条LSA而这条LSA包含了R1在该区域的路由信息和拓扑信息R2针对area 1区域产生一条LSA在area 0中也产生一条一类LSA但这两条一类LSA不一样area1中是R2在area1中的路由信息与拓扑信息area0中是R2在area0中的路由信息与拓扑信息所以在area1中有两条一类LSA。所以在R1中查看链路状态数据库中R1与R2产生的一类LSA都只有1条。 在R2中查看链路状态数据库则R2在area 1与area 0中都产生了一条一类LSA所以R2一共产生了两条一类LSA。 传播范围只在本区域内传输终止于ABR。
link-ID产生者的router-id。
ADV router产生者的router-id。
特性在单个区域中分别产生一条一类LSA若存在MA网络1类LSA不完整需要配合二类LSA生成路由信息以及拓扑信息。
一类LSA的详细信息
在R2中查看一类LSA。 若要查看准确的一类LSA信息则需要在dis ospf lsdb后跟上链路状态标识符即link-id。 一类LSA内容类型
1、stubnet末节网络——路由信息
2、transnet传输网络仅限于MA网络——拓扑信息
3、point-to-point——拓扑信息
4、virtual link虚链路——拓扑信息
综上一类LSA的特性为在单个区域中分别产生一条一类LSA若存在MA网络1类LSA不完整需要配合二类LSA生成路由信息以及拓扑信息。
二类LSAnetwork LSA网络LSA。
功能用于在MA网络中描述本网络路由器的数量以及本MA网络的网络掩码。
传播范围只能在本区域之内传输终止于ABR。
link-idDR接口的IP地址只能由MA网络中的AR产生。
ADV routerDR所在路由的router-id。
特性只会出现在MA网络用于补充一类LSA1、MA网络的掩码。2、MA网络路由器的数量。 若我们不知道这个网络拓扑图只能登录R2设备我们可以通过查看其收集到的一类LSA和二类LSA就可以知道这个网络拓扑。 上图中初步知道了R2为area 1与area 0的ABR和其对方的接口IP为MA网络类型然后再查看12.1.1.1与23.1.1.2发现它们路由器的router-id为91.1.1.1与93.3.3.3网络掩码为255.255.255.0. 接着再查看91.1.1.1与93.3.3.3的链路状态数据库 以上知道了91.1.1.1与93.3.3.3的环回路由信息还知道了93.3.3.3还通过34.1.1.1这个接口连接到了其他路由器。接着就查看34.1.1.1。 发现到了area 0区域中还有个94.4.4.4的路由器得知93.3.3.3这个路由器为骨干路由器接着继续查看94.4.4.4。 以上我们就通过在R2上查看一类LSA和二类LSA就发现了以下的一个路由结构 但area1学不到area0和area2中的路由信息area0和area2同理。学不到其他区域的路由信息此时就需要三类LSA。
三类LSAsummary LSA 汇总LSA。
功能用于在区域之间传递路由信息。
link-id传递路由的网络号。
ADV router可能有多个默认为所在区域ABR的router-id。
area1中的ADVroute为R2的route-idarea2为R4的router-idarea0中的ADVrouter进入area1中为R2的router-id进入area2的为R4的router-id。
特性在穿越不同区域时由其他的ABR重新产生ADV router是变化的
在R2上查看链路数据库就可以发现在area0中ADVrouter为link-id所在区域的ABR的router-id以及其他区域的进入到另一个区域的ADV router为另一区域的路由的router-id就如同该拓扑中area0和area1中的路由拓扑信息进入area1则这些信息的ADVrouter在area1中就是R2的router-id。 在骨干区域中的路由器查看就可以发现其他区域进入该区域的路由拓扑信息的ADVrouter就是其他区域的ABR的router-id。 比如我们要在R2上具体查看12.1.1.0的三类LSA R3收到12.1.1.0这个网段时开销值为R3到area1的ABR的开销值加上该ABR到这个网段的开销值R4同理但R5不是因为跨区域了。
当R2针对area1中的路由传递到area0中没有任何问题但当传给area2中时要由area2的ABR要重新产生即当路由传给R5时R5只需找R4就行。即R5到12.1.1.0的开销值为R5到area2的ABR的开销值加上R4到R2再加上R2到12.1.1.0的开销值。因为area2区域中的路由器除了ABR知道92.2.2.2的存在其余路由器都不知道所以学习了跨区域的路由也不知道其ABR是谁所以需要由不同区域的ABR产生新的ABR传给自己区域中的路由器进行学习该路由。 五类LSA外部LSA。
功能用于在整个OSPF中传递外部路由原本不属于OSPF域。
五类LSA有两种类型类型1 类型2区别类型1开销值在OSPF中传播是增加的类型2开销值传播时不变 。
link-id传递外部路由的网络号。
ADV router产生该LSA的router-id产生本LSA的router-id。
传播范围在整个OSPF域中传播。
如下在R5下面又运行了一个RIPRIP配置请查看RIP小实验配置及缺省路由下发-CSDN博客 做完RIP还得在R5上将rip路由引入OSPF 然后在R1上查看就可以查看到学习到了R6的路由 能学习到这个路由是靠的五类LSA是在R5上产生的。
查看R5上的链路数据库就发现多了类型为External的LSA这就是五类LSA外部LSA。 查看五类LSA里面有俩个路由信息6.6.6.0和56.1.1.0的。我们再单独查看6.6.6.0的五类LSA路由信息。 其中不管在R1还是R4上查看这个五类LSA的开销值都为1。二类型的五类LSA在链路中传播时开销值不变现在我们将五类LSA类型改为1并查看6.6.6.0开销值不变类型变为了类型1开销值R4上查看变为了2R3上变为了3R2上变为了4R1上变为了5。所以类型1的五类LSA在整个OSPF中传播时其开销值是增加的默认值为1。这就是五类LSA类型1与类型2的区别。 其中的forwarding address为转发地址正常的大部分的五类LSA为0.0.0.0。如果转发地址中有地址就需要注意了。
tag为路由标识没有属性意义。
五类LSA在使用时会出现问题如图中五类LSA的ADVrouter为R5。当R5将这个LSA传给R4时R4要找到6.6.6.0就要先找到R5所以R4要计算到6.6.6.0的开销值就将R5到达6.6.6.0的开销值与自己到R5的开销值相加就行。当R3要查找6.6.6.0就要找到R5但找不到R5所以无法加表R2,R1同理都找不到95.5.5.5在哪但是实际上又加表了这就是靠的四类LSA。
四类LSAsummary ASBR LSA
功能除了ASBR所在区域外用于通告ASBR位置。
link-idASBR的router-id
ADV router默认ASBR所在区域的ABR的router-id。
特点在穿越不同区域时由新的ABR重新产生。与三类LSA一致
例如在R4上查看四类LSA。 查看四类LSA里面开销值为1这个开销值由ABR到达ASBR的开销值决定。 R3要到6.6.6.0就得找到R4R2也得找到R4而R1要到6.6.6.0得找到94.4.4.4找不到R4所以在跨区域时要由新的ABR重新产生R2上就有两条LSA一条学习的一条自己产生的。 R1要到6.6.6.0就得先找95.5.5.5找95.5.5.5就得先找到R2R2再找到R5开销值就是这三者之和再加R5到6.6.6.0的开销值。所以该拓扑中开销值为5 扩展
———————————————————————————————————————————
某一个路由器网络不稳定进行了几次的触发更新每次更新都产生了LSA其他路由器收到了好几条LSA所以需要比较出谁是最新的。
LSA的新旧比较
LSA中存在3个参数用于LSA的新旧比较LSA age为3600秒的LSA都是最优的因为到时间就消失了实际上在真实环境中真正消失的时间是3600零几秒。
1、序列号
直线型序列空间——ISIS
循环型序列空间
棒棒糖型直线型循环性迪杰斯特拉型序列空间
2、校验和若是LSA序列号相同就比较校验和每次的age不一样校验和就不一样校验和越大越优。
3、LSA老化时间若以上相同LSA age之差小于15分钟越小越优。若大于15分钟则无法比较认为都是最新的若序列号和校验和都一样则比较LSA老化时间。 ———————————————————————————————————————————
因为七类LSA只在特殊区域中产生所以关于七类LSA的演示在本文后面的特殊区域中会讲解。目前先提及以一下。
7类LSA NSSA LSA
功能在NSSA区域中传递外部路由。
Link id 传递路由网络号
ADV router产生该LSA的router-id
特性默认为类型2 度量值为1 。携带了FA地址转发地址
FA: 转发地址当5类或7类LSA中携带了FA地址则计算路径开销值时计算的是 当前路由器到达FA地址的开销值之和种子度量值。若FA地址不可达则路 由不能加表
FA 地址 1、默认7类LSA 产生FA地址5类LSA不产生的7转5 的5类LSA 携带FA地址 2、7类LSA
产生规则默认产生的FA地址为产生7类LSA 的ASBR 最大的环回接口地址若连接其他协议的接口也运行了OSPF协议网络类型为BMA则产生 的7类LSA中FA地址为连接其他接口对应的下一跳地址若网络类型为P2P则 FA地址依然为环回接口中IP地址最大的 3.5类LSA FA地址规则默认不产生若连接其他协议的接口运行了OSPF 协议 并且网络类型为BMA则FA地址为重发布之前路由的下一跳地址若网络类型 为P2P则不会产生FA地址。
OSPF中的计时器
1、hello时间默认为10秒或30秒dead时间默认为40秒或120秒。
修改hello时间dead时间变化修改dead时间hello时间不变hello时间或dead时间不同都会影响邻居关系建立。
2、waiting time等到DR或BDR的选举时间永远保持与dead时间一致。 修改hello时间并再次查看可以发现修改hello时间dead时间也会被自动的修改为hello的四倍时间。 再查看接口状态发现只有一个接口连接另一个接口断开因为hello时间dead时间不一致了。然后我们再次修改hello时间为10秒另一个接口邻居关系也回来了。 修改dead时间发现hello时间没有被影响邻接关系也断开了。 综上修改hello时间和dead时间都会影响邻接关系的建立修改hello时间dead时间会自动改为四倍hello时间修改dead时间hello时间不受影响。
在思科厂商的设备中里面还有个wait时间这个wait时间不能修改会永远随着dead时间变化wait时间是等待DRBDR的选举时间dead时间是多少wait时间就是多少。
其中的pull时间轮询时间当邻居关系进入down状态时不能再去发送高速hello时间10秒去发送的hello包而是采用pull时间去发送hello包建立邻居关系。
retransmit为重传时间默认为5秒在OSPF中发送数据包需要进行确认没有收到确认时就重传重传时间为5秒重传到邻接关系断掉为止。重传时间也能修改 transmit delay 传输延时默认为1秒。比如R2产生了一个LSA刚产生LSA时有一个LSA age,R2就与其他路由器在一段时间内建立邻接关系在给对方传递LSA时这个LSA也有个age比如为50秒在传的时候传递的LSA里面显示的就是50秒也就是说发出这个LSA那一时刻起这条LSA活了50秒将这条LSA从链路数据库中提取出来放在接口传递给对方对方接收再查看链到LSA时如果还是50秒这中间就有个时间差所以OSPF所有接口都有一个传输延时。可以修改 以上就是OSPF中常见的几个计时器。
OSPF网络类型OSPF针对不同物理接口的特性它的OSPF协议工作模式有所不同导致了OSPF不同的接口有了不同的工作方式有的可以自动建立邻居有的不能自动建立邻居有的靠组播有的靠单播有的DR建立邻居有的BDR建立邻居等。
loopback在OSPF中我们看不到一个接口网络类型为环回网络类型。我们将环回接口通告到了OSPF网络的某个区域中OSPF识别到是环回接口就以三十二位主机路由通告到路由协议中这其实就是环回网络类型的体现。其他网络类型没有这样的东西。但是在华为的设备中我们是看不到的在接口里面我们只配置了环回IP没有做任何东西按理来说其默认网络类型为环回网络类型在思科设备中我们查看接口网络类型为loopback而在华为中显示为P2P类型。环回网络类型体现在几点上1、Type类型为loopback。2、这个接口路由在向外传递时通告时是以三十二位主机路由的形式传递。3、环回网络类型是没有hello时间dead时间的因为OSPF都识别到是环回接口只有自己一个用户不需要与其他路由建立邻居。在华为中显示的为P2P形式虽然是显示的P2P形式但是环回网络特点是直接执行的只是没有说而已直观的就是学到的环回路由是以三十二位主机路由学习。环回接口的网络类型我们是不能把一个正常的接口网络类型修改为环回网络类型思科中就算有环回网络类型也只能是环回接口成为环回网络类型。华为中没有loopback的命令。也就是说一个正常接口网络类型除了不能修改为环回网络类型其他的网络类型都能修改思科中有华为是没有环回网络类型。 注意loopback接口默认OSPF网络类型为P2P但是生成路由的网络掩码默认为32位还原真实网络掩码思科中修改类型为P2P华为中修改为BMA类型改为broadcast类型并且cost为0cost不会因为参考带宽或者接口带宽变化而变化。
将接口网络类型修改为broadcast类型后还原为真实的24位网络掩码。其传递的LSA也会改变。 如果我们在环回接口中要还原真实的网络掩码就要都修改为broadcast类型在华为中只能修改为broadcast类型。正常接口开销值为参考带宽除以真实带宽华为环回接口开销值默认为0与接口带宽与参考带宽没有任何关系也就是不管去修改环回的接口带宽还是调整参考带宽环回默认cost值为1这个默认cost值是可以修改的但是不能去修改接口带宽或参考带宽去变化而其他物理接口是可以的。 1、P2P——点对点
物理接口HDLC高级数据链路控制协议默认为P2P PPP点对点协议 GRE MGRE FR点对点子接口
hello时间10S
是否选举DR不选举
是否自动建立邻居自动建立
特性无因为只需要一类LSA 2、BMA——广播多路访问网络
物理接口以太网默认为BMA。
hello时间10S
是否选举DR选举DR
是否自动建立邻居是
特性产生的一类LSA不完整需要二类LSA补充
3、NBMA——非广播型多路访问网络
物理接口FR-帧中继物理接口多点子接口 ATM-异步传输网络 思科中的MGRE
hello时间30S
是否选举DR选举DR
是否自动建立邻居否建立邻居需要手工指定peer思科中单边指定就可以华为需要双方同时指定
网络部署类型1、full-mesh 2、part-mesh 3、hub-spoke
在hub-spoke网络中若默认网络类型为NBMA1手工指定peer。2、控制DR位置不得出现BDR。3、spoke之间互相映射PVC
4、P2MP
物理接口无
hello时间30S
是否选举DR不选举
是否自动建立邻居自动
特点将物理接口IP地址以32位主机路由的形式传递进入OSPF。
5、V-link ……未完待续