A-A+

关于缺省路由传递问题的探讨(ip default-network、ip default-g

2015年12月28日 站长资讯 暂无评论

1、Ip default-gateway

仅在路由器关闭路由功能的时候(no ip routing)有效;

路由器在boot模式下,做软件升级的时候,由于ip routing也是关闭的,因此在必要时该命令也会用到

2、Ip default-network

当使用Ip default-network在本地指一个网络时,这个网络号如果在路由表中存在,那么路由器会将该网络指定为缺省网关。

实验1

完成基本的IP配置,

R2上 ip route 192.168.1.0 255.255.255.0 172.16.12.1 // 路由表中有了标记为S条目

Ip default-network 192.168.1.0

路由表:

Gateway of last resort is 172.16.12.1 to network 192.168.1.0
S* 192.168.1.0/24 [1/0] via 172.16.12.1

Ip default-network 将192.168.1.0标记为缺省路由,而去往该网络的下一跳172.16.12.1即成为R2的缺省网关

如此一来,R2ping 1.1.1.1就能通了

实验2

完成基本的IP配置,然后在R2上

ip route 172.16.3.0 255.255.255.0 172.16.12.3

ip default-network 172.16.3.0

查看R2的路由表:

S 172.16.0.0/16 [1/0] via 172.16.3.0 // 出来一条汇总路由,而不是缺省路由

S 172.16.3.0/24 [1/0] via 172.16.23.3

R2 show run后发现:

ip default-network 172.16.3.0 变成了:ip route 172.16.0.0 255.255.0.0 172.16.3.0

这是因为ip default-network 是有类的,因此如果使用该命令标记一个子网,实际上路由器会安装主类路由进路由表

因此不会产生任何缺省路由。所以这时候就在上面的基础上,由于产生了172.16.0.0的路由,因此再使用(二次使用)

ip default-network 172.16.0.0 将172.16.0.0指定为缺省路由(172.16.0.0在路由表中已经有条目了),这样一来路由表:

  1. Gateway of last resort is 172.16.3.0 to network 172.16.0.0  
  2. *  172.16.0.0/16 is variably subnetted, 4 subnets, 2 masks  
  3. S*  172.16.0.0/16 [1/0] via 172.16.3.0  
  4. S  172.16.3.0/24 [1/0] via 172.16.23.3  

如此R2就能ping通3.3.3.3

实验3

前面是使用静态路由,如果使用动态路由协议,那么情况就不太一样了

例如IGRP或EIGRP,ip default-network 命令指定的网络就必须是通过IGRP或EIGRP获取到的(宣告、学习或重发布)

如果是RIP,ip default-network命令指定的网络则无需被显式的宣告进RIP,且一旦缺省网关被指定,RIP会发布一条默认路由(0.0.0.0/0)进RIP,传递给其他路由器。

例如R1、R2、R3运行RIP,在R1上开loopback 192.168.1.0/24

RIP只宣告直连链路,在R1上ip defaut-network 192.168.1.0 ,则会传递0.0.0.0的默认路由进RIP,R2R3都会学习到

总结:

如果使用ip default-network指定了多个候选缺省路由,那么拥有最低AD的将会成为缺省路由,并且设定为缺省网关(gateway of last resort),如果AD都相等,那么show ip route 第一个显示的,就作为缺省网关。如果同时使用ip defaut-network及ip route 0.0.0.0 0.0.0.0,且ip defaut-network指定的网络为静态路由配置的,那么ip defaut-network的优先,并且成为缺省网关 gateway of last resort。但如果ip defaut-network指定的网络是学习自动态路由协议,则ip route 0/0的优先。
更详细的内容,可至CISCO官网查阅文档:文档地址。

标签:

给我留言