什么是浮动静态路由:通过在一台路由器上设置到达同一目的地的多条静态路由(不同的路径,不同的metric值或AD值),使得来自任意源的数据分组优选开销小的路径,剩下的路径作为备份。

实验拓扑:



自制浮动静态路由实验(简单)_ipad


(没找到packettracer模拟器,先拿gns代替下,但配置都是一样的。)

实验需求:

要求R1身后所有去往192.168.3.0的流量优选高速链路,高速链路故障后,低速链路负责数据传递。

要求R2身后所有去往192.168.4.0的流量优选低速链路,低速链路故障后,高速链路负责数据传递。

实验步骤:

(通常让接口ip的最后一个字节与路由器的编号一致,便于记忆。比如R1的Ethernet0/0口就是192.168.6.1

Step1:配置路由器接口ip

R1:

R1#conf//进入配置模式

R1(config)#inte0/0 //进入接口

R1(config-if)#ipadd 192.168.6.1 255.255.255.0//配置接口ip和掩码

R1(config-if)#nosh//激活接口(路由器物理接口默认关闭)

R1(config-if)#//控制台提示接口激活了

*Mar  100:00:37.471: %LINK-3-UPDOWN: InterfaceEthernet0/0, changed state to up

*Mar  100:00:38.471: %LINEPROTO-5-UPDOWN: Lineprotocol on Interface Ethernet0/0, changed state to up

R1(config-if)#inte0/1

R1(config-if)#ipadd 192.168.5.1 255.255.255.0

R1(config-if)#nosh

R1(config-if)#

*Mar  100:01:03.147: %LINK-3-UPDOWN: InterfaceEthernet0/1, changed state to up

*Mar  100:01:04.147: %LINEPROTO-5-UPDOWN: Lineprotocol on Interface Ethernet0/1, changed state to up

R1(config-if)#inte0/2

R1(config-if)#ipadd 192.168.1.1 255.255.255.0

R1(config-if)#nosh

R1(config-if)#

*Mar  100:01:41.179: %LINK-3-UPDOWN: InterfaceEthernet0/2, changed state to up

*Mar  100:01:42.179: %LINEPROTO-5-UPDOWN: Lineprotocol on Interface Ethernet0/2, changed state to up

 

同理R2:

interfaceEthernet0/0

 ip address 192.168.6.2255.255.255.0

 no shutdown

!

interfaceEthernet0/1

 ip address 192.168.5.2255.255.255.0

 no shutdown

!

interfaceEthernet0/2

 ip address 192.168.3.2255.255.255.0

 no shutdown

!

interfaceEthernet0/3

 ip address 192.168.4.2255.255.255.0

no shutdown

Step2:给PC主机静态配置ip与网关

手动设置:C1是192.168.1.2,网关192.168.1.1(R1的e0/2口)

C2是192.168.3.1,网关192.168.3.2(R2的e0/2口)

C3是192.168.4.1,网关192.168.4.2(R2的e0/3口)

Step3(关键步骤):配置静态路由

R1:

ip route 192.168.3.0 255.255.255.0 e0/1

ip route 192.168.3.0 255.255.255.0 e0/0

ip route 192.168.4.0 255.255.255.0 e0/1

ip route 192.168.4.0 255.255.255.0 e0/0

此时去往每个网络都有两条默认开销一样的路由,查看路由表:



自制浮动静态路由实验(简单)_ipad


发现负载均衡(因为AD与metric相同)

下面更改开销:

R1:ip route 192.168.3.0 255.255.255.0e0/0 2 //把低速链路开销改大

R1:ip route 192.168.4.0 255.255.255.0e0/1 2 //把高速链路开销改大

再查看路由表:



自制浮动静态路由实验(简单)_ipad


流量分行,正合我意

然而



自制浮动静态路由实验(简单)_ipad​ 


ping不通。。

原来去的路由有了,返回的却没有配置,因为R2不知道192.168.1.0网络怎么走。

那么可以R2上再写一个静态缺省路由指向左边即可。

R2(config)#iproute 0.0.0.0 0.0.0.0 e0/1

改过来以后就通了:



自制浮动静态路由实验(简单)_ipad


接下来做一个人为的链路故障,即手动关闭R1的e0/1接口,观察前往3.0网络的备份链路是否成功上位(即写进路由表)。

R1(config)#ine0/1

R1(config-if)#sh

*Mar  100:06:44.203:%LINK-5-CHANGED: Interface Ethernet0/1, changed state toadministratively down

*Mar  100:06:45.203:%LINEPROTO-5-UPDOWN: Line protocol on Interface Ethernet0/1,changed state to down

然后再看一下路由表:



自制浮动静态路由实验(简单)_ipad


成功!同时发现5.0网络随着接口而消失了。

这就是浮动静态路由,然而路由器通常情况下只关心数据包的目的地址而不关心源地址,所以至于涛哥昨天遗留给我们的问题,就是假如R1身后(左边)有多个主机(网段),针对不同的源有不同的浮动策略。因此要让路由器根据源ip进行择路,只有通过ACL(访问控制列表),以后会学到。