如何做邮件服务器的IP反向解析

时间: 2011-06-18 / 分类: 邮件服务器 / 浏览次数: 27,442 / 13个评论 发表评论

我们真正要架设一台企业用的邮件服务器,就需要做到邮件畅通无阻,特别是需要发海外邮件的,你的邮件不会被对方邮件服务器拒绝,不会被对方邮件服务器判为垃圾邮件。会不会判为垃圾邮件咱不说,如果直接被拒绝了连判为垃圾邮件的机会都没有啊。一般正规一点的邮件服务商都会检查SPF跟DKIM,如Gmail,而还有一些邮件服务商还会通过检查ip反向解析信息来判断这个邮件是否来自这个邮件服务器,如AOL。

我们在windows的dns服务器中会看到了正向查找区域与反向查找区域这两个区域,通常我们可以在正向查找区域里添加A记录、MX记录、CNAME记录、TXT记录等等,这就是我们常说的域名解析,在反向查找区域我们一般会添加PTR记录,这就是我们所说的IP反向解析了。

A记录解析名字到地址,PTR记录解析地址到名字,地址是指一个客户端的IP地址,名字是指一个客户的完全合格域名。通过对PTR记录的查询,达到反查的目的。

反向域名解析系统(Reverse DNS)的功能确保适当的邮件交换记录是生效的。这是一个最常见的问题(尤其是国外的邮件系统更是如此)。更多的电子邮件提供商是使用反向域名解析系统查找来确认信息是从哪里来的。由于这种方式的使用变得更广泛,那些没有正确地发布反向域名解析系统信息的域可能更常发生邮件的退回。所以,当正向域名解析完成后还应当向您的线路接入商(ISP)申请做反向地址解析,特别是涉外邮件之类,以减少被国外机构退信的可能性。

反向解析验证其实是对方服务器在进行的,如果我们没有做反向解析,那么对方服务器的反向解析验证就会失败,这样对方服务器就会以我们是不明发送方而拒收我们发往的邮件,这也就是我们排除其它原因后(如被对方列入黑名单、没有MX记录、使用的是动态IP地址等等)在没做反向解析时无法向邮件服务器发信的原因。

要做好反向解析首先要有固定公网IP地址、可用域名。例如您有abc.com的域名,可以要求您的域名注册商为您添加一个okmail.abc.com的域名并将其A记录指向您的SMTP服务器出口公网IP地址,接着请与您的固定IP所属ISP联系要求为您的IP反向解析至okmail.abc.com。完成后别忘了将您的SMTP服务器的HELO域名改为okmail.abc.com,这样才可以达到目的。

怎样去做IP反向解析呢?
去找你的IP提供商,找域名提供商是没用的,一般会向托管机房申请,他们会去找上级提供商的,但很多国内IDC都不知道反向解析咋回事,所以你如果托管邮件服务器一定要搞清楚他们是否能提供这个服务,别他们狗屁都不知道,到时候你就麻烦了。
可以到http://www.dnsstuff.com去查一下whois信息,看这个IP是谁提供的。

怎样查IP是否做了反向解析呢?
1、ping -a 211.150.72.144,看能不能ping个域名出来,如果有域名,就表示解析OK了。
2、nslookup -qt=ptr 211.150.72.144, 看结果能不能解析出域名。

一般做反向解析是收费的,上次给人做邮件服务器的时候咨询了一下,需要3K呃。
如果我们在同一个IP上提供了多个域名的邮箱服务,也不需要对每个域名都做反向解析,只需要对主域(HELO域)做反向解析就行了。

那咱们没法做反向解析能不能有其他方法呢?
1、去花钱买中继服务器。
2、IP反向解析欺骗。
我们可以将邮件系统的HELO域设定为你需要提供的PRT记录。比如你的IP是211.12.123.2,可以尝试将HELO域设定为如下格式:
2.123.12.211.in-addr.arpa
有一些垃圾邮发送者使用了这种方式,据说可以逃过大多数的IP反向解析检查。当然,这不是全能的方法,只是在万不得已的情况下尝试,因为根据RFC821标准及RFC1035标准的规定,这样的HELO域并不规范(正常的HELO域正确无误的域名A记录),如果像Sina一样的策略,需要同时符合RFC821标准及RFC1035标准,并对IP反向解析和HELO信息进行检查。

