网络协议分析-实验

这篇随笔将作为本科学习课程-TCP/IP协议分析教程与实验的简单记录。

准备工具:

1.Cisco Packet Tracer

2.Wireshark

3.GNS3

资料:

Wireshark基本用法和过滤规则:https://blog.csdn.net/hzhsan/article/details/43453251

netstat命令详解:https://www.cnblogs.com/xieshengsen/p/6618993.html

查看自己电脑的MTU:https://zhidao.baidu.com/question/553727686968963692.html

Cisco路由器配置命令大全:https://www.jianshu.com/p/73f84fed10e9


 ♦使用wireshark在自己的计算机上捕获浏览网页产生的数据包。怎样才能只查看访问指定网站(如:www.xinhuanet.com)的数据包?

1.捕获浏览网页产生的数据包

(1) 打开wireshark

(2) 选择网络接口(我用的无线网,所以选择wlan)

(3) 打开浏览器访问网页后产生数据包

2.只查看访问指定网站的数据包

(1) 以www.xinhuanet.com为例,在过滤器中输入ip.addr eq 202.200.79.43(注:202.200.79.43为该网站的ip地址,且提前用ping命令获得其ip)

(2) 确认过滤后只显示www.xinhuanet.com的数据包


 如果读者的主机系统有netstat命令,如何用它来确定系统上的接口与其MTU?

根据主机系统的不同有不同的命令查看。在Linux上使用netstat命令,在命令终端中输入netstat -i可以查看接口的MTU值。

在Windows上使用netsh命令,在命令终端中输入netsh interface ip show interface可以查看接口的MTU值


 ♦ARP请求与应答

1.实验说明

分别在模拟和真实环境中分析ARP协议的报文格式,理解ARP协议的解析过程。

2.实验环境

Windows操作系统及网络环境(主机有以太网卡并连接局域网),安装有Packet Tracer6.0和Wireshark

3.实验步骤 

(1) 在Packet Tracer中观察ARP协议。

步骤1 启动Packet Tracer,建立如下图的拓扑结构。

 

 

 

步骤2 按上图配置网络接口地址,PC0上没有设置默认网关地址,PC1的默认网关设置为172.16.20.99。注意,上图中的MAC地址是Packet Tracer自动生成的,实验时以软件实际取值为准。

步骤3 在路由器Router0上查看ARP表,执行以下命令。

Router # show arp

查看各个表项内容,注意其中是否有172.16.20.100的表项。

 

 

步骤4 切换到模拟方式,然后在路由器Route0执行以下命令。

Router# ping 172.16.20.100

观察设备收发数据。可以看到,因为没有在自己的ARP 表中查找到与IP地址172.16.20.100对应的表项,不能构造出链路层帧,路由器Router0丢弃了第一个ICMP报文。随即发出了ARP请求,PC1在收到ARP请求后作出ARP应答,Router0收到应答后更新自己的ARP表。在下一个ICMP报文发出时,路由器就能顺利的构造出链路层帧了。这就解释了为什么路由器在第一次执行ping命令时,表示连通的符号第一个总是不通,表示连通的惊叹号总是4个。

 

 

 

 

再次在Router0上查看ARP表,可以看到新增的172.16.20.100。

 

步骤5 仔细分析PDU信息,学习掌握ARP协议的PDU构成,注意观察ARP帧的链路层地址、操作码、报文内容,比较ARP请求和应答链路层帧和PDU内容的差异。

 

 

 

 

 

 

 

 

步骤6 对路由器ARP处理的过程进行分析。对没有ARP表项的通信,路由器会先丢弃报文。

 

 

 

需要说明的是,ARP协议是在局域网内工作的,本实验利用路由器连接两个网络,在地址掩码上左不同的设置,以说明默认网关的作用。

(2) 用Wireshark观察ARP协议的工作过程

步骤1 在Windows主机上运行Wireshark,选择本地网卡,启动抓包。为了观察方便,在显示过滤器栏中输入arp,以便只查看ARP数据包。

 

步骤2 在主机运行程序访问同一网络中的节点,只要该节点为第一次访问,则主机都会发出ARP请求。例如,在本地Windows主机(IP地址为192.168.1.102),运行cmd命令,打开命令行窗口,输入以下命令。

C:\>ping 192.168.1.53

则立刻可以在Wireshark中捕获到ARP帧。分析帧结构和各个域的信息。

我的电脑连的wifi,分配的地址为192.168.2.145,具体信息如下图:

 

 

