通信网络基础抓包作业答案
网络协议数据获取与TCP/IP协议分析一、 实验环境介绍网络接入方式:校园网宽带接入,IP 获取方式:DHCP ; 操作系统为windows7旗舰版;本机MAC 地址为5c:f9:dd:70:6a:8
网络协议数据获取与TCP/IP协议分析
一、 实验环境介绍
网络接入方式:校园网宽带接入,IP 获取方式:DHCP ; 操作系统为windows7旗舰版;
本机MAC 地址为5c:f9:dd:70:6a:89,IP 地址为10.104.5.53。
图1 网络状态截图
二、实验步骤
1. 启动wireshark ;
2. 启动一个网页浏览器,并键入一个URL 地址,如:www.baidu.com

。注
,意此时不要按下回车键;
3. 清除电脑中的DNS 缓存,启动wireshark ,开始抓包;
4. 在浏览期网页位置按下回车键,开始访问指定的网页。
5. 一旦网页内容下载完毕,立即停止Microsoft Network Monitor 抓包,并将抓到的数据包存入文件中,同时将显示的网页存储下来,以便后面参考。
三、实验过程
使用wireshark 前清除DNS 缓存截图如下。
图2 清除DNS 缓存
抓取协议如下图所示:

图3 抓取协议
四、协议分析
1. 抓取的协议类型
检查在Microsoft Network Monitor 顶端窗口的协议一列,确认你已经抓到了DNS 、TCP 和HTTP 数据包。
答:由图3可看出抓到了DNS 、TCP 、HTTP 数据包。
2. 以太网帧,IP 分组和UDP 数据报
(1) 检查客户端发出的第一个DNS 分组
a. 确定客户端的以太网地址和IP 地址
答:如图4,客户端的MAC 地址为5c:f9:dd:70:6a:89;
IPv4地址为:10.104.5.53。
b. 以太网帧结构的TYPE 字段是什么内容?
答:如图所示,以太网帧结构的TYPE 字段为:0x0800,表示该帧是IP 协议。

c. 目的以太网地址和目的IP 地址分别是什么?这些地址对应哪些计算机?解释这些结果与你连接到Internet 的计算机有关系。
答:目的以太网地址:00: 0f:e2:d7:ef:f9,目的IP 地址:10. 0. 0.10
对应的计算机:以太网地址对应要访问的www.bitren.com 的源地址,IP 地址是本地局域网域名服务器的IP 地址。因为我们访问网络时用的是域名,只有经过域名服务器经过域名解析得到要访问的网络IP 地址,才能进行交换数据。不同的局域网的域名服务器IP 地址不同。
图4 dns分组
(2)检查客户端发出的第一个DNS 分组的IP 报头
a 包头的长度是多少?分组的总长度是多少?
b 确定协议类型字段。载荷数据中协议的编号和类型是什么?

图5 IP报头
答:报头的长度是20 bytes,分组的总长度是60bytes 。
协议类型字段如图所示0x11,协议编号为17,类型为UDP 。
3). 检查客户端发出的第一个DNS 分组的UDP 报头
a. 确定客户端临时端口号和服务器端的默认端口号。载荷数据中应用层协议的类型是什么?
b. 确定UDP 报头中的长度字段是否与IP 报头长度信息一致。
图6 UDP报头
由图6知,客户端临时端口号为62063,服务器端的默认端口号为53。 UDP 报头中的长度字段为40bytes ,根据40 20(IP报头长度)=60(IP分组总长度) ,故UDP 报头中的长度字段与IP 报头长度信息一致。
4) 画出客户端和服务器端从数据链路层到应用层的协议栈,并解释为什么各层的PDU 内容能够使得应用层的进程之间实现端到端通信。





图7 客户端和服务器端从数据链路层到应用层的协议栈
实现各层的PDU 内容能够使得应用层的进程之间实现端到端通信的原因是网络分层,每一层都会为从上一层接收到的信息块添加一个报头和报尾。在目标端,每一层都读出与其对应的头部,并决定采取何种操作,将数据头部和尾部去掉,最终将数据块提交给上一层。
3.DNS
1) 检查客户端发送的DNS 分组中的DNS 查询报文
a) 哪个字段表明这个报文是DNS 查询还是响应?
b) 查询的正文中传送什么信息?
c) 查询的交互ID 是什么?
d) 确定查询的类型与级别的字段
,图8 DNS报文
a 查询正文中flags 第一位为0,表明此DNS 分组为查询报文。
b type A表示查询是由域名查找IP 地址;Class:Internet(0x1)是指Internet 数据;Name 指要查询域名。
c 查询的交互ID 是0x64FC 。
d 类型字段Type :A(0x1),级别字段Class :Internet(0x1)。
2) 现在检查对上述查询的DNS 响应的分组
a) 这个分组中的以太网地址和IP 地址应当是什么?检验这些地址是正确的 b) 传送DNS 响应的IP 分组和UDP 数据报的大小是多少?是否比查询的长? c) 确定在响应报文中的交互ID 是正确的。
d) 在响应报文中提供了多少个答案?比较这些答案及其TTL 值。

图9 DNS报文
a 目的以太网地址:00: 0f:e2:d7:ef:f9,目的IP 地址:10. 0. 0.10,显然是正确的。
b IP分组的长度124bytes ,UDP 数据报大小是104bytes ,要比查询的长。 c 响应报文中的交互ID 是0x64FC ,与查询的交互ID 相同。

图10 DNS nameservers
在响应报文中共提供了2个答案,分别是dns13.hichina.com 和dns14.hichina.com ,TTL 分别都是40分49秒。
4 TCP 三次握手
1) 确定http 客户端和服务器端建立廉洁的三次握手的第一个TCP 分段的帧结构。
a) 在这个分段中你期望看到哪个源端以太网地址和IP 地址?你期望看到的协议和类型字段是什么内容?确认这些地址是正确的。
b) 解释在第一个TCP 分段中的目的以太网地址和IP 地址的值。这些地址对应什么计算机?
c) 确定客户端使用的临时端口号,确认使用的默认端口号是HTTP 默认的。 d)TCP 分段的长度是多少?
e)

客户端到服务器端分段的初始序列号是多少?初始窗口大小是多少?最
,大分段尺寸是多少?
f) 找到包含SYN 标志的十六进制字符。
图11 TCP三次握手第一次
A )期望看到客户端的MAC 地址和IP 地址,期望看到的协议和类型字段是IP (0x08000)。如图由此可确认地址的正确性。
B )目的以太网地址为:00: 0F:E2:D7:EF:F9,它是服务器的MAC 地址,IP 地址为:10.1.10.253,它是服务器的IP 地址。
