SFB 项目经验-66-Exchagne 2016 发送163邮件不成功发送QQ成功
SFB 项目经验-66-Exchagne 2016 发送163邮件不成功发送QQ成功
问题描述:
使用Outlook 2016给QQ发邮件成功。
使用Outlook 2016给163发邮件不成功。
解决方法:
通过了解分析,发现有可能未做SPF记录,造成了给QQ发送成功,给163发送不成功。
以下记录是排错的过程,请参考。
mail 拒绝将你的邮件发送到以下邮件地址:
A01@163.com (A01@163.com)
无法传递你的邮件,因为远程邮件系统未发布有效的增强状态代码来确认确切原因,状态:"550 MI:SPF 163 mx20,RsCowABnNP7GWn5bMaraBQ--.8623S3 1535007433 http://mail.163.com/help/help_spam_16.htm?ip=180.167.153.156&hostid=mx20&time=1535007433"。
mail 提供了此错误:
MI:SPF 163 mx20,RsCowABnNP7GWn5bMaraBQ--.8623S3 1535007433 http://mail.163.com/help/help_spam_16.htm?ip=180.167.153.156&hostid=mx20&time=1535007433
供管理员使用的诊断信息:
生成服务器: EXC03.contoso.com
A01@163.com
mail
Remote Server returned '550 MI:SPF 163 mx20,RsCowABnNP7GWn5bMaraBQ--.8623S3 1535007433 http://mail.163.com/help/help_spam_16.htm?ip=180.167.153.156&hostid=mx20&time=1535007433'
原始邮件头:
Received: from EXC02.contoso.com (172.16.112.12) by
EXC03.contoso.com (172.16.112.13) with Microsoft SMTP Server
(version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id
15.1.1531.3; Thu, 23 Aug 2018 14:57:08 +0800
Received: from EXC02.contoso.com ([fe80::19de:a537:2e32:7ea0]) by
EXC02.contoso.com ([fe80::19de:a537:2e32:7ea0]) with mapi id
15.01.1531.003; Thu, 23 Aug 2018 14:57:08 +0800
From: SFBDemo01 <SFBDemo01@contoso.com>
To: "A01@163.com" <A01@163.com>
Subject: A-To-163
Thread-Topic: A-To-163
Thread-Index: AdQ6rmzcdE1XCwQGQKulPz53GPpLKw==
Date: Thu, 23 Aug 2018 06:57:05 +0000
Message-ID: <c1e3de54cfb549fbbc5c40ce3088d87a@contoso.com>
Accept-Language: zh-CN, en-US
Content-Language: zh-CN
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [172.16.112.17]
Content-Type: multipart/alternative;
boundary="_000_c1e3de54cfb549fbbc5c40ce3088d87acontosocom_"
MIME-Version: 1.0
Nslookup
ex01.contoso.com
ex02.contoso.com
ex03.contoso.com
查看是否你的公网IP,如果是,需要再==163.com是否是你的公网IP,再发邮件。
C:\>nslookup -qt=txt 163.com
服务器: UnKnown
Address: 192.168.1.1
非权威应答:
163.com text =
"v=spf1 include:spf.163.com -all"
C:\>nslookup -qt=txt ctrip.com
服务器: UnKnown
Address: 192.168.1.1
非权威应答:
ctrip.com text =
"v=spf1 include:a.spf.ctrip.com include:b.spf.ctrip.com include:c.spf.ctrip.com include:d.spf.ctrip.com -all"
ctrip.com text =
"v=spf2.0/pra include:a.spf.ctrip.com include:b.spf.ctrip.com include:c.spf.ctrip.com include:d.spf.ctrip.com -all"
ctrip.com text =
"MS=ms62746735"
ctrip.com text =
"0RhgfGwGA1HoaS1HmgmNzd+tKZb46AxM4nqm73bTsj9/3MIn0pmyIbZasbdvgvrrXYGtnr6K+wHvPhQ0QysxoQ=="
C:\>
Exchange 2013:
SPF 记录的功能和解释
SPF 记录的功能和解释
SPF的全称为Sender Policy Framework,意为发信者策略架构。
SPF记录的作用是为了防范垃圾邮件而提出来的一种DNS记录类型,SPF是一种TXT类型的记录。
SPF记录的本质,就是向收件人宣告:本域名的邮件从清单上所列IP发出的都是合法邮件而非冒充的垃圾邮件。
设置好SPF是正确设置邮件发送的域名记录和STMP的非常重要的步骤。
查看SPF记录的方法
Windows下进入DOS模式后用以下命令
nslookup -type=txt 域名
Unix操作系统下用:
# dig -t txt 域名
SPF的简单说明
v=spf1 表示 spf1 的版本
IP4 代表IPv4进行验证(IP6代表用IPv6进行验证), 注意 "ip4:" 和"IP"之间是没有空格的
~all 代表结束(注意:发布使用 -all 而不是 ~all 的 SPF 记录可能会导致递送问题)
SPF记录例释
请看以下的示例SPF记录:
yourdomain.com "v=spf1 a mx mx:mail.i-x-Cloud.com ip4:202.96.88.88 ~all"
这条SPF记录具体的说明了允许发送 @yourdomain.com 的IP地址是:
a 这个a是指 yourdomain.com 解析出来的IP地址,若没有配置应取消。
mx yourdomain.com 对应的mx,即 mail.yourdomain.com的A记录所对应的ip。
mx:mail.i-x-Cloud.com 如果没有配置过mail.i-x-Cloud.com这条MX记录也应取消 。
ip4:202.96.88.88 直接就是 202.152.186.85 这个IP地址 。
其他还有些语法如下:
- Fail,表示没有其他任何匹配发生。
~ 代表软失败,通常用于测试中。
? 代表忽略。
include 后边接代表的域名范围
如果外发的ip不止一个,那么必须要包含多个
v=spf1 ip4:202.96.88.88 ip4:202.96.88.87 ~all
测试SPF设置结果
使用之前提供的方法在Windows 命令行下输入
nslookup -type=txt 域名 查看得到的结果中是否有设置的SPF记录。
使用SPF记录的注意事项
在使用SPF记录时,最重要的需要注意的是在邮件服务器的IP地址更换后同时也要更新SPF记录。
使用Outlook 2016连接Exchange 2016再给163,携程收发邮件,正常。