一.实验目的

1. 学会通过捕获网卡数据分析网络协议

二.实验内容

1.安装WinPcap软件或Wireshark软件,通过对捕获的数据包进行分析,了解802.3协议(主要包括源MAC地址,目的MAC地址,类型等);

2.了解ARP协议(主要包括访问ARP表,修改ARP表,清空ARP表;以及ARP的广播请求,单播应答特性等);设计实验能够对ARP的广播请求,单播应答特性等内容进行验证;

要求:两个人一组(A,B),在实验报告中写明(A,B的MAC地址,IP地址)

以A为例,给出捕获的A发出的广播ARP请求,捕获B回应的单播应答,在捕获的ARP中,列出目的MAC,源MAC,ARP数据中的A的IP信息和MAC信息,ARP数据中的B的IP信息和MAC信息。

3.通过对捕获的数据包进行分析,了解IP各字段功能(主要掌握首部长度,源IP地址,目的IP地址);

要求:一人一组(A),在实验报告中写明(A的MAC地址,IP地址)

捕获一个发往本网络的IP数据包,并列出目的MAC,源MAC,目的IP和源IP,并分析目的MAC,源MAC,目的IP和源IP与源主机和目的主机的关系

捕获一个来自其他网络的IP数据包,并列出目的MAC,源MAC,目的IP和源IP,并分析目的MAC,源MAC,目的IP和源IP与源主机和目的主机的关系

4.通过对捕获的数据包进行分析,了解TCP协议;

要求:一人一组(A),在实验报告中写明(A的MAC地址,IP地址)

a. 捕获一个TCP连接建立的三次握手过程;给出相应的目的MAC,源MAC,目的IP和源IP,源端口和目的端口,序号,确认号;(需要证明该数据是连接建立的数据)

b. 捕获一个TCP连接拆除的过程,给出相应的目的MAC,源MAC,目的IP和源IP,源端口和目的端口,序号,确认号;(需要证明该数据是连接拆除的数据)

5.通过对捕获的数据包进行分析,了解端口;

要求:一人一组(A),在实验报告中写明(A的MAC地址,IP地址)

a. 捕获一个端口为80的数据包;

b. 捕获一个端口号为53的数据包;

三.实验步骤

1.使用ipconfig/all命令查看本机IP地址和MAC地址和;

2.通过ping命令,结合wirshark软件捕获数据包,了解Inthernet VII和IEEE802.3结构;

3.使用Arp命令,捕获相关数据,利用ping发送广播,学习了解单播响应,通过捕获的数据学习、了解IP各字段的意义;

4.通过ping观察连接建立和拆除的过程;

5.捕获端口号为53/80的数据包。

四.详细的调试和运行结果分析

1.了解802.3协议

本机IP地址:10.200.244.19         MAC地址:20-16-B9-88-EB-A4

wireshark抓包的mac地址 wireshark捕获mac地址_wireshark抓包的mac地址

wireshark抓包的mac地址 wireshark捕获mac地址_首部_02

  

wireshark抓包的mac地址 wireshark捕获mac地址_wireshark抓包的mac地址_03

 

wireshark抓包的mac地址 wireshark捕获mac地址_网络_04

 

MAC帧首部:

目的MAC(6字节):B0-F9-63-4A-30-02

源MAC(6字节) :20-16-B9-88-EB-A4

类型字段(2字节):08-00,标志着上层使用的是IP数据报。

IP数据报首部:

版本(4位):4,指示IP数据报版本。

首部长度(4位):5

区分服务(1字节):00

总长度(2字节):00 3c

标识(2字节):50 19

标志(3位):只有两位有意义,最低位为MF,MF=1,表示后面“还有分片”,MF=”0”表示这已是数据报片中的最后一个。标志字段中间的一位记为DF,只有当DF=0才允许分片。

片偏移(13位):较长的分组在分片后,某片在原分组中的相对位置。

图中标志+片偏移字段为00 00.

生存时间(1字节):40

协议(1字节):01,表示使用ICMP协议。

首部检验和(2字节):00 00,这部分只检验数据包首部,首部未发生变化,结果0.

源地址(4字节):0A-C8-F4-13 ,代表10.200.244.19

目的地址(4字节):B6-3D-C8-06,代表182.61.200.6.

ICMP的前8个字节:

类型(1字节):08,代表ICMP询问报文中的回送请求。

代码(1字节):00,

检验和(2字节):4D 3F

接下来4个字节取决于ICMP报文类型:00 01 00 1C

ICMP数据部分(32字节):

61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69.

2.了解ARP协议

本机IP地址:10.200.244.19 MAC地址:20-16-B9-88-EB-A4

wireshark抓包的mac地址 wireshark捕获mac地址_IP_05

 arp -a(显示当前所有的表项)

wireshark抓包的mac地址 wireshark捕获mac地址_IP_06

 arp -a IP地址(显示相应IP地址的表项)

wireshark抓包的mac地址 wireshark捕获mac地址_IP_07

 arp -s添加主机,并将网络地址跟物理地址相对应。