13个评论

  1. 大概是个博客
    2013/08/19 09:56:10

    被拒绝了,原因未知

  2. 小飞
    2013/08/15 14:59:58

    你好,我用hmailserver架设了一个邮件服务器,昨天下午还能给sina、163、gmail等发送邮件,但是今天就无法给sina发送邮件了,其他的都能发。我发给sina的会返回一下内容
    meibeihu.student@sina.com
    Error Type: SMTP
    Remote server (60.28.2.248) issued an error.
    hMailServer sent: RCPT TO:
    Remote server replied: 550 #5.7.1 Your access to submit messages to this e-mail system has been rejected.
    望指点。

  3. 大概是个博客
    2012/09/19 12:49:25

    @顾亮,我一般比较喜欢4.2.2.2那个,还挺稳定的,也祝你全家中秋快乐

  4. 顾亮
    2012/09/19 09:34:04

    老大,当初我也怀疑是dns的问题,换了其他国内的移动的dns还是没有,多谢老大提供的DNS列表,我用了一个美国的DNS后就好了,谢谢老大。没有你我们就没法活了,最您全家中秋节快乐。

  5. 大概是个博客
    2012/09/18 17:59:29

    @顾亮,你那个应该是服务器使用的dns的问题,到http://dagai.net/dns找个改了试试看。

  6. 顾亮
    2012/09/18 17:04:07

    大概老大,前不久进不了你的博客,我都要急死了。现在有一个很棘手的问题。

    我们公司的hmail收发国内的邮件正常,今天发送一封邮件到摩托罗拉,发送不过去,退回来说:
    The following recipient(s) could not be reached:

    dptc63@motorolasolutions.com
    Error Type: SMTP
    Error Description: No mail servers appear to exists for the recipients address.
    Additional information: Please check that you have not misspelled the recipients email address.
    用hmaiserver上面自带的“MX查询”功能查一下域名“@motorolasolutions.com”,结果查询不到ip,但是用163邮箱就能发过去。

    我们的ip:112.4.150.148

  7. 大概是个博客
    2012/07/04 19:03:01

    @habib,没有跟日本台湾发邮件测试过,我测试的只发现aol,helo设置就是那个localhost name

  8. habib
    2012/07/01 16:53:11

    helo设置我认为在smtp–delivery of email下的 local host name 框。

  9. habib
    2012/07/01 16:41:43

    sina.com没有此类检测,aol有,日本和台湾有。

  10. 大概是个博客
    2012/06/11 08:42:35

    新浪应该没检测反向解析,我试过那么多只发现AOL有要求这个,文章里面有些内容是抄过来的,你看退信怎么描述的。
    我现在没有环境,没法看,HELO域的设置应该是在SMTP设置里面。

  11. owen
    2012/06/09 10:21:38

    老大,我就杯具了,我的服务器托管商就说我托管的那个机房不能做IP反向解析,现在我的邮件连发到新浪都会被退。现在我想问下你的说的反响解析欺骗是怎么做的。
    IP反向解析欺骗。
    我们可以将邮件系统的HELO域设定为你需要提供的PRT记录。比如你的IP是211.12.123.2,可以尝试将HELO域设定为如下格式:
    2.123.12.211.in-addr.arpa

    这个我不太明白,HMAILSERVER的HELO域在哪儿设置

  12. Dagai
    2011/08/22 10:01:36

    应该是可以的,但具体如何做你只能向上级找咯

  13. daviv2
    2011/08/21 00:38:02

    请教老大!如果是BGP的IP怎么办呢?能做反向解析么?如何做?

发表评论

您的昵称 *

您的邮箱 *

您的网站