两个主要特性
- 如果网络拓扑结构发生变化,那么需要知道这些变化的路由器必须被重新配置
- 可以用静态路由建立非常精确的路由行为
IPv6静态路由
IPv6静态路由的配置方法和IPv4基本相同,唯一不同的是IPv4网络掩码使用点分十进制形式,而IPv6使用目标网络的前缀长度。
IPv6路由选择缺省情况下是关闭的,在输入IPv6静态路由前必须使用命令ipv6 unicast-routing启动IPv6路由选择。
与IPv4相同,在向路由表中添加路由选择之前,出站接口必须有效,并且接口上已配置IPv6地址。
静态路由的命令是 ipv6 route,该命令后的参数是目标网络、前缀长度(单位是比特)和下一跳路由器地址或者去往目标地址的出站接口。
在为IPv6网络分配地址时,要想预先指定下一跳地址,就必须手工指定接口ID,而不能使用自动构建的EUI-64格式的地址。如果数据链路上接口已经配置的EUI-64的接口ID,那么就只能指定地址的前64位。路由器将基于MAC地址确定后64位。如果路由器被新路由器替换,那么相应的IPv6地址也不同。
为了标识邻接路由器的128位IPv6地址,可以使用Cisco发现协议(CDP)的统计信息
与IPv4一样,IPv6静态路由也可以使用出站接口替代下一跳地址
- 在接口后面输入地址,可以输入链路本地地址,或者一个配置的地址
- 当出站接口是广播接口时,应当使用下一跳地址
虽然使用出站接口后静态路由的管理距离任为1,但是这和使用相同方法配置的IPv4路由不相同,因为路由显示目标网络不是直连的。除非同时使用指定出站接口和下一跳地址,否则在输入出站接口时下一跳地址是不确定的。
在点到点的串行接口上,不指定下一跳地址不会出现问题,因为在点到点网络的另一端只有一台设备,所有从出站接口发出的数据包一定发往该设备。
而在广播网络接口上,路由器必须找到邻居才可以发送数据包,路由器会在以太网上组播邻居请求消息,并等待下一跳设备的邻居通告。因而对于以太网上具有去往目标网络的路由器来说,它不会代表其他设备响应邻居请求消息。
因此在广播网络上使用出站接口配置静态路由时,必须指定下一跳地址。
路由器向广播网络上的所有设备通告自己的存在及本地链路地址。主机使用这些通告信息建立路由器列表,并使用这些列表确定如何向网络转发数据包。如果主机把一个数据包转发给路由器,并且该路由器知道一个更加适合转发该数据包的路由器,那么路由器将向主机发送重定向信息。重定向信息包括另一台路由器的本地IPv6地址。当主机在处理重定向信息时,如果路由器列表中包含这台更适合的路由器,那么主机将向它转发数据包,否则主机将丢弃数据包。
汇总路由
汇总路由是一个包含路由表中几个更加精确地址的地址
由于路由表项与地址掩码联合使用,通过使用合适的子网掩码,可以为多个目标地址生成一条单一的汇总路由
汇总路由同样可以在IPv6中使用
通过对一组子网甚至主网汇总,可以使静态路由项的数目减少,但在对地址进行汇总时需要小心,汇总不正确时会有意想不到的路由行为发生
浮动静态路由
路由表中的其他路由总是优于浮动静态路由,仅在一种特殊情况下,即在一条首选路由发生失败时,浮动路由才会出现在路由表内
与路由信息的管理距离相关,结合相关动态协议使用
对于相同的目标网络,缺省情况下,到相同目标网络的静态路由总是优于动态路由
IPv6同样具有浮动静态路由特性
递归表查询
路由表项不必一定指向下一跳路由器
R1配置静态路由表项
R1(config)#ip route 10.1.1.0 255.255.255 192.168.34.4
R1(config)#ip route 192.168.34.0 255.255.255.0 192.168.23.3
R1(config)#ip route 192.168.23.0 255.255.255.0 192.168.12.2
R1在向主机10.1.1.1发送数据包时,R1将查找路由表并发现经过192.168.34.4可以到达这个子网,但这个地址不在直连网络中,R1必须再次查询路由表并发现去往192.168.34.4需要经过192.168.23.3,但这个地址也不在直连网络中,继续查询路由表发现192.168.12.2并且在一个直连子网中,经过三次查询,开始转发数据包
每次查询路由表都会花费处理器的时间,所以在正常情况下,强制路由器多次查询路由表并非一个好的设计
快速交换对递归查询进行了限制,仅对去往目的网络的第一个进行递归查询,从而有效地降低了这些不利的影响