邮局协议.docx
《邮局协议.docx》由会员分享,可在线阅读,更多相关《邮局协议.docx(20页珍藏版)》请在冰豆网上搜索。
![邮局协议.docx](https://file1.bdocx.com/fileroot1/2023-4/20/048f6a06-826a-4966-a9bc-c30590592848/048f6a06-826a-4966-a9bc-c305905928481.gif)
邮局协议
第五章应用层协议分析
实验十六邮局协议POP3分析
【实验目的】
1、理解POP3协议的基本原理;
2、了解POP3的工作过程;
3、了解POP3的基本命令格式;
4、了解应用层协议与传输层协议的关系。
【实验学时】
2学时
【实验环境】
本实验要求实验室主机能够连接到Internet,具有事先申请好可用的电子邮件帐户,并
且能够支持SMTP和POP3协议。
每台实验室主机都安装有OutlookExpress软件,学生可以进行账号的配置,并利用其
进行收发邮件的的操作。
实验拓扑如图5-85所示:
图5-85实验拓扑图
【实验内容】
1、学习邮件服务的工作原理;
2、理解POP3协议;
3、学习POP3协议的命令格式和使用方法;
4、学习协议编辑软件的使用方法。
183
博客地址
计算机网络协议原理实验教程
【实验流程】
Step1:
Step2
Step3:
Step4:
Y
TCP
POP
Step5:
N
图5-86实验流程图
【实验原理】
POP协议允许工作站动态访问服务器上的邮件,目前已发展到第三版,称为POP3。
POP协议采用客户/服务器工作模式,允许工作站检索邮件服务器上的邮件。
POP3传输的
是数据消息,这些消息可以是指令,也可以是应答。
POP协议是一个脱机协议,支持“离线”邮件处理。
其具体过程是:
邮件发送到接收方
的服务器上,接收方用户代理连接到服务器,发送用户名和口令,访问邮箱,下载所有未阅
读的电子邮件。
这种离线访问模式是一种存储转发服务,将邮件从邮件服务器端拉取到个人
终端机器上。
POP3收取邮件有2种方式,删除方式和保存方式。
删除方式就是在每一次收
取邮件后把邮箱中的这个邮件删除,而保存方式则是在用户收取邮件后仍然在邮箱中保存这
个邮件。
POP3使用TCP作为传输协议。
用户代理在TCP端口110打开到服务器的连接。
POP3命令
POP3命令是发送在客户机和服务器间的ASCII信息。
POP3命令主要有:
184
QQ邮件订阅http:
//U
第五章应用层协议分析
表5-12POP3命令列表
命令
描述
USER
用户名
PASS
用户密码
STAT
服务器上的邮件信息,如邮件总数和总字节数
读取邮件
RETR
DELE
将邮件标记为删除
LIST
列举出邮件的项目
NOOP
不做任何事情,仅返回一个回应
中断当前操作,将标记为删除的邮件恢复
从头开始(包含协议头)打印X行信息
退出POP3服务器
RSET
TOP
QUIT
【实验步骤】
步骤一:
利用Outlook工具接收电子邮件,捕获数据包并分析
1、打开邮件工具:
OutlookExpress,按照已经申请的邮箱信息进行配置,例如邮箱为
2008.test.star@,密码为:
Test2008,配置完成后可看到的邮件帐户属性为:
图5-87在OutlookExpress中设置邮箱帐户
185
博客地址
计算机网络协议原理实验教程
2、在主机上打开协议分析仪,点击工具栏上的“过滤器”,在“端口过滤器”的“端口值”
中选择“发送/接收”的端口为110,如图5-88所示:
图5-88设置POP协议过滤器
3、在Outlook中创建一封邮件,发送出去,再使用Outlook工具进行接收;
4、进行数据捕获,并分析数据包内容,可以看到POP3协议的命令和参数,如图5-89
和图5-90所示,就是POP3协议使用USER命令和PASS命令在传输邮件的帐号和密码:
图5-89POP3协议的USER命令
186
QQ邮件订阅http:
//U
第五章应用层协议分析
图5-90POP3协议的PASS命令
5、分析其中接收邮件的过程传输层采用什么协议?
使用的端口号是多少,代表什么协
议?
步骤二:
利用TCP连接客户端工具和POP命令接收电子邮件
本步骤的目的是学习POP3协议的命令用法,以及接收一个邮件的过程。
1、首先用Outlook工具构造一个邮件发送出去,如图5-91所示,然后关闭Outlook
工具;
图5-91使用Outlook构造一封测试用邮件
187
博客地址
计算机网络协议原理实验教程
2、建立与POP3服务器的TCP连接,继续使用的POP3服务器,可从刚才
捕获到的报文中看到其IP地址为:
202.208.5.100,用户名:
2008.test.star,密码为:
Test2008,邮件服务器域名:
。
(1)、首先打开协议分析仪,准备好进行数据包的捕获,然后点击工具栏中的“TCP”按
钮;
(2)、在弹出的“TCP连接工具”中填写服务器的IP地址(202.208.5.100)及服务器
POP3协议的端口号(110),点击“启动”,从而建立本机与POP3服务器的TCP连接:
(3)、若连接成功,在接收窗口会显示成功连接的信息(+OKWelcometocoremailMail
Pop3Server(163coms[3d8c1fa079729fb6acc588e66d30360es]);若不成功,再次尝试进
行连接,直到成功。
2、用POP3命令接收邮件,捕获数据包并进行分析:
(1)、在发送的编辑栏里面编辑发送POP3协议的命令USER,参数为邮箱帐号:
USER
2008.test.star;
(2)、发送命令PASS,参数为邮箱密码:
PASSTest2008;
(3)、此时可以看到服务器对油箱帐号的验证已经通过,返回了邮箱内的邮件数量和占
用字节数:
1封邮件,大小是2038字节,可以用STAT命令和LIST命令(无参数)再次查
看邮箱内邮件的情况;
(4)、使用RETR命令收邮件,携带参数“1”,表示读取第一封邮件的内容;
(5)、服务器返回邮件的内容,从中可以看到:
From:
"2008.test.star"2008.test.star@;
To:
<2008.test.star@>
Subject:
test
邮件正文内容使用BASE64编码,所以无法在TCP工具中看明内容;
188
QQ邮件订阅http:
//U
第五章应用层协议分析
(6)、可以使用DELE命令删除邮件,携带参数“1”表示删除第一封邮件;
(7、)使用命令QUIT可以结束会话,断开连接。
下面是在协议分析仪的TCP工具“数据信息”区域显示的全部交互过程:
-------------------------------------------------------------------------------
正在连接202.108.5.100:
110
连接成功!
+OK
Welcome
to
coremail
Mail
Pop3
Server
(163coms[3d8c1fa079729fb6acc588e66d30360es])
-------------------------------------------------------------------------------
发送USER2008.test.star
发送成功!
+OKcoremail
-------------------------------------------------------------------------------
发送PASSTest2008
发送成功!
+OK1message(s)[2038byte(s)]
-------------------------------------------------------------------------------
发送STAT
发送成功!
+OK12038
-------------------------------------------------------------------------------
发送LIST
发送成功!
+OK12038
12038
.
-------------------------------------------------------------------------------
发送RETR1
发送成功!
+OK
X-Kaspersky:
Originalserverdatastartinghere:
+OK2038octets
Received:
fromSTAR(unknown[211.103.220.164])
bysmtp1(Coremail)withSMTPidC9GowLArtjuu3dlIjM41KQ==.50241S2;
Wed,24Sep200814:
26:
54+0800(CST)
Message-ID:
<411C453DE59140FB8160E1E276089FA4@STAR>
From:
"2008.test.star"<2008.test.star@>
To:
<2008.test.star@>
Subject:
test
Date:
Wed,24Sep200814:
26:
53+0800
MIME-Version:
1.0
Content-Type:
multipart/alternative;
boundary="----=_NextPart_000_0189_01C91E51.9760AF50"
X-Priority:
3
X-MSMail-Priority:
Normal
X-Mailer:
MicrosoftOutlookExpress6.00.2900.5512
X-MimeOLE:
ProducedByMicrosoftMimeOLEV6.00.2900.5579
X-Coremail-Antispam:
1Uf129KBjDUn29KB7ZKAUJUUUUUYxn0WfASr-VFAUDa7-sFnT
9fnUUIcSsGvfJTRUUUjOAYjsxI4VWxJwAYFVCjjxCrM7AC8VAFwI0_Jr0_Gr1l1I0E4x
80
FVCIwcAKzIAtM7C26IkvcIIF6IxKo4kEV4yl1IIY67AEw4v_Jr0_Jr4lYx0E2Ix0cI8IcV
AFwI0_JrI_JrylYx0Ex4A2jsIE14v26r4UJVWxJr1lFcxC0VAYjxAxZF0Ew4CEw7xC0w
189
博客地址
计算机网络协议原理实验教程
AC
Y4xI67k04243AVC20s07M4IEnf9ElVAFpTB2q-sK649IAas0WaI_GwAC6xAIw28IcVA
K0I
8IjxAxMx02cVAKzwCY1Ik26cxK6s8YrwCY02Avz4vE14v_GF1lc2IjII80xcxEwVWUJV
WU
XwCF72vE52k0Y41l4IxYO2xFxVAFwI0_Wryj6r4UJr1lx4CE17CEb7AF67AKxVWUJ
VWUXb
IYCTnIWIevJa73UjIFyTuYvjxUQ73vUUUUU
Thisisamulti-partmessageinMIMEformat.
------=_NextPart_000_0189_01C91E51.9760AF50
Content-Type:
text/plain;
charset="gb2312"
Content-Transfer-Encoding:
base64
aGVsbG8hDQpUaGlzIGlzIGEgdGVzdCBtYWlsIQ==
------=_NextPart_000_0189_01C91E51.9760AF50
Content-Type:
text/html;
charset="gb2312"
Content-Transfer-Encoding:
base64
PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMCBU
cmFuc2l0aW9uYWwv
L0VOIj4NCjxIVE1MPjxIRUFEPg0KPE1FVEEgaHR0cC1lcXVpdj1Db250ZW50LVR5c
GUgY29udGVu
dD0idGV4dC9odG1sOyBjaGFyc2V0PWdiMjMxMiI+DQo8TUVUQSBjb250ZW50PSJ
NU0hUTUwgNi4w
MC42MDAwLjE2NzA1IiBuYW1lPUdFTkVSQVRPUj4NCjxTVFlMRT48L1NUWUxFPg
0KPC9IRUFEPg0K
PEJPRFkgYmdDb2xvcj0jZmZmZmZmPg0KPERJVj48Rk9OVCBzaXplPTI+aGVsbG8
hPC9GT05UPjwv
RElWPg0KPERJVj48Rk9OVCBzaXplPTI+VGhpcyBpcyBhIHRlc3QgbWFpbCE8L0ZP
TlQ+PC9ESVY+
PC9CT0RZPjwvSFRNTD4NCg==
------=_NextPart_000_0189_01C91E51.9760AF50--
.
-------------------------------------------------------------------------------
发送DELE1
发送成功!
+OKcoremail
-------------------------------------------------------------------------------
发送QUIT
发送成功!
+OKcoremail
步骤三:
编辑一个POP3报文
1、在主机上打开协议数据发生器,在工具栏上选择“添加”,会弹出“网络包模版”对话框,
选择“POP3协议模版”,建立一个POP3数据报文:
190
QQ邮件订阅http:
//U
第五章应用层协议分析
图5-92建立POP3协议报文
2、填写其中以太网帧头、IP首部、TCP首部和POP3报文的内容:
z
填写以太网协议首部信息:
¾
¾
¾
目的物理地址:
在地址本中选择实验室网关的IP地址(例如:
192.168.1.1),
确认后自动填入网关的MAC地址:
00-D0-F8-B5-24-8F;
源物理地址:
在地址本中选择实验主机(例如:
192.168.1.2),确认后自动填
入实验主机的MAC地址:
02-00-4C-4F-4F-50;
类型或长度:
该字段应为0800(即IP协议的类型值)。
z
填写IP协议头信息:
¾
¾
¾
总长度字段:
包括TCP段内容的总长度,20IP+20TCP+19POP3=59;
高层协议字段:
即上层协议类型为6(TCP协议的类型为6);
发送IP地址:
在地址本中选择实验主机的IP地址,确认后自动填入主机的IP
地址192.168.1.2;
¾
¾
目标IP地址:
手工填写POP3服务器的IP地址:
202.108.5.100;
点击工具栏中的“校验和”按钮计算IP头校验和。
z
填写TCP协议的各个字段信息:
¾
¾
¾
¾
¾
¾
¾
¾
¾
16位源端口号:
任意大于1024的数;
16位目的端口号:
25;
32位序号:
选择一个序号(例如:
19425898);
32位确认序号:
设置为0;
首部长度:
首部长度设为5,即长度为20字节;
标志位:
标志位设为2,即标志位SYN=1;
窗口大小:
任意,例如填入32768;
紧急指针:
0;
校验和:
点击工具栏中的“校验和”按钮计算TCP校验和(覆盖TCP首部(包
含伪首部)和TCP数据两部分,计算方法同UDP协议一样)。
191
博客地址
计算机网络协议原理实验教程
z
5、填写POP3协议报文的内容:
可填入POP3的常用命令及参数,例如:
USER2008.test.star。
最终的编辑结果如图5-93所示:
图5-93编辑POP3协议报文的内容
3、点击工具栏上的“发送”按钮,将编辑好的POP3数据报文发送,可设置循环发送。
4、在实验主机上运行网络协议分析仪,捕获数据,捕获结果如图5-94所示,其中可
以清晰地看到,这个TCP报文的标志位是SYN,里面携带的POP3报文,具体的POP3
命令及参数是USER2008.test.star:
图5-94捕获编辑的POP3协议报文
192
QQ邮件订阅http:
//U
第五章应用层协议分析
【思考问题】
1、在POP3协议的传输报文中,是否有携带帐号、密码的报文?
2、通过实验说明你的电子邮件在网络上传输是安全的吗?
为什么?
如果不安全,你认
为实现邮件安全传输的最好的办法是什么?
193