设置显示“此域没有邮件服务器”的DNS记录的合适方法是什么?
我假设我需要一个特殊的MX记录来执行此操作,否则将假定A记录为答案。
我问这个问题是因为似乎最好在第一线停止邮件,因此拒绝所涉域名的邮件并不会成为Web服务器的责任。
设置显示“此域没有邮件服务器”的DNS记录的合适方法是什么?
我假设我需要一个特殊的MX记录来执行此操作,否则将假定A记录为答案。
我问这个问题是因为似乎最好在第一线停止邮件,因此拒绝所涉域名的邮件并不会成为Web服务器的责任。
Answers:
由于通过主机的地址记录直接联系主机的回退,单个“空MX”记录为“ MX 0”。是指示主机不接受电子邮件的明显首选方法。这类似于“空SRV”记录(“ SRV 0 0 0。”),该记录专门将服务标记为不可用(根据SRV-RR RFC 2782)。
RFC 7505已对此进行了标准化(截至2017年12月,这是一个提议的标准)。
“ MX 0本地主机。” (或指向:: 1和127.0.0.1的等效标签)也是可以接受的,但对于必须向自身发送邮件(例如cron作业输出)但不接受外部邮件的主机更合适。此类主机可能具有可操作的邮件服务器,该服务器已从Internet进行防火墙防护,但可以访问其他服务。
没有MX记录并阻止SMTP端口不会阻止人们浪费自己的传入带宽来尝试与不存在的服务器联系。上面的单个MX记录方法确实可以防止此类通信,因为当存在至少一个MX记录时,永远不会尝试使用地址类型的记录。这可能不会阻止某些垃圾邮件发送者尝试直接通过其地址记录与主机联系。但是,由于它确实阻止了合法流量的尝试,因此您可以100%地确定垃圾邮件源。
不应使用私有地址,因为一个人不能知道它们的结局。使用其他保留的地址(例如192.0.2.0/24的文档地址)也是不适当的,除非试图在垃圾邮件发送者试图连接时识别并捕获其自身网络内的垃圾邮件。
我不知道“标准”方式是什么,但是我遇到过这种方式:将设置MX record
为回送地址。
我想任何私有IP地址(或“无效” IP- 0.0.0.0
)都能解决问题。我个人认为这是一件很糟糕的事情,但它会做您想要的。您可以将其与主机名相结合,例如thisdomaindoesntacceptemail.sostopsendingit
作为对邮件管理员的服务,由于您的域不接受电子邮件,邮件管理员最终将获得“电子邮件被拒”的标签。:)
但是,为什么不删除MX record,并在上设置防火墙规则A record以阻止SMTP和TLS(以及任何其他邮件端口)呢?
这样就可以理解问题了,任何执行查找的管理员都将看不到MX record,而回退连接被拒绝A record将消除您对配置意图的任何怀疑,如果有人在看到no之后甚至更仔细地看MX record。
MX record
。
我认为将不存在的DNS名称指定为域邮件中心(MX)就足够了。
UPD。:最后是http://tools.ietf.org/html/draft-delany-nullmx-00
UPD。2:最终,现在它发展成为IETF 提出的标准:RFC 7505:不接受邮件的域的“空MX”无服务资源记录
this domain doesn't accept email
。
MX 0 localhost.
,它将把它反弹回发送者。