wireshark抓包的mac地址 wireshark捕获mac地址_网络_08

wireshark抓包的mac地址 wireshark捕获mac地址_首部_09

 

 arp -d删除由inet_addr指定的主机.可以使用* 来删除所有主机。

wireshark抓包的mac地址 wireshark捕获mac地址_wireshark抓包的mac地址_10

wireshark抓包的mac地址 wireshark捕获mac地址_首部_11

 

本机IP地址:10.200.244.19 MAC地址:20-16-B9-88-EB-A4

对方IP地址:10.200.0.1

wireshark抓包的mac地址 wireshark捕获mac地址_首部_12

wireshark抓包的mac地址 wireshark捕获mac地址_数据_13

 

wireshark抓包的mac地址 wireshark捕获mac地址_wireshark抓包的mac地址_14

 

wireshark抓包的mac地址 wireshark捕获mac地址_数据_15

MAC帧首部:

目的地址(6字节):B0-F9-63-4A-30-02;

源地址(6字节):20-16-B9-88-EB-A4

类型(2字节):08 00;

ARP报文格式

硬件类型(2字节):45 00

协议类型(2字节):00 3C,ARP使用的是IP协议代号00 3C;

硬件长度(1字节):BC;

协议长度(1字节):90;

OP(2字节):00 00;

发送者MAC地址(6字节):40-01-00-00-0A-C8;

发送者IP地址(4字节):10.200.0.1;

本机IP地址(4字节):10.200.244.19.

3.通过对捕获的数据包进行分析,了解IP各字段功能

本机IP:10.200.244.19 MAC地址:20-16-B9-88-EB-A4

(1)捕获一个发往本网络的IP数据包

wireshark抓包的mac地址 wireshark捕获mac地址_首部_16

 

wireshark抓包的mac地址 wireshark捕获mac地址_首部_17

 

wireshark抓包的mac地址 wireshark捕获mac地址_网络_18

目的MAC:目的主机的MAC地址
源MAC:代表源主机MAC地址;
目的IP:是目的主机IP地址;
源IP:源主机IP地址。

(2)捕获一个来自其他网络的IP数据包

wireshark抓包的mac地址 wireshark捕获mac地址_数据_19

 

wireshark抓包的mac地址 wireshark捕获mac地址_首部_20

 

wireshark抓包的mac地址 wireshark捕获mac地址_数据_21

目的MAC:不是目的主机的MAC地址;
源MAC:代表源主机MAC地址;
目的IP:是目的主机IP地址;
源IP:源主机IP地址。 

 

4.通过对捕获的数据包进行分析,了解TCP协议

本机IP:10.200.244.19 MAC地址:20-16-B9-88-EB-A4

A捕获一个TCP连接建立的三次握手过程

第一次握手

 

wireshark抓包的mac地址 wireshark捕获mac地址_IP_22

 第二次握手

wireshark抓包的mac地址 wireshark捕获mac地址_数据_23

 第三次握手

wireshark抓包的mac地址 wireshark捕获mac地址_数据_24

wireshark抓包的mac地址 wireshark捕获mac地址_wireshark抓包的mac地址_25

 

wireshark抓包的mac地址 wireshark捕获mac地址_数据_26

 

wireshark抓包的mac地址 wireshark捕获mac地址_网络_27

 

wireshark抓包的mac地址 wireshark捕获mac地址_wireshark抓包的mac地址_28

第一次握手:SYN=1;
第二次握手:SYN=1, ACK=1;
第三次握手:ACK=1。

B捕获一个TCP连接拆除的过程

第一次分手

wireshark抓包的mac地址 wireshark捕获mac地址_首部_29

第二次分手

wireshark抓包的mac地址 wireshark捕获mac地址_网络_30

 

第三次分手

 

wireshark抓包的mac地址 wireshark捕获mac地址_首部_31

 第四次分手

wireshark抓包的mac地址 wireshark捕获mac地址_IP_32

wireshark抓包的mac地址 wireshark捕获mac地址_首部_33

 

wireshark抓包的mac地址 wireshark捕获mac地址_IP_34

第一次分手:FIN=1,ACK=1;
第二次分手:ACK=1;
第三次分手:FIN=1,ACK=1;
第四次分手:ACK=1.

5.通过对捕获的数据包进行分析,了解端口

A捕获一个端口为80的数据包

wireshark抓包的mac地址 wireshark捕获mac地址_网络_35

 B捕获一个端口号为53的数据包

wireshark抓包的mac地址 wireshark捕获mac地址_网络_36

 

五、实验感想

本实验中实验数目较多,其中遇到的问题主要出现在广播和单播响应,由于不知道怎么进行广播,所以又毫无头绪,后来经过询问老师同学知道了需要执行ping命令,然后进行抓包,进行arp协议筛选,就可以获取相应的数据包,在知道这个事情之后后面的事情就进展的很顺利了,但还要注意:

        在进行广播时,为了验证单播响应,需要提前删掉要进行广播的对方;

        端口号为80的是http,使用TCP协议,端口号为53的是dns,使用UDP协议。