1. 基本静态路由
我们以Cisco路由器为例,看看静态路由怎么添加到路由器中。
静态路由添加的命令是:
Ip route destination_network destination_mask next_hop distance
Destination_network是目的网络地址,当然也可以是主机地址;
Destination_mask是目的网络掩码,当然也可以是255.255.255.255;
Next_hop是下一跳IP地址,也可以是本地接口地址;
Distance是管理距离。
请看下面的例子:
PC1————–àfa0/0-Router1fa0/1<————-àfa0/0-Router2 fa0/1<————PC2
10.10 10.1 12.1 12.2 20.1 20.20
PC1下面的10.10指的是PC1连接Router1的接口的IP地址,掩码默认为24位,其他依此类推其他地址。如果需要PC1和PC2互相通信,则必须做如下配置:
1:配置PC1的IP地址为192.168.10.10,网关地址为192.168.10.1;
2:配置Router1 fa0/0接口的地址为192.168.10.1,fa0/1的地址为192.168.12.1;
3:配置Router2 fa0/0接口的地址为192.168.12.2,fa0/1的地址为192.168.20.1;
4:配置PC2的IP地址为192.168.20.20,网关地址为192.168.20.1;
这四步只是基本配置,并不能使得PC1和PC2只能能够通信。在路由器上添加路由条目是必须的:
1:在Router1上添加到达PC2(目的)的路由条目
Ip route 192.168.20.20 255.255.255.255 192.168.12.2
在Router1上添加到达PC1的(源)路由条目。需要注意的是,在这里,PC1和Route1直连,在Router1上有一条直连路由说明PC1直接连接在了Router1上。可以通过show ip route 192.168.10.10来查看这条直连路由。
2:在Router2上添加到达PC2(目的)的路由条目。需要注意的是,在这里,PC2和Router2直连,在Router2上有一条直连路由说明PC2直接连接在了Router2上。可以通过show ip route 192.168.20.20来查看这条直连路由;
在Router2上添加到达PC1(源)的路由条目:
Ip route 192.168.10.10 255.255.255.255 192.168.12.1
这样,PC1发出的数据就可以到达PC2了。同样,如果PC2发出的数据想要到达PC1,在数据包即将经过的所有路由器上,必须有到达源PC2的路由和到达目的PC1的路由。
静态路由注意事项:
Ip route命令中的next_hop可以是下一跳路由器的IP地址,也可以是本地接口的名称。
只有在接口封装了点对点协议的时候,next_hop才可以写为接口的名称;否则,只能写下一跳IP地址。
数据的转发是依靠路由来指示的。查看路由的命令是show ip route,show run这个命令只能查看配置清单!只有出现在路由表中的路由条目才可以指示数据包的流向!!
2.浮动静态路由
当路由器有两个出口可以到达目的地址的时候,有时我们希望一条链路主用,另外一条链路备用。当主用链路故障后,启用备用链路。主要的目的就是为了保证不间断通信。浮动静态路由就可以实现这样的功能。
在前面我们知道了如何添加静态路由,以及ip route命令的一些参数。链路的主备,归根结底是路由条目的主备。通过调整Distance参数,就可以让特定的路由优先于其他路由条目。
Distanc是一个位于0-255之间的值。0表示此路由优先级最高,255则标示路由不可达,优先级最差。
主用链路的路由distance值只要低于备用链路的路由distance值。链路正常的情况下,主路由就一直出现在路由表中,备用路由则无法出现在路由表中。
当主链路出现故障主路由消失后,备用路由"浮起来",出现在路由表中。成为数据转发的依据。
这样以来,静态路由也具备了一些"动态"的特征!
3. 静态路由汇总
如果可以通过汇总的方式把多个目的网络汇总成1个大的网络的话,就可以使用静态路由汇总的方法以减少路由表的大小。
比如目的网络有:
192.168.0.0/24
192.168.1.0/24
192.168.2.0/24
192.168.3.0/24
在这种情况下,将目的网络汇总成192.168.0.0/22.原本要添加4条路由条目,现在只要1条就可以完成了:
Ip route 192.168.0.0 255.255.252.0 next_hop
静态路由汇总一方面可以减小路由表的大小,另外一方面可以起到备份的作用。
4. 默认路由
当我们添加路由的时候,有多少目的网络,一般添加多少路由条目。当然也可以通过汇总的方法来缩减路由表的大小。如果是一台面向Internet的路由器,目的网络何止万千,添加路由将是一个可怕的恶梦。
幸好有默认路由可以帮助我们解决这个问题。
我们看看下面两种默认路由:
1:ip route 0.0.0.0 0.0.0.0 next_hop
2:ip default-network next_hop
第一种默认路由的目的网络为0.0.0.0,掩码的长度为0.在学习IP地址的时候,我们知道0.0.0.0是一种特殊的IP地址,代表所有节点。掩码是为了决定IP地址的网络部分和主机部分,当掩码长度为0的时候,则可以匹配任何IP地址。