前言

上一章节介绍了IP数据包是根据目的IP查找路由表转发的,路由表的来源主要有直连路由,静态路由,动态路由。路由技术详解|IP数据包是如何在网络中转发的?

今天我们来看下静态路由,那么什么是静态路由,如何配置静态路由,如何通过静态路由实现负载分担和主备路由?带着这些疑问一起来看下今天的内容吧!

正文

1什么是静态路由

静态路由是指由管理员手动配置和维护的路由。

如何理解静态路由呢?配置一条静态路由就是告诉路由器怎么去往某一个目的IP或IP网段?就好比我们需要去某个地方,别人直接告诉我们往哪个方向走。

2静态路由相比动态路由的优缺点:

优点:静态路由配置简单,并且无需像动态路由那样占用路由器的CPU资源来计算和进行路由更新。

缺点:当网络拓扑发生变化时,静态路由不会自动适应拓扑改变,而是需要管理员手动进行调整。

3静态路由配置:

ip route-static ip-address { mask | mask-length } interface-type interface-number [ nexthop-address ] 命令用来配置静态路由。

参数ip-address指定了一个网络或者主机的目的地址,参数mask指定了一个子网掩码或者前缀长度。

注意

  • 如果使用了广播接口如以太网接口作为出接口,则必须要指定下一跳地址;
  • 如果使用了串口作为出接口,则可以通过参数interface-type和interface-number(如Serial 1/0/0)来配置出接口,此时不必指定下一跳地址。

实例

如何通过静态路由实现通信PC1和PC2通信?

PC1配置:

PC2配置:

路由器R1上配置接口IP和去往PC2的静态路由:

通过查看路由表可以看到配置的去往PC2的静态路由:

路由器R2上配置接口IP和去往PC2的静态路由:

通过查看路由表可以看到配置的去往PC1的静态路由:

结果验证: PC1上ping PC2, 结果显示可以ping通

4静态路由如何实现负载分担和主备路由?

负载分担

静态路由支持到达同一目的地的等价负载分担

当源网络和目的网络之间存在多条链路时,可以通过等价路由来实现流量负载分担。这些等价路由具有相同的目的网络和掩码、优先级和度量值。

本示例中R1和R2之间有两条链路相连,通过使用等价的静态路由来实现流量负载分担。

在R1和R2上配置了两条静态路由,它们具有相同的目的IP地址和子网掩码、优先级(都为60)、路由开销(都为0),但下一跳不同。在R1和R2互相通信时,就会使用这两条等价静态路由将数据进行负载分担。

R1的等价静态路由配置:

在配置完静态路由之后,可以使用display ip routing-table命令来验证配置结果。

在本示例中,红框部分代表路由表中的静态路由。这两条路由具有相同的目的地址和掩码,并且有相同的优先级和度量值,但是它们的下一跳地址和出接口不同。此时,R1就可以通过这两条等价路由实现负载分担。

R2的等价静态路由配置:

静态路由实现主备路由:

在配置多条静态路由时,可以修改静态路由的优先级,使一条静态路由的优先级高于其他静态路由,从而实现静态路由的备份,也叫浮动静态路由

在本示例中,R1和R2上配置了两条静态路由。正常情况下,这两条静态路由是等价的。通过配置preference 100,使第二条静态路由的优先级要低于第一条(值越大优先级越低)。路由器只把优先级最高的静态路由加入到路由表中。

当加入到路由表中静态路由出现故障时,优先级低的静态路由才会加入到路由表并承担数据转发业务。

R1的配置:配置一条的静态路由的preference 为 100

display ip routing-table命令的回显信息中可以看出,通过修改静态路由优先级实现了浮动静态路由

正常情况下,路由表中应该显示两条有相同目的地、但不同下一跳和出接口的等价路由。由于修改了优先级,回显中只有一条默认优先级为60的静态路由。另一条静态路由的优先级是100,该路由优先级低,所以不会显示在路由表中。

R2的配置:配置一条的静态路由的preference 为 100

当主用静态路由出现物理链路故障或者接口故障时,该静态路由不能再提供到达目的地的路径,所以在路由表中会被删除。此时,浮动静态路由会被加入到路由表,以保证报文能够从备份链路成功转发到目的地。

在主用静态路由的物理链路恢复正常后主用静态路由会重新被加入到路由表,并且数据转发业务会从浮动静态路由切换到主用静态路由,而浮动静态路由会在路由表中再次被隐藏。

在R1上关闭接口,查看下路由表可以发现浮动静态路由被加入路由表

5特殊的静态路由——缺省路由

当路由表中没有与报文的目的地址匹配的表项时,设备可以选择缺省路由作为报文的转发路径。在路由表中,缺省路由的目的网络地址为0.0.0.0,掩码也为0.0.0.0。

在本示例中,R1使用缺省路由转发到达未知目的地址的报文。缺省静态路由的默认优先级也是60。在路由选择过程中,缺省路由会被最后匹配。

配置缺省路由后,可以使用display ip routing-table命令来查看该路由的详细信息。在本示例中,目的地址在路由表中没能匹配的所有报文都将通过GigabitEthernet 0/0/0接口转发到下一跳地址10.1.1.2。

6静态路由的应用场景:

1、静态路由一般适用于结构简单的网络。在复杂网络环境中,一般会使用动态路由协议来生成动态路由。

2、即使是在复杂网络环境中,合理地配置一些静态路由也可以改进网络的性能