OSPF的router ID详解
在学习数通OSPF的时候,一般情况下我们学习的第一个基础概念就是ROUTER ID。那么ROUTER ID有什么作用?什么特点呢?在整个OSPF的运行过程中起什么作用呢?
以上问题就是我们本期要了解的内容:
一、概述
OSPF动态路由协议要求使用router id作为路由器的身份标示,如果在启动这些路由协议时没有指定router id,则路由进程可能无法正常启动。因此必须给每一台OSPF路由器定义一个身份,就相当于人的身份证号,这就是router id。
router id在网络中不可以重复,否则路由器收到的链路状态,就无法确定发起者的身份,也就无法通过链路状态信息确定网络位置,OSPF路由器发出的链路状态都会写上自己的router id,可以理解为该链路状态的签名,不同路由器产生的链路状态,签名绝不会相同。
OSPF的router id所显示的形式是 x.x.x.x ,格式与IP地址相同,但实际上它并不是一个IP地址,而是一个名字,只不过长相和IP地址一样罢了。
本文就OSPF中的router id做一些说明。
二、OSPF中的router id作用
1、作为OSPF区域中本路由器的唯一标识;2、DR、BDR选举中,在优先级相同的时候,router id大的选举为DR。3 、DD报文协商主从关系,相比较router id大的为主路由器。4、 LSA中包含产生者的router id 是标识一个LSA的重要参数。
三、OSPF中的router id选举
router id(router identifier,路由器标识符),用于在一个OSPF域中唯一地标识一台路由器。
router id的设定可以通过手工配置的方式,或使用系统自动配置的方式。
注:router id不可以是0.0.0.0 或 255.255.255.255。
在OSPF中的router id选举规则如下:
1、优选手工配置的router id;①OSPF进程手工配置的router id具有最高优先级②在全局模式下配置的公用router id的优先级仅次于直接给OSPF进程手工配置router id,即它具有第二优先级2、在没有手工配置的前提下,优选loopback接口地址中最大的地址作为router id;3、在没有配置loopback接口地址的前提下,优选其他接口的IP地址中选择最大的地址作为router id (不考虑接口的Up/Down状态)。
实验验证,组图如下:
https://forum.huawei.com/enterprise/zh/data/attachment/forum/202204/21/094734d2j6676c2c4xfmrx.png
①仅初始配置设备名称(未配置接口IP)后,查看设备的router id,以R1为例:
https://forum.huawei.com/enterprise/zh/data/attachment/forum/202204/21/094747a967dbarfa4thzwg.png
可以看到,没配置任何接口前,router id为空。②之后配置好R1的各个物理接口,然后查看接口状态:display ip interface brief
https://forum.huawei.com/enterprise/zh/data/attachment/forum/202204/21/094804thu80sfr5di66sqw.png
再次查看router id:https://forum.huawei.com/enterprise/zh/data/attachment/forum/202204/21/094827qcido4986944u94z.png
可以看到,此时R1的router id优选三个物理接口里IP地址最大者。③配置loopback0接口地址https://forum.huawei.com/enterprise/zh/data/attachment/forum/202204/21/094844vshxsbsihwqvwx1v.png
再次查看router id:
https://forum.huawei.com/enterprise/zh/data/attachment/forum/202204/21/094901q5gi8838g0yyrl3s.png
为什么不是环回接口地址?原因是接口顺序的配置会影响router id的选取,因为第一次配置物理接口地址时就会触发router id选举。此时,删除g0/0/2的接口配置,然后再查看router id:int g 0/0/2undo ip address再次查看router id:
https://forum.huawei.com/enterprise/zh/data/attachment/forum/202204/21/094916rnvcnfbnavnlw434.png
可以看到,R1的Router id已经变为1.1.1.1,因为router id被删除之后会重新出发选举,此时环回地址的优先级更高;这里再把R1的g0/0/2接口IP地址配置上int g 0/0/2ip address 192.168.0.1 24再次查看router id
https://forum.huawei.com/enterprise/zh/data/attachment/forum/202204/21/094935dle6ai0in0eipta3.png
R1的router id仍为1.1.1.1。④在R2上配置以下命令inter LoopBack 0ip address 2.2.2.2 32quitinterface LoopBack 1ip address 20.20.20.20 32quitinterface GigabitEthernet 0/0/0ip address 10.0.0.2 30interface GigabitEthernet 0/0/1ip address 20.0.0.1 30之后查看R2的router id
https://forum.huawei.com/enterprise/zh/data/attachment/forum/202204/21/094950q2gudhym5gfmgda2.png
为什么不是最大的环回接口地址?原因是接口顺序的配置会影响router id的选取,因为第一次配置环回接口地址时就会触发router id选举。此时,删除loopback0的接口配置,然后再查看router id:
https://forum.huawei.com/enterprise/zh/data/attachment/forum/202204/21/095009b01jxxvzv20lv7k3.png
再次配置loopback0的接口IP,R2的router id没有变化。⑤在R3上手工配置全局router id
https://forum.huawei.com/enterprise/zh/data/attachment/forum/202204/21/095035akbyacq8goy4b15f.png5.5.5.5在本例中并无出现,可见router id是不关联IP地址的,只是作为身份标示而已。再配置其他接口地址interface LoopBack 0ip address 3.3.3.3 32quitinterface GigabitEthernet 0/0/1ip address 20.0.0.2 30quitinterface GigabitEthernet 0/0/3ip address 30.0.0.2 30quit再次查看router id
https://forum.huawei.com/enterprise/zh/data/attachment/forum/202204/21/095046k8eahgu5axeta7x0.pngR3的router id没有变化。⑥在R1、R2、R3上配置OSPFospfarea 0network 192.168.0.0 0.0.0.255network 10.0.0.0 0.0.0.3network 30.0.0.0 0.0.0.3 ospfarea 0network 2.2.2.2 0.0.0.0network 20.20.20.20 0.0.0.0network 10.0.0.0 0.0.0.3network 20.0.0.0 0.0.0.3 ospfarea 0network 3.3.3.3 0.0.0.0network 20.0.0.0 0.0.0.3network 30.0.0.0 0.0.0.3查看3台路由器的OSPF进程中的router id
https://forum.huawei.com/enterprise/zh/data/attachment/forum/202204/21/095105m68lht6e55is8puv.pnghttps://forum.huawei.com/enterprise/zh/data/attachment/forum/202204/21/095126vdrv195rfyh90w9u.pnghttps://forum.huawei.com/enterprise/zh/data/attachment/forum/202204/21/095139m5uhi5egiwgkgceh.png
可以看出,OSPF进程1里选择的router id是按照优先顺序选取的。⑦在R3上配置命令
https://forum.huawei.com/enterprise/zh/data/attachment/forum/202204/21/095155xz35jc9tlowuzeje.png
提示信息中显示新配置router id需要复位OSPF进程后才能生效。没有复位OSPF进程前查看
https://forum.huawei.com/enterprise/zh/data/attachment/forum/202204/21/095214dvoplths8byt0l1b.png复位OSPF进程后查看https://forum.huawei.com/enterprise/zh/data/attachment/forum/202204/21/095232rdsz9gmyijvdj6n7.png
此时R3的router id已变成手工配置的OSPF进程1的6.6.6.6(优于全局router id 5.5.5.5)。
四OSPF的router id刷新规则
1、当且仅当被选举为router id的接口的地址被删除或修改,才会触发选举过程,此过程需要reset OSPF进程才生效;
2、被选择的接口状态改变、新配置更大的loopback或其他接口地址,均不会导致router id重新选举;
3、router id不可以是0.0.0.0 或 255.255.255.255
4、 路由器的全局router id选择后,不会发生改变,因为此ID由路由器管理,它的存在与OSPF或是BGP没有关系。
五OSPF中router id的冲突
在本实验中,把R2的router id改为1.1.1.1,即与R1的router id一致。ospf 1 router id 1.1.1.1Info: The configuration succeeded. You need to restart the OSPF process to validate the new router id.
quit<R1>reset ospf 1 processWarning: The OSPF process will be reset. Continue? :y实验结果:①在OSPF启动后在R1上执行命令:display ospf error
https://forum.huawei.com/enterprise/zh/data/attachment/forum/202204/21/095302gdsyz2yeidezd6iv.png最后一行显示设备统计出因router id混乱而导致的ospf error。
②在R3上观察全局路由表和OSPF路由表,发现R3能学习到
192.168.0.0/24网段路由,但是下一跳地址和出接口会不停地抖动,一会是R1,一会是R2。
③R1与R2无法建立OSPF邻居关系(R1发送hello包后,R2收到R1的hello包,发现routerID与自己的router id一致,邻居无法建立。)。
以上演示的是三台OSPF路由器在同一个区域内的router id重复导致的问题现象,那么如果是不同区域的OSPF路由器router id重复会如何呢?大家可以自行做实验看看结果。
以上的内容,就是ROUTRT ID在OSPF协议中运行时的工作特点,以及需要我们清楚的现象。
感谢楼主的分享 好东西谢谢楼主分享
页:
[1]