网络分析软件及网络层协议分析
实验五网络分析软件使用及网络层协议分析一、实验目的
1、掌握WireShark网络协议分析软件使用。
2、掌握 ping 和 tracert 命令的使用方法,了解 ICMP 协议报文类型及作用。
3、理解IP协议报文类型和格式,掌握IP V4 地址的编址方法。
4、分析 ARP 协议的报文格式,理解 ARP 协议的解析过程。
二、实验方式
每位同学各自独立完成实验。
三、实验内容
1、ICMP协议分析实验
执行 ping 和 tracert 命令,分别截获报文,分析截获的 ICMP 报文类型和ICMP 报文格式,理解 ICMP 协议的作用。
目前网络中常用的基于 ICMP 的应用程序主要有 ping 命令和 tracert 命令。 (1)ping 命令
Ping 命令是调试网络常用的工具之一。它通过发出 ICMP Echo 请求报文并监听其回应来检测网络的连通性。图 1 显示了 Wireshark 捕获的 ICMP Echo 请求报文和应答报文。
图 1 ICMP Echo 请求报文和应答报文
Ping 命令只有在安装了 TCP/IP 协议之后才可以使用,其命令格式如下: ping [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS] [-r count] [-s count]
[[-j host-list] | [-k host-list]] [-w timeout] target_name
这里对实验中可能用到的参数解释如下:
-t :用户所在主机不断向目标主机发送回送请求报文,直到用户中断; -n count: 指定要 Ping 多少次,具体次数由后面的 count 来指定,缺省值为 4; -l size: 指定发送到目标主机的数据包的大小,默认为 32 字节,最大值是
65,527; -w timeout:指定超时间隔,单位为毫秒;
target_name:指定要 ping 的远程计算机。
(2)Traceroute 命令
Traceroute 命令用来获得从本地计算机到目的主机的路径信息。在 MS Windows 中该命令为 Tracert,而 UNIX 系统中为 Traceroute。
Tracert 先发送 TTL 为 1 的回显请求报文,并在随后的每次发送过程将 TTL 递增 1,直到目标响应或 TTL 达到最大值,从而确定路由。它所返回的信息要比ping 命令详细得多,它把您送出的到某一站点的请求包,所走的全部路由均告诉您,并且告诉您通过该路由的 IP 是多少,通过该 IP 的时延是多少。
Tracert 命令同样要在安装了 TCP/IP 协议之后才可以使用,其命令格式为: tracert [-d] [-h maximum_hops] [-j computer-list] [-w timeout]
target_name
参数含义为:
-d:不解析目标主机的名称;
-h:指定搜索到目标地址的最大跳跃数;
-j:按照主机列表中的地址释放源路由;
-w:指定超时时间间隔,程序默认的时间单位是毫秒。
2、IP协议分析实验
使用 Ping 命令在两台计算机之间发送数据报,用 Wireshark 截获数据报,分析 IP 数据报的格式,理解 IP V4 地址的编址方法,加深对 IP 协议的理解。
3、IP 数据报分片实验
IP 报文要交给数据链路层封装后才能发送。理想情况下,每个 IP 报文正好能放在同一个物理帧中发送。但在实际应用中,每种网络技术所支持的最大帧长各不相同。例如:以太网的帧中最多可容纳 1500 字节的数据;FDDI帧最多可容纳4470 字节的数据。这个上限被称为物理网络的最大传输单元(MTU,MaxiumTransfer Unit)。
TCP/IP 协议在发送 IP 数据报文时,一般选择一个合适的初始长度。当这个报文要从一个 MTU 大的子网发送到一个 MTU 小的网络时,IP 协议就把这个报文的数据部分分割成能被目的子网所容纳的较小数据分片,组成较小的报文发送。每个较小的报文被称为一个分片(Fragment)。每个分片都有一个 IP 报文头,分片后的数据报的 IP 报头和原始 IP 报头除分片偏移、MF 标志位和校验字段不同外,其他都一样。图 5.2 显示了 Wireshark 捕获的 IP 数据报分片的分析情况,可参考。
图 5.2 IP 数据报分片示例
重组是分片的逆过程,分片只有到达目的主机时才进行重组。当目的主机收到IP 报文时,根据其片偏移和标志 MF 位判断其是否一个分片。若 MF 为 0,片偏移为 0,则表明它是一个完整的报文;否则,则表明它是一个分片。当一个报文的全部分片都到达目的主机
时,IP 就根据报头中的标识符和片偏移将它们重新组成一个完整的报文交给上层协议处理。
4、ARP协议分析实验
Arp 命令简介
本次实验使用的Windows自带的Arp命令提供了显示和修改地址解析协议所使用的地址映射表的功能。
Arp 命令的格式要求如下:
ARP -s inet_addr eth_addr [if_addr] ARP -d inet_addr [if_addr]
ARP -a [inet_addr] [-N if_addr]
其中:
-s:在 ARP 缓存中添加表项:将 IP 地址 inet_addr 和物理地址 ether_addr 关联,物理地址由以连字符分隔的 6 个十六进制数给定,使用点分十进制标记指定 IP 地址,添加项是永久性的;
-d:删除由 inet_addr 指定的表项;
-a:显示当前 ARP 表,如果指定了 inet_addr 则只显示指定计算机的 IP 和物理地址;
inet_addr:以点分十进制标记指定 IP 地址;
-N:显示由 if_addr 指定的 ARP 表项;
if_addr:指定需要选择或修改其地址映射表接口的 IP 地址;
ether_addr:指定物理地址;