首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >IPv6的发送邮件问题

IPv6的发送邮件问题
EN

Server Fault用户
提问于 2013-02-24 19:51:34
回答 1查看 2.8K关注 0票数 1

我有一个电子邮件服务器,配置了多个sendmail实例,每个实例运行在不同的IPv4和IPv6地址上。一切都在顺利进行,直到某些域/电子邮件(显然是随机的) sendmail尝试从IPv6地址而不是IPv4发送电子邮件时,我才开始接收以下消息:

代码语言:javascript
运行
复制
SYSERR(root): makeconnection: cannot bind socket [IPv6:2001:db8::2]: Address family not supported by protocol
to=<xxx@bad-domain.example>, delay=04:23:07, xdelay=00:00:00, mailer=esmtp, pri=11918385, relay=bad-domain.example. [198.51.100.5], dsn=4.0.0, stat=Deferred: Address family not supported by protocol

IPv6和IPv4地址被混淆。

我所观察到的,但我不确定这是否是问题所在,针对坏域名的MX记录是CNAME,而不是直接的A或AAAA记录。

我在Fedora 16上使用Sendmail 8.14.5,所有的IP都是静态配置的(IPv4 + IPv6),如果基本问题无法解决,有什么方法可以指示sendmail只对指定域的列表使用IPv4?

Sendmail.mc的摘录:

代码语言:javascript
运行
复制
CLIENT_OPTIONS(`Family=inet,Addr=192.0.2.2')dnl
CLIENT_OPTIONS(`Family=inet6,Addr=2001:db8::2')dnl
DAEMON_OPTIONS(`Name=MTA-v4,Family=inet,Addr=192.0.2.2')dnl
DAEMON_OPTIONS(`Name=MTA-v6,Family=inet6,Addr=2001:db8::2')dnl

坏域的一些例子: donpac.ru,montevideo.com.uy,dalia-ingenierie.fr,opela.cz,orange.net,poisl.com.br,tamil.com,zerong.cn

LE:似乎都有一个CNAME作为MX记录,没有一个CNAME的解析为IPv6

EN

回答 1

Server Fault用户

发布于 2013-10-28 10:47:36

虽然上面的评论似乎表明,这不是一个v4逐域的问题,我有理由去做您所描述的,今天,并发现了这个问题,同时搜索。

我发现强制每个域进行v4传递的方法是启用mailertable,方法是

代码语言:javascript
运行
复制
FEATURE(`mailertable')

在我的sendmail.mc中(如果它已经存在,您就不需要再添加它)。然后,通过重写DNS并指示传递到邮件表文件中的v4地址,强制基于v4的传递;这是来自/etc/mail/mailertable的:

代码语言:javascript
运行
复制
.example.com    esmtp:[260.240.18.38]
example.com     esmtp:[260.240.18.38]

我通常不编辑域名,但我不想让那些错误地实现了smtp ipv6 6的同事感到尴尬,因此需要我强制通过v4进行传递。IP地址显然也是假的;但是在生产过程中,它是他们的主MX的v4地址,取自DNS。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/482035

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档