在DR和BDR出现之前,每一台路由器和他的邻居之间成为完全网状的OSPF邻接关系,这样5台路由器之间将需要形成10个邻接关系,同时将产生25条LSA.而且在多址网络中,还存在自己发出的LSA 从邻居的邻居发回来,导致网络上产生很多LSA的拷贝,所以基于这种考虑,产生了DR和BDR. DR将完成如下工作 1. 描述这个多址网络和该网络上剩下的其他相关路由器. 2. 管理这个多址网络上的flooding过程. 3. 同时为了冗余性,还会选取一个BDR,作为双备份之用. DR BDR选取规则: DR BDR选取是以接口状态机的方式触发的. 1. 路由器的每个多路访问(multi-access)接口都有个路由器优先级(Router Priority),8位长的一个整数,范围是0到255,Cisco路由器默认的优先级是1优先级为0的话将不能选举为DR/BDR.优先级可以通过命令ip ospf priority进行修改. 2. Hello包里包含了优先级的字段,还包括了可能成为DR/BDR的相关接口的IP地址. 3. 当接口在多路访问网络上初次启动的时候,它把DR/BDR地址设置为0.0.0.0,同时设置等待计时器(wait timer)的值等于路由器无效间隔(Router Dead Interval). DR BDR选取过程: 1. 在和邻居建立双向(2-Way)通信之后,检查邻居的Hello包中Priority,DR和BDR字段,列出所有可以参与DR/BDR选举的邻居.所有的路由器声明它们自己就是DR/BDR(Hello包中DR字段的值就是它们自己的接口地址;BDR字段的值就是它们自己的接口地址) 2. 从这个有参与选举DR/BDR权的列表中,创建一组没有声明自己就是DR的路由器的子集(声明自己是DR的路由器将不会被选举为BDR) 3. 如果在这个子集里,不管有没有宣称自己就是BDR,只要在Hello包中BDR字段就等于自己接口的地址,优先级最高的就被选举为BDR;如果优先级都一样,RID最高的选举为BDR 4. 如果在Hello包中DR字段就等于自己接口的地址,优先级最高的就被选举为DR;如果优先级都一样,RID最高的选举为DR;如果选出的DR不能工作,那么新选举的BDR就成为DR,再重新选举一个BDR。 5. 要注意的是,当网络中已经选举了DR/BDR后,又出现了1台新的优先级更高的路由器,DR/BDR是不会重新选举的 6. DR/BDR选举完成后,DRother只和DR/BDR形成邻接关系.所有的路由器将组播Hello包到AllSPFRouters地址224.0.0.5以便它们能跟踪其他邻居的信息,即DR将泛洪update packet到224.0.0.5;DRother只组播update packet到AllDRouter地址224.0.0.6,只有DR/BDR监听这个地址. 简洁的说:DR的筛选过程 1.优先级为0的不参与选举 2.优先级高的路由器为DR 3.优先级相同时,以router ID 大为DR。 router ID 以回环接口中最大ip为准。 若无回环接口,以真实接口最大ip为准。 4.缺省条件下,优先级为1
ospf 是 路由协议啊 在ospf网络中 很多路由器中选一个路由器来内个路由器就叫做DR 其他的路由器只和这个路由器更新路由表
相当于OSPF每个区域中的一个主干路由器,跟老大一样。
是做什么的?主要是转发路由信息的,
进行ospf区域类 2类LSA通告的发送,DR将区域类的信息整理好后,需要再发送给ABR(区域间相连的路由器)进行整理好,再发送另外的相关区域信息,就这样每个区域一直循环,一共6类通告,都能搞懂,你的OSPF就OK了
这个知识点还是比较深奥,不是一句两句能说清,建议你去多看下这方面的书籍和网上相关的教程。。。