最新消息:点击查看大S的省钱秘笈

探究几种静态路由的行为及自动删除行为

网络相关 Slyar 93浏览 0评论

文章作者:姜南(Slyar) 文章来源:Slyar Home (www.slyar.com) 转载请注明,谢谢合作。

【实验拓扑】

【实验描述】

接口信息不说了,简单写一下各路由间的初始静态路由。设置R3的目的是为了测试当R1的f0/0接口Down掉,但同时下一跳12.12.12.2还可达的情况。

R1:

ip route 12.12.12.0 255.255.255.0 13.13.13.3

R2:

ip route 12.12.12.0 255.255.255.0 23.23.23.3

R3:

ip route 0.0.0.0 0.0.0.0 23.23.23.2
ip route 12.12.12.1 255.255.255.255 13.13.13.1

接下来就是在R1上设置各种方式的静态路由,使其与2.2.2.2可达。

【实验步骤】

一、只使用下一跳方式配置静态路由

ip route 2.2.2.0 255.255.255.0 12.12.12.2

只使用下一跳

路由器行为:

1、R1匹配2.2.2.0/24的路由条目,发现下一跳地址为12.12.12.2
2、R1递归查找路由表,直到找到出站接口。本例中只需要递归查找一次即可在直连路由中找到12.12.12.2的出站接口为f0/0
3、R1的出站接口f0/0向外发送ARP广播寻找12.12.12.2的MAC地址,R2收到该ARP后将与R1相连的接口返回给R1,R1将该ARP缓存到ARP Cache。以后再有去往R2的数据包就不必发送ARP请求了,因为下一跳地址都是12.12.12.12,因此可以从ARP缓存中直接读取目的MAC地址
4、R1将数据包由f0/0接口发出
5、最终ARP缓存中,只存在12.12.12.2的条目

下一跳缓存

本地接口Down:如果下一跳可达,路由条目不消失;如果下一跳不可达,路由条目消失。但如果接口全部Down,非直连网络的接口UP导致下一跳可达(即12.12.12.2不是通过直连网络连通,像本例中的R1->R3->R2),路由条目不恢复!

实验步骤(起初全部联通):

shutdown f0/0 观察路由条目不消失

shutdown f1/0 观察路由条目消失

no shutdown f1/0 观察路由条目不恢复

no shutdown f0/0 观察路由条目恢复

二、只使用出站接口方式配置静态路由

ip route 2.2.2.0 255.255.255.0 f0/0

只使用接口模式

路由器行为:
1、R1匹配2.2.2.0/24的路由条目,无需递归查询,直接找到出站接口f0/0
2、R1的出站接口f0/0向外发送ARP广播寻找2.2.2.2的MAC地址
3、路由器R2收到该ARP,由于Proxy-ARP默认开启,R2会在自己的路由表中查找2.2.2.2条目,如果找到就向自己下面的接口继续发送ARP广播寻找2.2.2.2的MAC地址
4、R2将2.2.2.2的MAC地址(就是与R1相连接口的MAC地址)返回给R1,R1将该ARP缓存到ARP Cache。由此可见,当R2下面接着的主机数目很多时,R1会发送大量的ARP请求并且在ARP缓存中产生大量的ARP条目。
5、R1将数据包由f0/0接口发出
6、最终ARP缓存中,只存在2.2.2.2的条目

接口缓存

本地接口Down:路由条目消失

三、同时使用出站接口和下一跳方式配置静态路由,但是两条命令分开写

ip route 2.2.2.0 255.255.255.0 12.12.12.2
ip route 2.2.2.0 255.255.255.0 f0/0

分开写

路由器行为:
1、有CEF的话按CEF进行负载均衡,关闭CEF的话按包进行负载均衡。关闭CEF,可以看到前2个包均不通,这是由于两种方式发送ARP请求的MAC地址不同。
2、负载均衡下路由器行为与上面两种相同,做两次就好了。
3、最终ARP缓存中,12.12.12.2的条目和2.2.2.2的条目均存在(关闭CEF之后才能看出效果)。

分开ARP

本地接口Down:无论下一跳是否可达,直连路由条目(接口方式配置)消失。下一跳路由条目情况同一。

四、联合使用接口和下一跳方式配置静态路由,在一条命令中同时配置下一跳和出站接口

ip route 2.2.2.0 255.255.255.0 f0/0 12.12.12.2

联合写

路由器行为:
1、R1匹配2.2.2.0/24的路由条目,发现下一跳地址为12.12.12.2,并且无需递归查询,直接找到出站接口f0/0
2、R1的出站接口f0/0向外发送ARP广播寻找12.12.12.2的MAC地址,R2收到该ARP后将与R1相连的接口返回给R1,R1将该ARP缓存到ARP Cache。以后再有去往R2的数据包就不必发送ARP请求了,因为下一跳地址都是12.12.12.12,因此可以从ARP缓存中直接读取目的MAC地址。
3、R1将数据包由f0/0接口发出
4、最终ARP缓存中,只存在12.12.12.2的条目

2011-09-20_193825

本地接口Down:即使下一跳可达,路由条目也会消失

转载请注明:Slyar Home » 探究几种静态路由的行为及自动删除行为

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

网友最新评论 (2)

  1. 嗯,有道理,当时编辑的时候有点混乱...
    Slyar4年前 (2012-08-23)回复
  2. 二、只使用出站接口方式配置静态路由 ip route 2.2.2.0 255.255.255.0 f0/0 下面的说明: R2将2.2.2.2的MAC地址(就是与R1相连接口的MAC地址)返回给R1。 容易误导,不是2.2.2.2的mac地址,应该是12.12.12.2的mac地址返回给R1。
    jacob4年前 (2012-08-07)回复