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

[已解决] EIGRP实验中一些问题

[复制链接]
发表于 2013-9-28 22:20:37 | 显示全部楼层 |阅读模式
EIGRP用静态路由定义一条null0路由模拟默认网络向EIGRP通告一条默认路由,再在本地定义一条0.0.0.0/0默认路由,为什么数据包到达此路由器不会使用null0路由从而将数据包丢弃而是使用0.0.0.0/0将数据转发出去了?
ip route 0.0.0.0 0.0.0.0 int f0/0
ip route 192.168.1.0 255.255.255.0 null0
ip defalut-network 192.168.1.0
router eigrp 100
  network 192.168.1.0
sh ip ro
S*  192.168.1.0 via null0
S*  0.0.0.0 via int f0/0
还有发送EIGRP分组(包)时,将使用密钥链中密钥号最小的有效密钥;收到分组后,将检查当前所有有效密钥为止,这是NP书上的一句话,按我的理解假设2边的keychain交叉(key1key2交叉),key1互相匹配对方的key2也应该能通过验证,但实验结果是key不匹配的,不回去匹配key2
R1:key 1 -- text “qwer”  key 2 -- “asdf”
R1:key 1 -- text “asdf”  key 2 -- “qwer”
以上2个问题,谢谢
发表于 2013-9-28 23:27:10 | 显示全部楼层
本帖最后由 JOJO_HAM 于 2013-9-28 23:48 编辑

1.我觉得你的第一个问题配置有点问题,如果你要下放缺省路由,你可以使用路由重分发下放,或者是全0/0的静态路由(只指出栈接口)然后network 0.0.0.0 下放,你要使用ip defalut-network 下放的话,就会有两种方式:ip defalut-network+主类网段(去往外网的),一条去往这个主类网段的路由条目/或者是主类网段去往null 0接口的条目  最后在宣告这个主类网段。你上面的配置貌似有点奇怪,NULL0接口用途是用来防环的,他还是会先匹配,如果没匹配到才会丢弃的(个人理解)
2.这个keychain只具有本地的意义,但是在在接口上调用keychain,然后你的keychain里面可以有若干把key,你的hello报文发送的时候默认封装key编号最小的那一把密钥,然后去匹配你对端keychain里面的密钥,在保证key编号和key一致的情况下你才能建立邻居关系,而你上面的虽然有相同的密钥,但是key编号不同,认证也是不通过的,
这是我的理解
沙发 2013-9-28 23:27:10 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-9-29 10:47:37 | 显示全部楼层
JOJO_HAM 发表于 2013-9-28 23:27
1.我觉得你的第一个问题配置有点问题,如果你要下放缺省路由,你可以使用路由重分发下放,或者是全0/0的静态 ...

谢谢 第一个问题就像你说的一样p defalut-network需要主类网络,所以创建了一条C类NULL0路由,这个是当时老师上课讲的一条配置,他说通告8个0路由进EIGRP会有点问题,通常都是环回模拟ISP创建默认网络,如果环回不是主类就需要写NULL0路由,再在本地写一条8个0静态默认路由,当时EIGRP的其他网络数据包通过这台路由器是可以正常访问的,默认网络是192.168.1.0,我觉得有疑问问什么匹配会匹配8个0而不是null0,l老师说记住就好了,含糊其辞所以来问问,第二个问题收到分组后,将检查当前所有有效密钥为止这句话不是很理解,求解释
板凳 2013-9-29 10:47:37 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2013-9-29 12:12:23 | 显示全部楼层
本帖最后由 JOJO_HAM 于 2013-9-29 12:20 编辑
若止初见 发表于 2013-9-29 10:47
谢谢 第一个问题就像你说的一样p defalut-network需要主类网络,所以创建了一条C类NULL0路由,这个是当时 ...

这个null 0 是为了防止路由黑洞或者环路的,路由器是按最长匹配算法选择路由,如果里面没有明确的路由,才会发往null 0,现在你有一个0/0的缺省路由,就可以匹配到了,所以就会你的0/0的接口发送出去,应该是这样理解吧!
至于第二个,好比说R1里面有个keychain 叫做CISCO,然后里面有key 10 密钥为AAA  key 20 密钥为BBB,key 30 密钥为CCC ,然后接口调用keychain 时,只会把key 10 密钥AAA 放入hello报文里面去,对端的R2 keychain  为CCIE 里面有 key 5 密钥为 AAA  key 10 密钥为AAA,你在接口调用CCIE的密钥链,当然你可以有多个密钥链,但是你接口只能调用一个,那其他没调用的可以理解为不是有效的密钥,或者你做了一些对于密钥的时间限制,在一些时段使用某些密钥,那么过了这些时间那你的密钥也会失效的,这些失效的密钥就不是有效的密钥了。你R1发过来的首先会和R2里面的key 5匹配,这时候发现密钥匹配,但是密钥编号,所以认证不通过,然后在去匹配 key 10  发现,key 编号和密钥都一致,认证通过, 而这个“为止”,应该是匹配到密钥的意思,如果匹配到了,下面还有密钥,那么他也不会继续匹配了这句话应该是这个意思,
个人意见,如果不正确也希望多讨论,其实不比纠结于这个,关键是你要保证key编号和key密钥一致就可以了,
地板 2013-9-29 12:12:23 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-9-29 18:58:10 | 显示全部楼层
JOJO_HAM 发表于 2013-9-29 12:12
这个null 0 是为了防止路由黑洞或者环路的,路由器是按最长匹配算法选择路由,如果里面没有明确的路由,才 ...

嗯,有点钻牛角尖了,这样是可以理解了,谢谢
5# 2013-9-29 18:58:10 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-9-29 19:12:31 | 显示全部楼层
本帖最后由 若止初见 于 2013-9-29 19:24 编辑
JOJO_HAM 发表于 2013-9-29 12:12
这个null 0 是为了防止路由黑洞或者环路的,路由器是按最长匹配算法选择路由,如果里面没有明确的路由,才 ...

实测可能是这样的,在验证的时候会从最小的有效key开始匹配,直到匹配到对端发过的keyid一致的key, 然后key-string一致的话就会验证通过,谢谢讲解,原来是我之前理解错了,还有麻烦问下帖子怎么编辑为已解决,新人不懂。。
6# 2013-9-29 19:12:31 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2013-10-22 22:17:22 | 显示全部楼层
7# 2013-10-22 22:17:22 回复 收起回复
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-4-30 14:54 , Processed in 0.065272 second(s), 24 queries , Redis On.  

  Powered by Discuz!

  © 2001-2025 HH010.COM

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