SMTP工作过程:
为了能够明白介绍SMTP的工作过程,我们可以先介绍邮件的构成,然后再介绍SMTP的交互过程:
一、邮件由三部分组成:信封(envelope)、首部(邮件头部)、主体
1.信封:
信封是MTA交付的,由SMTP的两个命令产生:
MAIL From:<>
RCPT To:<>
2.首部:
我们常说的邮件头部,邮件源文件的上部就是首部。首部是由用户带来MUA使用。
一般由如下字段组成:
"Return-Path:" 表明怎么回到发送者,即返回的路由
"Received:" 在MTA到MTA之间,一般每个MTA都会添加Received:,从而形成一个MTA的列表,能够用于分析邮件传递的路径。
"Message-Id:" 第一个MTA 创建,全球唯一的邮件标记
"From:"
"To:"
"Subject:"
"Date:"
下面例子为gmail邮箱的邮件头部:
Delivered-To:
Received: by 10.90.75.10 with SMTP id x10cs35349aga;
Sun, 10 Oct 2010 23:40:14 -0700 (PDT)
Received: by 10.142.174.12 with SMTP id w12mr3565564wfe.408.1286779213246;
Sun, 10 Oct 2010 23:40:13 -0700 (PDT)
Return-Path: <>
Received: from mail.gdxte.com ([203.86.10.24])
by mx.google.com with SMTP id q9si15091363wfq.21.2010.10.10.23.40.08;
Sun, 10 Oct 2010 23:40:12 -0700 (PDT)
Received-SPF: neutral (google.com: 203.86.10.24 is neither permitted nor denied by best guess record for domain of ) client-ip=203.86.10.24;
Authentication-Results: mx.google.com; spf=neutral (google.com: 203.86.10.24 is neither permitted nor denied by best guess record for domain of )
Message-Id: <>
Received: from [192.168.0.5]; Mon, 11 Oct 2010 14:38:54 +0800
From: "chenxuxi" <>
To: <>
Subject: =?gb2312?B?uN+1wtDFvNu48Q==?=
Date: Mon, 11 Oct 2010 14:40:10 +0800
SPF=Sender Policy Framework 发件人策略框架,要做发送人校验
SPF介绍:
3.正文
就是邮件的内容,DATA命令发送的内容。
二、邮件的交互过程:
一封邮件把正文部分,MUA加上一些首部字段,把结果传到MTA,MTA加上一些首部字段,加上信封,
并把结果发送到另一个MTA。
sender -> MUA -> MTA -> (routing) -> MTA -> MUA -> receiver
MUA:Mail User Agent,邮件客户端程序,比如Foxmail、OUTLOOK及web客户端界面
MTA:Mail Transport Agent or Message Transfer Agent,消息传输代理。
这部分程序负责存储和转发、发送EMAIL。它从MUA或者其他的MTA 接收到邮件后,就存在在本地,并分析收件人或者转发到其他的MTA。在处理过程中,它通常会编辑、添加邮件头内容。比如Sendmail、Exchange等。
下面截图为smtp交互过程的抓包截图:
参考:1.tcp/ip详解卷1:协议
2.
3.
阅读(4324) | 评论(0) | 转发(0) |