雏鹰部落

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 8469|回复: 24

求技术帝。OSPF里 DR/BDR选取的一点疑惑。

  [复制链接]
发表于 2011-3-8 19:53:51 | 显示全部楼层 |阅读模式
本帖最后由 Alice、袜 于 2011-3-8 20:18 编辑

今天细看OSPF DR/BDR选举时,出现了一点疑惑。有3个问题,希望可以得到大家的解答。非常感谢。

P288卷一 写到:
当一个接口在一个多址网络上开始有效时,它把它的DR和BDR地址设置为0.0.0.0。…

下面写到选举算法流程:(避免长篇幅,自己稍作简略,或者翻288页)
1.2 way时,所有路由器都宣告自己为DR/BDR。
2.创建一个没有宣告为DR的路由器子集
3.子集中最高优先级的宣告自己为BDR的路由器成为BDR
4.没有路由器宣告BDR时,优先级最高的为BDR。相同优先级则最高RID的为BDR
5.最高优先级的宣告自己为DR的成为DR,相同条件下,最高RID的成为DR。
6.没有路由器宣DR告时,新的BDR成为DR
7.计算中的路由器是新选取的DR/BDR或者已经失效,则重复2-6步。

第一个问题:
试问,又设置DR/BDR为0.0.0.0,又怎么宣告自己为DR/BDR?这里感觉有点冲突…
是一前一后的2个hello packet?

我baidu了一下,引出了一个新的问题。
http://bbs.56cto.com/viewthread.php?tid=28851&extra=&page=1
有人做实验,是DR位为0,而自己为BDR,所以他们推断出,是先选举BDR,然后BDR成为DR,再选举新的BDR。
(按照上面算法自顶向下解释。)

http://steven24.blog.51cto.com/346765/86168
有人根据翻译而给出了新的见解,认为是先选举出DR,再选举了BDR。
因为一开始都宣告自己是DR,所以第二步的子集为空,直接执行第五步,选出DR,然后其他路由器不会再宣告自己为DR,则子集不为空,从中选举出BDR。
(按照算法12567→1234567…)

第二个问题:
哪种说法是对的?

然后我根据实验现象,自己做了实验。
发现貌似接口加入OSPF,并没有DR/BDR为0.0.0.0的hello packet。

  1. R1(config-router)#
  2. *Mar  1 00:07:49.283: OSPF: Rcv DBD from 1.1.1.2 on FastEthernet0/0 seq 0x6EB opt 0x52 flag 0x7 len 32  mtu 1500 state 2WAY
  3. *Mar  1 00:07:49.287: OSPF: Nbr state is 2WAY
  4. R1(config-router)#do sh ip ospf
  5. *Mar  1 00:07:53.707: OSPF: end of Wait on interface FastEthernet0/0
  6. *Mar  1 00:07:53.707: OSPF: DR/BDR election on FastEthernet0/0
  7. *Mar  1 00:07:53.707: OSPF: Elect BDR 10.10.10.1
  8. *Mar  1 00:07:53.707: OSPF: Elect DR 1.1.1.2
  9. *Mar  1 00:07:53.707: OSPF: Elect BDR 10.10.10.1
  10. *Mar  1 00:07:53.711: OSPF: Elect DR 1.1.1.2
  11. *Mar  1 00:07:53.711:        DR: 1.1.1.2 (Id)   BDR: 10.10.10.1 (Id)
复制代码


