计算机网络 实验八 应用层相关协议分析

一、实验目的

熟悉CMailServer邮件服务软件和Outlook Express客户端软件的基本配置与使用;分析SMTP及POP3协议报文格式和SMTP及POP3协议的工作过程。

二、实验原理

为了观察到邮件发送的全部过程,需要在本地计算机上配置邮件服务器和客户代理。在这里我们使用CMailServer服务器软件配置本地邮件服务器,使用Windows自带的Outlook Express作为客户代理。

(1)CMailServer

CMailServer于2000年8月问世,是安全易用的全功能的邮件服务器软件,基于Windows平台,支持通用邮件客户端软件Outlook Express、Microsoft Outlook、Foxmail等收发邮件。CMailServer设置简单,容易使用,非常适合实验使用。

(2)Outlook Express

Outlook Express是Windows系统自带的电子邮件客户端软件,功能强大,支持多用户,无论是电子邮件还是新闻组,Outlook Express都是有力的重要工具软件。

三、实验设备

计算机以太网环境、CMailServer、Outlook Express、Wireshark网络协议分析软件

四、实验内容与步骤

  1. 电子邮件相关协议分析

(1)CMailServer邮件服务器配置

(2)在初次进入CMailServer后,系统只提供Admin系统管理帐户,需要配置后才能使用。就本次实验而言,我们只要完成服务器设置和帐户设置,就可以进行实验了。

(3)Outlook Express客户端配置

(4)在PC2上使用Outlook Express创建新邮件,收信人为自己。

(5) PC2上运行wireshark,开始截获报文。PC2执行Outlook Express发送与接收;如果邮件收发都没有问题,可以在CMailServer状态窗口中看到以下所示信息。

(6)停止截获报文,将截获的结果保存为Mail-学号并进行分析。

250代表连接建立,250 OK代表传送成功,QUIT代表退出 SMTP

例如报文号为247,建立连接过程中的报文,红色框内为其报文主要内容,代表连接SMTP服务器成功,源站点为192.168.10.20,目标站点为192.168.91.132

(7)改用网易邮箱或其他邮箱服务器,以网易邮箱为例,需要先开启网易邮箱中的POP/SMTP服务,再进行授权,才可以配置outlook,outlook需要中的发送邮件与接受邮件服务器,为网易邮箱的相关服务器,可在网易邮箱中查看。

  1. 通过PC2监控到数据流量,分析这些数据包并回答下列问题:

(1)综合分析截获的报文,从TCP连接建立后开始分析SMTP协议的工作过程,填写表1,仅填写SMTP报文

表1 SMTP协议工作过程

|-------------|-----|----------------|----------------|----------------------------------------------------------------------------|---------------------|
| SMTP连接的建立过程 | 报文号 | 源站点 | 目标站点 | 报文信息及参数 | 报文作用 |
| SMTP连接的建立过程 | 247 | 192.168.10.20 | 192.168.91.132 | Service ready (220) | 连接SMPT服务器成功 |
| SMTP连接的建立过程 | 248 | 192.168.91.132 | 192.168.10.20 | EHLO DESKTOPESC38G2 | 登录认证 |
| SMTP连接的建立过程 | 250 | 192.168.10.20 | 192.168.91.132 | 250-AUTH=LOGIN | AUTH LOGIN | 登录 |
| 邮件传送过程 | 报文号 | 源站点 | 目标站点 | 报文信息及参数 | 报文作用 |
| 邮件传送过程 | 251 | 192.168.91.13 | 192.168.10.20 | MAIL FROM: <jgj@test.com> | 邮件传送 |
| 邮件传送过程 | 253 | 192.168.10.20 | 192.168.91.13 | 250 OK | 确认 |
| 邮件传送过程 | 254 | 192.168.91.13 | 192.168.10.20 | RCPT TO: <jgj@test.com> | 接收方确定 |
| 邮件传送过程 | 256 | 192.168.10.20 | 192.168.91.13 | 250 OK | 确认 |
| 邮件传送过程 | 257 | 192.168.91.13 | 192.168.10.20 | DATA | 表示要开始传输数据 |
| 邮件传送过程 | 259 | 192.168.10.20 | 192.168.91.13 | 354 send the mail data, end with . | 发送 |
| 邮件传送过程 | 260 | 192.168.91.13 | 192.168.10.20 | DATA fragment, 2985 bytes | 文本数据2985字节 |
| 邮件传送过程 | 263 | 192.168.91.13 | 192.168.10.20 | from: "jgj" <jgj@test.com>, subject: test, (text/plain) (text/html) | . | 来自testmq@mqtest.com |
| 邮件传送过程 | 266 | 192.168.10.20 | 192.168.91.13 | 250 OK | 确认 |
| SMTP连接的释放过程 | 报文号 | 源站点 | 目标站点 | 报文信息及参数 | 报文作用 |
| SMTP连接的释放过程 | 269 | 192.168.91.13 | 192.168.10.20 | QUIT | 退出 |
| SMTP连接的释放过程 | 273 | 192.168.10.20 | 192.168.91.13 | 221 SMTP SERVICE CLOSED | 关闭服务器 |