在命令行控制台输入ping 192.168.2.53后,Wireshark捕获的ARP帧如下图:

 

 

步骤3 一般真实的主机设有默认网关,和默认网关之间会有ARP数据交换。持续捕获一段时间的数据,一般能观察到主机和默认网关之间的ARP请求和应答。另外,也可以通过修改主机的IP地址或重启网卡(禁用后再启用)的方法,来观察ARP数据。

捕获到的主机与默认网关之间的ARP请求和应答如下图:

 

 4.实验报告

记录自己的实验过程和实验结果,分析ARP协议的请求和应答报文格式,理解ARP协议的解析过程。

(1) 实验过程和实验结果已经包含在上述的实验步骤和实验截图当中。

(2) ARP报文格式:

以太网源地址: 就是发送端地址。

帧类型: 如果是ARP报文,值为0x0806

硬件类型: 表明ARP协议实现在那种类型的网络上,它的值为1,即表示以太网地址

协议类型:表示解析协议(上层协议),这里一般是0800,即IP

硬件地址长度:也就是MAC地址长度,即6个字节

协议地址长度:也就是IP地址长度,即4个字节

操作类型:表示ARP协议数据报类型。1表示请求报文,2表示应答报文

发送端以太网地址:也就是源MAC地址

发送端IP地址:也就是源IP地址

目的端以太网地址:目标端MAC地址(如果是请求报文,是全0)

目地端IP地址:也就是目地端的IP地址

(3) ARP协议的解析过程

ARP借助ARP请求包和响应包来确定MAC地址。

例如:处在同一链路上的主机A 向B发送一个IP请求包,且互不知MAC地址:主机为了获取主机B的MAC地址,起初通过广播发送一个ARP请求包,此包包含 想要获取MAC地址主机的IP地址,因此ARP的请求包中会被同一链路上的所有主机或路由解析,如果ARP请求包中的目标IP与自己的IP地址相同,那么此节点就将自己MAC地址塞入ARP响应包,返回给主机A。

 

 ♦ARP代理

1.实验说明

在模拟实验环境中,观察分析ARP代理对象,理解ARP代理的作用和工作过程。

2.实验环境

Windows操作系统及网络环境(主机有以太网卡并连接局域网),安装有Packet Tracer6.0

3.实验步骤

步骤1 启动PT,打开实验4-2的拓扑,西哟啊注意的是,PC0的地址172.16.10.100/16的子网掩码为16位,与其他各个地址的24位不同,另外,PC0上未设置默认网关地址。

   

 

步骤2 PC0上打开命令行窗口,查看ARP表,执行以下命令。

PC>arp -a

该命令确认本地ARP缓存为空。

 

 

步骤3 切换到模拟方式,然后在PC0上执行以下命令,观察设备收发数据的过程。

PC>ping 172.16.10.99

 

 

PC>ping 172.16.20.100

 

步骤4 PC0上执行命令“arp -a”,查看ARP表,观察各个表项的特点,出现多个IP地址被映射到一个MAC地址,就是代理ARP的标志。

 

步骤5 在拓扑图的路由器Router0右侧(172.16.20.0/24网段)连接交换机,以添加更多的主机,注意要和PC1在同一网段。然后在PC0上对新增主机进行ping连通,连通后查看PC0ARP表的变化。

 

步骤6 进一步在拓扑图中增加路由器,连接更多的网络,在Packet Tracer中以模拟方式从PC0上对其他网络中主机命令ping,进行连通测试,仔细观察连通过程的ARP解析过程。连通后,在查看PC0ARP表的变化。

 

 

4.实验报告

记录自己的实验过程和实验结果,理解ARP代理的实现过程,掌握ARP代理的工作特点。

实验过程和实验结果的步骤和截图已经展示在上面

5.思考

路由器不转发广播帧,而是接替地址请求者对其他网络的节点发送ARP请求,分析跨网络通信时的ARP解析过程,进一步理解“Hop by Hop”的概念。

首先172.168.10.100/16主机向外发送目的主机为172.168.20.100/24ARP请求报文;然后网关收到172.168.10.100/1ARP请求报文,由于网关开启了ARP代理的功能,因此网关代替172.168.20.100/24172.168.10.100/16发送ARP响应数据报;之后网关向172.168.20.0/24网段发送172.168.10.100/16ARP请求报文;最后172.168.20.100/24收到后,发送ARP响应报文。

 

posted @ 2019-10-04 01:24  省所行  阅读(2665)  评论(0编辑  收藏  举报