拓扑介绍
使用GNS3搭建如下拓扑:
本拓扑有三个网段,PC1和PC2是在不同网段中的两台需要通信的PC,PC1的IP为192.168.1.1,通过e0/0口与网关R1的e0/0口相连,R1的e0/0口地址为192.168.1.254,PC2的IP为192.168.2.1,通过e0/0口与网关R2的e0/0口相连,网关R2的e0/0口地址为192.168.2.254;R1、R2之间通过各自的e0/1口相连,地址分别为10.0.0.1和10.0.0.2。
搭建拓扑
路由器改为PC
PC1和PC2是使用路由器改过来的,故可以直接使用xshell或secureCRT输入命令,较为方便。
下面介绍修改方法:
-
右击路由器,在菜单中选择,修改主机名
-
修改主机名后继续右击,修改图标
3. 开机后使用xshell、secureCRT或GNS3自带的putty连接上PC
- 敲入命令
注:
- GNS3中路由器开机默认直接进入特权模式,可通过在特权模式下输入命令disable进入用户模式,在用户模式下输入命令enable进入特权模式。
- 本拓扑中PC1使用e0/0和网关路由器连接,实际实验中需要根据实际情况进入相应的接口进行配置。
- 接口IP和网关IP也需要根据实际情况配置。
- PC2使用类似方法进行修改,这里不再赘述,注意配置好正确的接口IP和网关地址。
配置路由器
-
鼠标选中路由器开机,开机后可双击路由器使用xshell、secureCRT或GNS3自带的putty进入路由器的命令行配置。
-
为路由器R1配置接口IP
-
为路由器R2配置接口IP
到这里为止,我们已经配好设备的IP地址了。
测试PC间连通性
当数据unreachable时,反馈为“ U ”,当数据request timeout时,反馈为 “ . ” ,显然PC间的还不能正常通信。
分析原因:
这里需要介绍一下路由器的转发原理,简单来说,路由器上有一张表,表上记录了IP地址和路由器接口的对应关系,下面我们来查看一下两个路由器的路由表。
根据路由表我们可以分析,当从PC1去pingPC2时,数据先到达R1,R1拆包查看目的IP,发现是去往192.168.2.1的,再一查路由表,发现并没有192.168.2.0/24的路由,而路由器对查不到路由的数据是选择直接丢弃,故两台PC还不能通信。
那怎样才能在路由表中添加路由呢?
添加静态路由
首先我们为R1添加静态路由。
添加静态路由命令:
ip route 192.168.2.0 255.255.255.0 10.0.0.2
192.168.2.0是目的IP地址,也就是我们需要访问的IP网段。
255.255.255.0是目的IP的掩码。
10.0.0.2是去往目的IP地址的下一跳IP地址,也就是我们需要从10.0.0.2这条路径到达192.168.2.0。
下面我们再测试一下PC间连通性。
我们可以发现这次的结果和上次不一样了,不再是unreachable了而是request timeout,分析原因:当数据无法到达会反馈unreachable,而第一次测试我们没有静态路由,故不可到达。当数据没有回复,结果会反馈request timeout。
ping命令是一个可以测试主机间连通性的命令,数据需要“有来有回”。PC1去pingPC2,目的IP为192.168.2.1(PC2的IP地址),当数据到达了192.168.2.1时,PC2也应该给192.168.1.1回复,而回复的数据包中的目的IP为192.168.1.1(PC1的IP地址),而数据发送到PC2的网关R2时,R2一查路由表,没有192.168.1.0/24的路由~
这就是为什么数据不能回去的原因,我们也要给R2添加静态路由~
最后我们再测一次!
通了,但是有一个丢包,大家可以想想为什么?
笔者也会在后续的更新中解释,有兴趣的同学可以继续关注一下~感谢!