(2)综合分析截获的报文,从TCP连接建立以后开始分析POP3协议的工作过程,将结果填入表2,仅考虑请求和应答报文。

表2 POP协议工作过程

|------|-----|-----------|------------------------------------------|----------------------|
| 状态 | 报文号 | 类型(请求/应答) | 信息及参数 | 报文作用 |
| 确认状态 | 454 | 应答 | +OK CMailServer 5.4.6 POP3 Service Ready | 成功连接pop服务器 |
| 确认状态 | 463 | 应答 | +OK welcome here | 欢迎 |
| 确认状态 | 464 | 请求 | PASS 111 | 密码 |
| 确认状态 | 466 | 应答 | +OK | 成功 |
| 处理状态 | 467 | 请求 | STAT | 请求服务器邮箱邮件统计 |
| 处理状态 | 469 | 应答 | +OK 3 3881 | 成功并返回 |
| 处理状态 | 470 | 请求 | UIDL | 请求查询某封文件的唯一标识,避免重复下载 |
| 处理状态 | 472 | 应答 | +OK | 成功 |
| 处理状态 | 473 | 应答 | . | Message-Text |
| 处理状态 | 475 | 请求 | LIST | 服务器请求列出消息列表 |
| 处理状态 | 477 | 应答 | +OK 3 3881 | 同意 |
| 处理状态 | 478 | 应答 | 2 489 , 3 3146 , . | Message-Text |
| 更新状态 | 480 | 请求 | QUIT | 退出 |
| 更新状态 | 482 | 应答 | +OK bye | 成功退出 |

(3)查看两次截获的报文的结果中TCP连接建立的过程,回答SMTP和POP3分别使用的TCP端口是多少。

SMTP源端口:25,目的端口:50084

POP3源端口:110,目的端口:63966

相关推荐
daizikui2 分钟前
内网穿透产品 frp ngrok FastTunnel
linux·运维·网络·nginx
HealthScience9 分钟前
如何正确书写sh文件/sh任务?bash任务
linux·运维·服务器
木子Linux11 分钟前
【Linux打怪升级记 | 报错02】-bash: 警告:setlocale: LC_TIME: 无法改变区域选项 (zh_CN.UTF-8)
linux·运维·服务器·centos·ssh
秃头菜狗27 分钟前
ubuntu 安装docker
linux·运维·服务器·ubuntu·docker·云原生
黑客Jack1 小时前
从攻击视角探讨ChatGPT对网络安全的影响
开发语言·计算机网络·安全·网络安全·php
七灵微1 小时前
【计算机网络】核心部分复习
网络·计算机网络
Re.不晚1 小时前
Java图书管理系统(简易&保姆级)
java·linux·服务器·开发语言·学习·算法·intellij-idea
敲上瘾1 小时前
虚拟地址空间与物理内存(Linux系统)
linux·运维·服务器·开发语言·c++·算法·aigc
李小白202002022 小时前
Linux 生成/proc/config.gz
linux·服务器·前端
titxixYY2 小时前
Linux下的火墙管理及优化
网络