首页 理论教育 计算机网络设备实践教程:静态路由配置

计算机网络设备实践教程:静态路由配置

时间:2023-11-17 理论教育 版权反馈
【摘要】:静态路由配置指令格式如下。配置静态路由可以实现全网互通。图8-1静态路由配置1.配置接口IP地址首先配置图中接口上的IP地址,路由器A的配置指令如下,其他路由器类似。上面的指令添加了一条静态路由,之后使用“no”指令取消了,然后再次添加了这条静态路由。

计算机网络设备实践教程:静态路由配置

静态路由配置指令格式如下。

Ruijie(config)# ip route [vrf vrf_name]network mask {ip-address | interface-type interfacenumber [ip-address]} [distance][tag tag][permanent | track object-number][weight weight][disable | enable]

上面给出的是完整的命令格式,括号内的指令可写可不写,花括号内给出的选项必须选一个。配置静态路由需要这么多的指令吗?其实,上面看似复杂的指令格式中很多是可选参数,配合其他技术时可能才用得到,我们经常用到的指令很简单,格式如下。

Ruijie(config)# ip route network mask ip-address

其中“network”表示要到达的目标网络;“mask” 表示要到达的目标网络相应的子网掩码;“ip-address”表示下一站的IP地址,即相邻路由器的端口IP地址。

图8-1中有4台路由器,通过同步串口连接,路由器A与路由器D上分别配置了环回接口,接口与IP地址如图所示。配置静态路由可以实现全网互通。

图8-1 静态路由配置

1.配置接口IP地址

首先配置图中接口上的IP地址,路由器A的配置指令如下,其他路由器类似。

在对交换机A的配置过程中并没有在端口S2/0上配置波特率,因为锐捷交换机在同步串口链路DCE端默认配置了64 000的波特率。下列指令查看端口Serial 2/0的配置信息。

这里需要注意:同步串口链路一端是DCE,另一端是DTE,波特率只能在DCE端配置,可以通过“show interfaces 端口号”查看端口类型。下列指令在路由器B的S2/0端口(DTE)配置波特率,提示错误

2.配置静态路由

4台路由器上配置完接口IP地址后,可以分别查看每台设备上的路由表,使用“show ip route”指令,路由器A上的查看结果如下。

结果中可以看出,路由器A有两个直连网段字母“C”代表connected,是直连路由的意思,类似的,字母“S”代表静态路由,字母“R”代表RIP动态路由等。网段“1.1.1.0/24”与“12.12.12.0/24”是直连网段,所连接的接口分别是“Loopback 0”和“Serial 2/0”。“1.1.1.1”和“12.12.12.1”是路由器接口上配置的IP地址。其他3台路由器上的配置信息与路由器A类似。

此时在路由器A上使用“ping”命令测试直连网段“12.12.12.0/24”中“12.12.12.2”的连通性。

直接使用“ping”命令时,ICMP数据包中的IP源地址是与目标地址在同一网段的“12.12.12.1”,目标地址是“12.12.12.2”。在路由器A中查找路由表,能够找到对应的表项“C 12.12.12.0/24 is directly connected,Serial 2/0”,因此,数据包从Serial 2/0接口发出。路由器B从S2/0接口接收到该数据包之后将发送ICMP应答数据包,应答数据包中的源IP地址和目的IP地址与ICMP请求数据包中的源IP地址和目的IP地址位置互换,目的地址为“12.12.12.1”。在路由器B中查找路由表,也能找到对应的表项“C 12.12.12.0/24 is directly connected,Serial 2/0”,所以应答数据包从路由器B的Serial 2/0接口发出,路由器A收到后认为路由器B(12.12.12.2)可达。

当使用扩展ping命令“ping 12.12.12.2 source 1.1.1.1”时,我们指定了ICMP数据包中的IP源地址是“1.1.1.1”,目标IP地址仍然是“12.12.12.2”。在路由器A中查路由表后从Serial 2/0接口发出,路由器B从S2/0接口收到该数据包之后将发送ICMP应答数据包,应答数据包中的源IP地址和目的IP地址与ICMP请求数据包中的源IP地址和目的IP地址位置互换,目的地址为“1.1.1.1”,在路由器B中查找路由表,找不到对应表项,因此,次数据包丢掉。所以路由器A收不到ICMP应答数据包,路由器A认为路由器B(12.12.12.2)不可达。(www.xing528.com)

