设为首页收藏本站language 语言切换
查看: 991|回复: 2
收起左侧

EIGRP指向NULL0的汇总

[复制链接]
发表于 2013-7-22 13:18:07 | 显示全部楼层 |阅读模式

在EIGRP中,只要发生总结就会在路由表中自动产生一条指向NULL0的路由条目,这条路由的直接意思是:匹配这条路由的数据包会被路由器丢掉。它的目的是为了避免在某些情况下产生路由环路。

  假设RTC向RTD发送总结路由2.1.0.0/16,RTD收到后在自己的路由表中添加相应的条目。到此为止一切正常,看不出产生一条指向NULL0的路由条目的用处。但是当被RTC所总结的具体路由出现故障时就会遇到问题。(图中没有)不妨假设RTC的左侧本来有4个子网网段:2.1.0.0/24、 2.1.1.0/24、2.1.2.0/24、2.1.3.0/24(精确总结应该总结为2.1.0.0/22,但以书中的2.1.0.0/16并不影响我们讨论这个问题),如果某一段时间2.1.1.0/24这个网段发生故障,比如接口down了,那么在RTC上会立即有所反映,RTC上关于 2.1.1.0/24的直连路由消失,同时我们知道汇总路由有这样一个特点:被总结的路由中哪怕只有一条是正常的,汇总路由都不会发生变化,也就是说仅仅 RTC的左侧的2.1.1.0/24这个网段失效RTD并不会有所察觉,它的路由表项2.1.0.0/16仍然存在。这时如果RTD收到一个目的地址为 2.1.1.0/24网段的数据包它会把它送到RTC上,而RTC接着查看自己的路由表发现没有2.1.1.0/24这个网段的路由(原因如前所说网段失效后直连路由消失),这样RTC会把这个数据包丢掉。到此为止还是看不出产生一条指向NULL0的路由条目到底有何用处。

  但是在前面我们假设的条件下,当RTC上存在一条缺省路由指向RTD时情况就有所不同了,RTC发现没有2.1.1.0/24这个网段的路由之后,它会按照缺省路由把目的地址为2.1.1.0/24网段的数据包再送回到RTD上,这样就产生了路由环路。这类数据包会反复在RTC和RTD上传送,直到TTL =0为止。这样会占用RTC和RTD之间线路的带宽,很没有必要,而在发生总结的路由器上产生一条2.1.0.0/16 is a summary, Null0 的路由就会打断这个环路,因为在缺省路由生效之前,目的地址为2.1.1.0/24网段的数据包符合2.1.0.0/16 Null0这条路由,因此这类数据包会被RTC丢掉。

  有些资料上把它的功能简单的描述为:当发生总结的路由器上存在缺省路由时,指向NULL0的路由条目可以帮助避免产生环路。

  目前高版本的IOS中,类似EIGRP这类高级路由协议(例如OSPF等)在发生总结时都会自动产生指向NULL0的路由条目。而明白了这个原理之后,对于RIP和IGRP这类协议也可以通过手工设置静态路由的方式(最后的接口直接写NULL0)实现相同的功能。


发表于 2013-7-22 14:02:22 | 显示全部楼层
意思是匹配汇总路由但汇总路由里没有明细路由,称为黑洞路由,确实能避免环路
沙发 2013-7-22 14:02:22 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-7-22 19:46:34 | 显示全部楼层
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2025-2-2 14:53 , Processed in 0.064708 second(s), 13 queries , Redis On.  

  Powered by Discuz!

  © 2001-2025 HH010.COM

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