• 静态路由是指由管理员手动配置和维护的路由。
  • 静态路由配置简单,被广泛应用于网络中。另外,静态路由还可以实现负载均衡和路由备份。

1.1 静态路由应用场景

image.png

  • 静态路由是指由管理员手动配置和维护的路由。
  • 静态路由配置简单,并且无需像动态路由那样占用路由器的CPU资源来计算和分析路由更新。
  • 静态路由的缺点在于当网络拓扑发生变化时,静态路由不会自动适应拓扑变化,而是需要管理员手动进行调整
  • 静态路由一般适用于结构简单的网络。在复杂网络环境下,一般会使用动态路由协议来生成动态路由。不过,即使是在复杂网络环境中,合理地配置一些静态路由也可以改进网络的性能。

1.2 静态路由的配置

image.png

  • 如果使用了广播接口如以太网接口作为出接口,则必须要指定下一跳地址(因为以太网链路需要封装目的MAC地址),如果使用了串口作为出接口,则可以配置出接口,此时不必指定下一跳地址。
  • 在串行网络中配置静态路由时,可以只指定下一跳地址或只指定出接口。华为ARG3系列路由器中,串行接口默认封装PPP协议,对于这种类型的接口,静态路由的下一跳地址就是与接口相连的对端接口的地址,所以在串行网络中配置静态路由时可以只配置出接口。

  • 以太网是广播型网络,和串行网络情况不同。在以太网中配置静态路由,必须指定下一跳地址。

image.png

  • 在广播型的接口上配置静态路由时,必须明确指定下一跳地址。以太网中同一网络可能连接了多台路由器,如果在配置静态路由时只指定了出接口,则路由器无法将报文转发到正确的下一跳。在本示例中,RTA需要将数据转发到192.168.2.0/24网络,在配置静态路由时,需要明确指定下一跳地址为10.0.123.2,否则,RTA将无法将报文转发到RTB所连接的192.168.2.0/24网络,因为RTA不知道应该通过RTB还是RTC才能到达目的地。

1.3 负载分担

image.png

  • 当源网络和目的网络之间存在多条链路时,可以通过等价路由来实现流量负载分担。这些等价路由具有相同的目的网络和掩码、优先级和度量值。
  • 在RTB上配置了两条静态路由,它们具有相同的目的IP地址和子网掩码、优先级(都为60)、路由开销(都为0),但下一跳不同。在RTB需要转发数据给RTA时,就会使用这两条等价静态路由将数据进行负载分担。
  • 在RTA上也应该配置对应的两条等价的默认路由。
  • 本示例中RTA和RTB之间有两条链路相连,通过使用等价的静态路由来实现流量负载分担。

image.png

  • 在配置完静态路由之后,可以使用display ip routing-table命令来验证配置结果。在本示例中,红色高亮部分代表路由器中的静态路由。这两条路由具有相同的目的地址和掩码,并且有相同的优先级和度量值,但是他们的下一跳地址和出接口不同,此时,RTB就可以通过这两条等价路由实现负载分担。

1.4 路由备份

image.png

  • 在配置多跳静态路由时,可以修改静态路由的优先级,使一条静态路由的优先级高于其他静态路由,从而实现静态路由的备份,也叫浮动静态路由。在本示例中,RTB上配置了两条静态路由。正常情况下,这两条静态路由是等价的。通过配置preference 100,使第二条静态路由的优先级要低于第一条(值越大优先级越低)。路由器只把优先级最高的静态路由加入到路由表中。当加入到路由表中的静态路由出现故障时,优先级低的静态路由才会加入到路由表并承担数据转发业务。

验证结果:
image.png

  • 从display ip routing-table命令的回显信息中可以看出,通过修改静态路由优先级实现了浮动静态路由。正常情况下,路由器中应该显示两条有相同目的地、但不同下一跳和出接口的等价路由。由于修改了优先级,回显中只有一条默认优先级为60的静态路由。另一条静态路由的优先级是100,该路由优先级低,所以不会显示在路由表中。

image.png

  • 当主用静态路由出现物理链路故障或者接口故障时,该静态路由不能再提供到达目的地的路径,所以在路由表中会被删除。此时,浮动静态路由会被加入到路由表,以保证报文能够从备份链路成功转发到目的地。在主用静态路由的物理链路恢复正常后,主用静态路由会重新被加入到路由表中,并且数据转发业务会从浮动静态路由切换到主用静态路由,而浮动静态路由会在路由表中再次被隐藏。

1.5 缺省路由

image.png

  • 当路由表中没有与报文的目的地址匹配的表项时,设备可以选择缺省路由作为报文的转发路径。在路由表中,缺省路由的目的网络地址为0.0.0.0,掩码也为0.0.0.0。在本示例中,RTA使用缺省路由转发到达未知目的地址的报文。缺省静态路由的默认优先级也是60。在路由选择过程中,缺省路由会被最后匹配

image.png

  • 配置缺省路由时,可以使用display ip routing-table命令来查看该路由的详细信息。

1.6 配置出接口和下一跳的区别

1.6.1 Flage不相同


  1. Flage:路由标记,默认直接根据出接口送出数据,将路由条目放到转发表,特殊情况下使用下一跳迭代查询出接口。
    1. D:将此路由条目下发到FIB表
    2. R:迭代路由,根据下一跳IP地址获取出接口
      1. 如果静态路由写的是下一跳地址,那么就迭代路由。根据下一跳找出接口
      2. 如果静态路由写的出接口,那么就直接发到FIB表

image.png

1.6.2 ARP请求不相同

  • 如果配置的为下一跳,路由器请求的直接为下一跳地址:

image.png

  • 如果配置的为接口地址,路由器请求的直接为目标网段地址:

image.png
注:由于此时直接请求的是目标网段地址,所以需要在下一跳接口上开启ARP代理功能。