姓名:江舒铭
学号:201821121109
班级:计算1814
1 实验目的
熟练使用Packet Tracer工具。分析抓到的应用层协议数据包,深入理解应用层协议,包括语法、语义、时序。
2 实验内容
使用Packet Tracer,正确配置网络参数,抓取应用层协议的数据包并分析,协议包含DNS、FTP, DHCP, stmp, pop3。步骤包含:
- 建立网络拓扑结构
- 配置参数
- 抓包
- 分析数据包
3. 实验报告
建立网络拓扑结构
首先按照实验一配置IP地址,并建立网络拓扑结构。
3.1 DNS
(1)配置参数
配置PC端IP地址
配置服务器端IP地址
设置域名
配置完成后,可通过域名(shuming.jiang)来访问,达到直接访问地址的效果。
(2)抓包并分析抓到的数据包
DNS Query为请求报文;
DNS Answer为响应报文;
NAME:域名,长度不固定或2字节;
TYPE:查询类型;此处为4,还可以有“1”表示由域名获得IPV4地址,或者“2”表示查询域名服务器;
CLASS:查询类,通常为1,表明Internet数据;
TTL:(Time to live)生存时间;
LENGTH:资源数据长度;
(3)通过该实验产生新的疑问及解答
疑问:
DNS的过程是怎样的?
解答:
具体过程如下:
①用户主机上运行着DNS的客户端,就是我们的PC机或者手机客户端运行着DNS客户端;
②浏览器将接收到的url中抽取出域名字段,就是访问的主机名,比如 http://www.baidu.com/
, 并将这个主机名传送给DNS应用的客户端;
③DNS客户机端向DNS服务器端发送一份查询报文,报文中包含着要访问的主机名字段(中间包括一些列缓存查询以及分布式DNS集群的工作);
④该DNS客户机最终会收到一份回答报文,其中包含有该主机名对应的IP地址;
⑤一旦该浏览器收到来自DNS的IP地址,就可以向该IP地址定位的HTTP服务器发起TCP连接;
3.2 FTP
(1)配置参数
服务器的FTP协议默认开启(On),且有初始的用户名(cisco)和密码(cisco),也可自己重新设置,这里选择默认。
打开PC端的Desktop栏下的Command Prompt,输入ftp 192.168.1.110,之后再输入用户名和密码
(2)抓包并分析抓到的数据包
Code:220表示服务就绪;
PC端发送含有用户名(cisco)的请求报文;
Server端验证用户名正确,需要密码响应报文;
PC端发出含有密码(cisco)的报文;
Serve响应Logged in,Code:230表示登陆成功;
再输入quit,断开连接;
响应Code:221表示服务关闭传输通道;
FTP的服务器进程有两大部分组成:一个主进程,负责接收新的请求;另外由若干个从属进程,负责处理单个请求;
主进程的工作步骤:
1、打开熟知端口,使客户进程能够连接上;
2、等待客户进程发出连接请求;
3、启动从属进程处理客户进程发来的请求;
4、回到等待状态,继续接受其他客户进程发来的请求。
3.3 DHCP
(1)配置参数
先将服务端DHCP服务打开;
再将PC端的IP Configuration的Static切换成DHCP;
(2)抓包并分析抓到的数据包
请求报文;
请求报文;
OP:报文类型,1表示请求报文,2表示响应报文;
HW TYPE:硬件地址类型,1表示10Mb/s的以太网的硬件地址;
HW LEN:硬件地址长度,以太网中该值为6;
HOPS:跳数。客户端设置为0,也能被一个代理服务器设置;
SECS:由客户端填充,表示从客户端开始获得IP地址或IP地址续借后所使用了的秒数;
FLAGS:标志字段。这个16比特的字段,目前只有最左边的一个比特有用,该位为0,表示server以单播方式传播封包给client,为1表示以广播的方式传播给client;
YOUR CLICENT ADDRESS:192.168.1.1;表示为PC分配的IP地址为192.168.1.1;
SERVER ADDRESS:192.168.1.110;表示服务器的IP地址为192.168.1.110
RELAY AGENT ADDRESS:0.0.0.0;DHCP中继器的IP地址。//注意:不是地址池中定义的网关
CLIENT HARDWARE ADDRESS:0060.3E04.635D;客户端硬件地址;
SERVE HOSTNAME;可选的服务器主机名,该字段是空结尾的字符串,由服务器填写;
FILE:启动文件名,是一个空结尾的字符串;
OPYIONS:可选参数域,格式为"代码+长度+数据";
DOMAIN NAME SERVER:192.168.1.110;服务器的域名;
(3)通过该实验产生新的疑问及解答
疑问:
DHCP是如何分配IP地址的?
解答:
分配IP地址主要分为四个阶段:
发现阶段(DHCP客户端在网络中广播发送DHCP DISCOVER请求报文,发现DHCP服务器,请求IP地址租约);
提供阶段(DHCP服务器通过DHCP OFFER报文向DHCP客户端提供IP地址预分配);
选择阶段(DHCP客户端通过DHCP REQUEST报文确认选择第一个DHCP服务器为它提供IP地址自动分配服务);
确认阶段(被选择的DHCP服务器通过DHCP ACK报文把在DHCP OFFER报文中准备的IP地址租约给对应DHCP客户端)。
3.4 smtp和pop3
(1)配置参数
先在Server端的DNS中配置好pop3和smtp;
之后再添加Email账户;
这里设置两个账户,一个用户名shu,密码123;另一个用户名ming,密码123;
然后做发邮件之前的准备;这里是登录用户ming,发邮件给shu
编辑邮件;
发送之后,显示发送成功;
再登录用户shu来接收邮件;
点击receive接收邮件;
显示接收成功;
(2)抓包并分析抓到的数据包
SMTP命令和应答
邮件报文的传输过程:
1、连接建立;
SMTP客户和SMTP服务器首先要建立TCP连接。
1. 从客户端使用熟知端口号25建立与服务器的TCP连接,SMTP服务器向该客户送回应答码220,并且还为客户端提供了服务器的域名;
2. 客户端收到应答码后,发送HELO命令,启动客户端和服务器之间的SMTP会话。该客户端发送的HELO用来向服务器提供客户端的标识信息;
3. 服务器端回应应答码250,通知客户端:请求建立邮件服务会话已经实现;
2、报文发送;
在SMTP客户与SMTP服务器之间的连接建立之后,发信的用户就可以与一个或多个收信人交换邮件报文了。
1. 客户向服务器报告发信人的邮箱与域名
2. 服务器向客户回应应答码“250”,代表请求命令完成
3. 客户向服务器报告收信人的邮箱与域名
4. 服务器向客户回应应答码“250”,代表请求命令完成
5. 客户用“DTAT”命令对报文的传送进行初始化
6. 服务器回应“354”,表示可以进行邮件输入了
7. 客户用连续的行向服务器传送报文的内容,每行以两字符的行结束标识(CR与LF)终止。报文以只有一个“.”的行结束
8. 服务器向客户回应应答码“250”,代表请求命令完成
3、连接终止;
报文发送完毕后终止本次SMTP会话。
- 客户端发送“QUIT”命令
- 服务器收到命令后,回应应答码“221”,并结束会话
(3)通过该实验产生新的疑问及解答
疑问:
POP3、SMTP协议有什么区别?
解答:
1、二者功能不同
POP3允许用户从服务器上把邮件存储到本地主机(即自己的计算机)上,同时删除保存在邮件服务器上的邮件,而SMTP服务器则是遵循POP3协议的接收邮件服务器,用来接收电子邮件的。
2、二者客户端操作的反馈不同
POP3协议允许电子邮件客户端下载服务器上的邮件,但是在客户端的操作(如移动邮件、标记已读等),不会反馈到服务器上。而IMAP提供webmail 与电子邮件客户端之间的双向通信,客户端的操作都会反馈到服务器上,对邮件进行的操作,服务器上的邮件也会做相应的动作。
3、二者服务不同
IPOP3提供了方便的邮件下载服务,让用户能进行离线阅读。IMAP提供的摘要浏览功能可以让在阅读完所有的邮件到达时间、主题、发件人、大小等信息后才作出是否下载的决定。