第三个问题:
然后我给对端路由器重启了。却发现只有BDR为0.0.0.0的hello packet。
没有出现DR为0.0.0.0的。难道网上的评论都是瞎扯?实验现象和56cto上他们说的现象不同。
还是是因为模拟器的问题?那为什么接口第一次加入网络时,没有产生DR/BDR为0.0.0.0的hello packet?重启了才有?难道卷一是错的?
给出重启的debug
  1. Neighbor ID     Pri   State           Dead Time   Address         Interface
  2. 1.1.2.2           1   INIT/DROTHER    00:00:39    1.1.2.2         FastEthernet0/1
  3. 1.1.1.2           1   FULL/DR         00:00:39    1.1.1.2         FastEthernet0/0
  4. R1(config-router)#
  5. *Mar  1 01:03:38.315: OSPF: Rcv hello from 1.1.2.2 area 0 from FastEthernet0/1 1.1.2.2
  6. *Mar  1 01:03:38.315: OSPF: Cannot see ourself in hello from 1.1.2.2 on FastEthernet0/1, state INIT
  7. *Mar  1 01:03:38.319: OSPF: Neighbor change Event on interface FastEthernet0/1
  8. *Mar  1 01:03:38.319: OSPF: DR/BDR election on FastEthernet0/1
  9. *Mar  1 01:03:38.319: OSPF: Elect BDR 0.0.0.0
  10. *Mar  1 01:03:38.319: OSPF: Elect DR 10.10.10.1
  11. *Mar  1 01:03:38.319:        DR: 10.10.10.1 (Id)   BDR: none
复制代码
再次感谢大家的回答。


发表于 2011-3-8 21:04:07 | 显示全部楼层
在一个刚运行OSPF的网络中,每台路由器在hello中设自己为DR,到2-way状态时,收到了所有邻居的hello包,知道所有邻居的接口优先级及route ID,此时,会拿出有权进行DR/BDR选举的路由器,先按优先级,再看route ID,选出BDR,如果此时没有DR,该BDR会升为DR,然后再次进行BDR选择。
如果一台路由器接入一个已运行OSPF的网络,虽然宣告自己为DR,但其他邻居会告诉它已有的DR/BDR,于是会同意已有的
 楼主| 发表于 2011-3-8 21:15:23 | 显示全部楼层
回复 2 # xuchaocisco 的帖子

噢!谢谢回答,那卷一里说:接口加入网络时,设置DR/BDR为0.0.0.0。这个怎么理解?
发表于 2011-3-8 21:47:28 | 显示全部楼层
本帖最后由 tea 于 2011-3-8 21:51 编辑

楼主问的问题总是这么矫情,
报文抓取如下:


其中前几个HELLO包,DR、BDR字段为0.0.0.0,卷一上没有问题,只是你DEBUG抓不出来而已



几个hello报文交互之后,DR、BDR选举出来了

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
 楼主| 发表于 2011-3-8 22:20:22 | 显示全部楼层
回复 4 # tea 的帖子

感谢耿子哥><
搞清楚了。。非常感谢!
发表于 2011-3-8 22:31:59 | 显示全部楼层
说实话 楼主比我强 迷惑就问 细致 我一队问题
*Mar  1 07:12:23.382: OSPF: Neighbor change Event on interface FastEthernet0/0
*Mar  1 07:12:23.382: OSPF: DR/BDR election on FastEthernet0/0
*Mar  1 07:12:23.386: OSPF: Elect BDR 0.0.0.0
*Mar  1 07:12:23.386: OSPF: Elect DR 0.0.0.0
*Mar  1 07:12:23.386:        DR: none    BDR: none
OSPF FULL 8部曲   DOWN-attempt-initiative--2way--exstart ---exchange--load ---full
2way选DR/BDR 2楼很详细
刚开始大家都不知道谁是老大
所以群龙无首  以为0.0.0.0大哥都可能是
所以比武  priority》ID 二哥找到找大哥
ps:OSPFV2是 基于网段选路 V3基于链路 强调
发表于 2011-3-8 22:33:49 | 显示全部楼层
高手都来了哈,牛B了,我来顶下...
发表于 2011-3-8 22:34:39 | 显示全部楼层
tea 发表于 2011-3-8 21:47
楼主问的问题总是这么矫情,
报文抓取如下:

tea好厉害额....
发表于 2011-3-8 22:35:35 | 显示全部楼层
magic_os 发表于 2011-3-8 22:34
tea好厉害额....

您这眼神让我情何以堪………………
发表于 2011-3-8 23:22:46 | 显示全部楼层
抓包的最后必杀都用上了,Tea啊,你都不留着点,哈哈~
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|熊猫同学技术论坛|小黑屋| 网络工程师论坛 ( 沪ICP备09076391 )

GMT+8, 2024-11-22 18:53 , Processed in 0.080351 second(s), 19 queries , Gzip On.

快速回复 返回顶部 返回列表