本人是金桥世纪的一名小小的网络推广专员,技术不高,现在很多初学者搞不清楚什么是OSPF邻居什么是邻接,今天我用自己的方式来讲解一下。 我们在这里先说一下基本概念: HELLO报文:周期发送,用来维持OSPF的邻居关系,内容包括定时器,DR,BDR,以及邻居 邻接:成为邻接关系的路由器之间,不仅仅是进行简单的Hello报文的交换,而是进行数据库的交换/为了减少特定网段上的交换信息。 下面我们来看一下邻居的建立过程: RTA和RTB的RID分别是1.1.1.1和2.2.2.2,运行OSPF协议 1、最初的时候邻居关系是处于DOWN的状态,之后RTA开始发送HELLO报文由于当前的没有邻居所以邻居表示空的,DR(指定路由器)字段为0.0.0.0 2、RTB收到RTA的HELLO,把RTA添加到自己的邻居标中,同时讲自己的邻居状态变为INT。 3、RTB与RTA比较R ID,由于RTB的比RTA的大,所以在发送HELLO报文中,将 DR字段设置为自己的2.2.2.2 4、TA收到RTB发来的HELLO报文,在邻居表中发现了自己的R ID ,将邻居表中RTB的状态修改为2-way http://www.luyouqiwang.com/13383/ 5、RAT发送HELL0报文,其中邻居表添加RTB的R ID,将DR字段设置为RTB的R ID 6、RTB检测RTA的HELLO报文,发现了自己的R ID,将邻居表RTA的状态修改为2-WAY 以上就是建立邻居关系的步骤。 下面我们继续看邻接关系的建立: 如果这两台路由器承担DR 或者BDR的角色,他们将需要进一步建立邻接关系。 1、RTA将邻居表中RTB的状态设置为EXSTART状态,并且发送一个不含LSA摘要的DD报文,开始协商主从关系。 Seq: 序号 I=1表示最初的报文。 M=1 表示不是最后的报文。 MS=1 表示认为自己的MASTER路由器。 2、RTB收到RTA的DD报文将路由表中RTA的状态设置为EXSTART。 3、由于RTB的RID比RTA的RID大所以,RTB认为自己是MASTER路由所以它发送DD报文来证明自己是MASTER。 RTB使用的seq是y ,与RTA的x作分别。 4、RTA收到RTB发来的DD报文同意RTB为MASTER路由( 因为RTB的RID大), 邻居状态该为EXCHANGE。 因为RTA同意RTB为MASTER路由器,所以采用RTB的序号y。 I=0表示不是初始的报文。 M=1表示不是最后一个报文。 MS=0 表示自己不是MASTER路由器。 5.RTB收到RTA发来的DD报文,将邻居状态改为EXCHANGE,采用y+1的序号发送。 6.RTA和RTB对于DD报文包含的LSA信息与自己的LSDB做比较,如果LSA信息在LSDB中存在直接进入FULL状态,如果缺少,则发送LSR 报文请求,LSU报文更新。 LSACK报文确定,最后进入FULL状态, 以上就是我对OSPF邻居和邻接的理解。 |
不良信息举报Q:2000617|Archiver|ROS软路由论坛 ROSABC.com 网络方案网络工程交流
GMT+8, 2025-7-2 09:27 , Processed in 0.129350 second(s), 15 queries .
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.