在路由器B上配置静态路由,增加一条静态路由表项,告诉路由器B要想把数据包送到“1.1.1.0/24”可以通过自己的S2/0接口发出去,交给“12.12.12.1”。

查看路由器B上的路由表可以看到“S”标记的静态路由表项,这是刚刚用指令添加的。再次使用扩展ping命令测试路由器A与B的连通性,结果是可以连通的。

在路由器A上继续向右方的IP地址进行ping测试,测试“23.23.23.2”是否能够“ping”通,发现无论是普通ping还是扩展ping都无法“ping”通IP地址“23.23.23.2”。IP地址“12.12.12.2”与“23.23.23.2”在同一台路由器上,为什么“12.12.12.2”能“ping”通而“23.23.23.2”不行呢?原因很简单,在路由器A上并不存在通往“23.23.23.0/24”网段的路由表项,换句话说,路由器A不知道应该将目的地址为“23.23.23.0/24”的数据包向哪个接口发出。下面在路由器A上添加静态路由,命令如下。

上面的指令添加了一条静态路由,之后使用“no”指令取消了,然后再次添加了这条静态路由。两次添加的静态路由有一点区别:第一次并没有指定数据包发出时的接口,只有下一站的IP地址;第二次指定得比较明确,两者都有。不同的命令可以完成相同的效果:为“23.23.23.0/24”网段指明方向,但产生的路由表项也存在差异,仔细观察两次“show ip route”的结果。第一次的路由表项中并没有出接口,只有“via 12.12.12.2”(通过12.12.12.2转发),路由器将再次查表“C 12.12.12.0/24 is directly connected,Serial 2/0”才能确定数据包从Serial 2/0发出。通常在以太网链路上配置静态路由的时候,配置下一站的IP地址即可。

在路由器A上“ping”路由器C上的“23.23.23.3”,发现是不通的。在路由器A和C上使用命令“show ip route”查看路由表发现两个路由器上都存在针对“23.23.23.0/24”的路由转发表项,ICMP请求数据包最终可以被路由器C的S3/0接口收到,而在路由器C上查看路由表却发现没有返回的路由表项,路由器C不知道如何将数据包送回到“12.12.12.1”和“1.1.1.1”地址去,所以ICMP应答数据包无法返回。为了解决这个问题,需要给路由器C添加静态路由表项,在路由器C上添加下列指令。

再次测试路由器A与“23.23.23.3”的连通性,这次可以“ping”通了。

在路由器A上使用“ping”来测试“34.34.34.3”连通性,结果是不通的,根据前面的分析,自然能找出原因:路由器A并不知道如何达到“34.34.34.0/24”,因为路由器A的路由表中没有这一表项。在路由器A上添加下列指令,告诉路由器A从S2/0接口发出数据包交给对端“12.12.12.2”接口。

再次测试与“34.34.34.3”的连通性,还是不通,不难分析得到:虽然路由器A把数据包从S2/0接口交给了路由器B,但路由器B上不存在到达“34.34.34.3”的路由表项,因此,路由器B无法帮路由器A转发此数据包,路由器B将发一个数据包(目的网段不可达)告诉路由器A它丢掉了此数据包。解决办法是给路由器B添加此路由即可。

继续使用“ping”测试下一个IP“34.34.34.4”的连通性,依然是不通的,很容易分析出原因:路由器D上并没有返回数据包的路由表项,在路由器D上添加下列指令。

在告诉路由器D如何到达“12.12.12.0/24”和“1.1.1.0/24”之后,在路由器A上再次使用“ping”测试,“34.34.34.4”可达。

最后一步是测试“4.4.4.4”的可达性。由于路由器A、B、C都没有相应路由表项,所以都需要添加。

至此,在路由器A可以“ping”通拓扑中所有的IP地址。在4台路由器上查看路由表,每台设备都具备了到达5个网段的静态路由表项,其中2个是直连网段,3个是非直连网段。只有路由器D缺少去往“23.23.23.0/24”网段的路由,在路由器D上“ping”不通23.23.23.2,可以添加此路由,这样就做到了全网互通。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