计算机网络中IP/ICMP协议分析实验

最近刚完成了计算机网络实验,我觉得其中的IP/ICMP协议分析实验是其中一个相当重要的实验,我根据上机实验的要求总结完成了一份IP/ICMP协议分析实验(有错误的地方请告诉我)。

ICMP(Internet Control Message Protocol)协议是一个非常重要的协议,它对于网络安全具有极其重要的意义。它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。 我们在网络中经常会使用到ICMP协议,只不过我们觉察不到而已。比如我们经常使用的用于检查网络通不通的Ping命令(Linux和Windows中均有),这个“Ping”的过程实际上就是ICMP协议工作的过程。ICMP是IP协议不可分割的一部分,所以ICMP是属于网络层的一个协议。

IP/ICMP协议分析实验
一、实验目的
 理解 IP 协议包格式;
 理解 ICMP 协议包格式。

二、实验内容
 PING 应用系统通信过程中 ICMP 协议、IP 协议分析。


三、实验原理、方法和手段



(1)ICMP 报文格式


(2)IP 报文格式


四、实验条件
(1)报文捕获工具
Ethereal、Wireshark、EtherPeek 或 SimpleNPTS 协议分析软件;
(2)应用协议环境
每个学生机的 PC 机(安装 Windows xp 操作系统)处于同一个 LAN。



五、实验步骤
(1)ICMP 协议分析
 主机 A(IP 地址为 A.A.A.A)与主机 B(IP 地址为 B.B.B.B)属于同一 个子网内的两台计算机;
 在主机 A 上启动报文捕获工具,指定源 IP 地址为主机 A 的地址,目的
IP 地址为主机 B 的地址,分析开关为 ICMP 协议;
 在主机 A 的 DOS 仿真环境下,运行 ping B.B.B.B 命令向主机 B 发送 echo 请求报文,在主机 B 联网和未联网两种情况下,捕获 ICMP 请求数据包 与应答数据包(如有),记录并分析各字段的含义,并与 ICMP 数据包格 式进行比较;

先ping一个主机名


利用抓包工具Wireshark捕获


得到ICMP的报文

(2)IP 协议分析
         主机 A(IP 地址为 A.A.A.A)与主机 B(IP 地址为 B.B.B.B)属于同一 个子网内的两台计算机;
 在主机 A 上启动报文捕获工具,指定源 IP 地址为主机 A 的地址,目的
IP 地址为主机 B 的地址,分析开关为 IP 协议;
 在主机 A 的 DOS 仿真环境下,运行 ping B.B.B.B 命令向主机 B 发送 echo 请求报文,在主机 B 联网和未联网两种情况下,捕获 IP 数据包,记录并 分析各字段的含义,并与 IP  数据包格式进行比较;

同样道理,先ping一个主机名,利用抓包工具Wireshark捕获,得到ICMP的报文



六、思考题
(1)为什么运行 ping 127.0.0.1 时,不能捕获到 ICMP 报文?如果运行 ping本机 IP 地址能收到报文吗?
      答:ping 127.0.0.1的时候,数据包根本没有到达网口,所以捕获不到ICMP报文,在ping 本机的时候,虽然是用这种办法来判断网卡是否正常工作,但实际上并没有发送到网卡,也就是说,ping本机也收不到ICMP报文,两者都是经过环路来进行处理。

猜你喜欢

转载自leaf-stop.iteye.com/blog/2256087