学号 | 2017******** |
---|---|
姓名 | *** |
班级 | **** |
全按照实验指南操作。
目录
静态路由及默认路由基本设置
一、实验内容:
- 完成网络搭建、设置和运行
- 验证静态路由、默认路由的网络联通性
- 验证浮动静态路由及负载均衡
- 通过抓包工具抓取ping命令过程包
二、实验报告要求
- 描述网络设计思路
- 描述实验设计测试过程
- 结合实验回答 153页、161页思考题
- 分析ping命令过程包,思考ping命令实现方法
三、实验拓扑与编址
为了方便后面做实验配ip,再图上标注了pc的ip和接口的ip ps:路由器选router,我的只有这个路由器有serial接口
具体编址见书P145
实验步骤
1. 基本配置
- 配置路由器与pc
这部分与之前做的实验006配置路由其相似,主要是interface进入接口然后ip address命令配置接口ip地址 - 用ping命令来检测各直连链路的连通性
但ping两台pc会发现无法连通。
PC-1 和 PC-2要想正常通信,那么pc1把数据发给R1,R1收到后将根据数据包中的目的地址查看它的路由表,找到相应的目的网络的所在路由条目,并根据该条目中的下一跳和出接口信息将该数据转发给下一台路由器R2; R2采取同样的步骤将数据转发给R3;最后R3也采取同样的步骤将数据转发给与自己直连的主机PC-2;主机PC-2在收到数据后,与主机PC-1发送数据到PC-2的过程一样,再发送相应的回应消息给PC-1。
根据以上过程,在保证基本配置没有错误的情况下,先查看主机PC-1与其网关设备R1间能否正常通信。
可以看到主机与网关之间通信正常。接下来检查网关设备R1上的路由表,因为路由表如果没有关于PC2所在网段信息,是无法把数据转发的。
可以看到R1只有和其直接相连的网段的信息,没有PC2的192.168.20.0网段和10.0.23.0网段。同理也可以查看R2 R3。这也验证了初始情况下各路由器的路由表上仅包括了与自身直接相连的网段的路由信息。现在主机PC-1与PC-2之间跨越了若千个不同网段,要实现它们之间的通信,只通过简单的IP地址等基本配置是无法实现的,必须在3台路由器.上添加相应的路由信息,可以通过配置静态路由来实现。
配置静态路由有两种方式,一种是在配置中采取指定下一·跳IP地址的方式,另一种是指定出接口的方式。
2. 实现pc1和pc2之间的通信
因为R1要把数据发送给PC2首先要发送给R2,所以R2为R1的下一跳路由器。R2所在的直连链路上的物理接口的IP地址即位为下一跳ip地址。R2与R1所在的直连链路接口的IP地址即位下一跳ip地址,即10.0.12.2. 同理R2的下一跳是R2与R3所在的直连链路接口的IP地址10.0.23.3 配置R1:
[R1]ip route-static 192.168.20.0 255.255.255.0 10.0.12.2
[R1]display ip routing-table
可以看到R1上已有PC2所在网段的路由信息
同理配置R2,并查看R2路由表
[R2]ip route-static 192.168.20.0 255.255.255.0 10.0.23.3
[R2]display ip routing-table
此时再pc1 ping pc2
还是ping不通。。右键pc1 进行数据抓包,选择Ethernet 0/0/1,抓包开始后再ping一次,结果如图
此时主机PC-1仅发送了ICMP请求消息,并没有收到任何回应消息。原因在于现在仅仅实现了PC-1能够通过路由将数据正常转发给PC-2, 而PC-2仍然无法发送数据给PC-1,所以同样需要在R2和R3的路由表上添加PC-1所在网段的路由信息。在R3上配置目的网段为PC-1所在网段的静态路由,即目的IP地址为192.168.10.0,
目的地址的掩码除了可以采用点分十进制的格式表示外,还可以直接使用掩码长度,即
24来表示。对于R3而言,要发送数据到PC-1,则必须先发送给R2,所以R3与R2所
在直连链路上的物理接口S 0/0/1即为数据转发接口,也称为出接口,在配置中指定该接
口即可。同理配置R2
[R2]ip route-static 192.168.10.0 24 Serial 0/0/1
[R3]ip route-static 192.168.10.0 24 Serial 0/0/1
终于pc1可以ping通pc2了
3. 实现全网全通来增强网络的可靠性
在R1的路由表中添加R2与R3间直连网段的路由信息,同样也应在R3
的路由表中添加R1与R2间直连网段的路由信息,实现全网全通。
[R3]ip route-static 10.0.12.0 24 Serial 0/0/1
[R1]ip route-static 10.0.23.0 24 10.0.12.2
这时查看R1 R2 R3的路由表,以r1为例
新增的条目时10.0.23.0 也就是R2 R3之间直连网段,此时pc1再ping r3,可以顺利通信
4. 使用默认路由实现简单的网络优化
通过适当减少设备上的配置工作量,能够帮助网络管理员在进行故障排除时更轻松
地定位故障,且相对较少的配置量也能减少在配置时出错的可能,另-方面,也能够相;
对减少对设备本身硬件的负担。
默认路由是一种特殊的静 态路由,使用默认路由可以简化路由器上的配置。
可以看到图3-1全网全通后R1路由表,此时R1存在两条先前通过手动配置的静态路由条目(标注了static ),下一跳都是
10.0.12.2.
现在在R1上配置一条默认路由,即目的网段和掩码为全0,表示任何网络,并删除之前配置的两条静态路由,步骤如下
[R1]ip route-static 0.0.0.0 0 10.0.12.2
[R1]undo ip route-static 10.0.23.0 255.255.255.0 10.0.12.2
[R1]undo ip route-static 192.168.20.0 255.255.255.0 10.0.12.2
可以相对以前看到路由表少了一条配置
这时测试PC_1和PC_2之间的通信。正常
同理配置R3
ip route-static 0.0.0.0 0 Serial 0/0/1
undo ip route-static 10.0.12.0 255.255.255.0 Serial 0/0/1
undo ip route-static 192.168.10.0 255.255.255.0 Serial 0/0/1
ping的结果如下:
结合实验回答 153页思考题
解答:路由查找上的区别:指定下一跳的话,要多进行一次路由的递归查 找,拿下一跳去进行递归,得到出接口。 二层地址解析时候的区别:指定下一跳的话使用最后一次递归的下一跳地 址去解析下一跳2层地址。如果是指定出接口的路由,数据包匹配到后直接用 目标地址去解析下一跳地址。
思考ping命令的实现
ping使用了ICMP(Internet Control Message Protocol,网际控制协议)中的回送请求和回送回答报文。ping是应用层直接使用网络层ICMP的一个例子。它没有通过运输层的TCP和UDP。
从我们之前ping的图中可以看出,ping命令使得本地主机连续发送了五个ICMP回送请求报文,然后远程的主机正常工作的话就会像图中显示的结果一样,响应并发回ICMP回送回答报文。每个报文都有其时间戳,所以最终得出了往返时间以及报文的发送接收丢失的结果。
ping的实现应该考虑两个情况,一种是同一网段内,一种是跨网段的ping ….
① 源主机在发起通信之前,将自己的IP与目的主机的IP进行比较,如果两者位于同一网段(用网络掩码计算后具有相同的网络号),那么源主机发送arp请求广播报,请求目的主机的mac地址,在收到目的主机的ARP应答后获得对方的物理层(MAC)地址,然后用对方MAC作为报文的目的MAC进行报文发送。位于同一VLAN(网段)中的主机互访时属于这种情况,这时用于互连的交换机作二层交换转发;
② 判断是否网络层转发:报文的目的MAC地址是否为路由接口(网关)的MAC
如下图
当源主机判断目的主机与自己位于不同网段时,它会通过网关(Gateway)来递交报文,即发送ARP请求来获取网关IP地址对应的MAC,在得到网关的ARP应答后,用网关MAC作为报文的目的MAC进行报文发送。
此处参考博客:
alexsjr.详细Ping过程描述(二、三层转发, 2018-07-09 18:04:27