有没有人试图运行仅IPv6的SMTP引擎?几乎每个人都为主要的前端服务器配置了IPv6。我很好奇是否有人尝试运行仅IPv6的MTA并收到任何连接错误。
IPv6仅是可行的解决方案吗?我可以期待一些挥之不去的连接问题吗?还是魔术师掉到了互联网上,并在端口25上使IPv6-to-IPv4像直接连接上的魔术一样工作?
有没有人试图运行仅IPv6的SMTP引擎?几乎每个人都为主要的前端服务器配置了IPv6。我很好奇是否有人尝试运行仅IPv6的MTA并收到任何连接错误。
IPv6仅是可行的解决方案吗?我可以期待一些挥之不去的连接问题吗?还是魔术师掉到了互联网上,并在端口25上使IPv6-to-IPv4像直接连接上的魔术一样工作?
Answers:
简短的答案:从技术上讲,它将起作用,但是您将收到许多无法投递的邮件。
长答案:获取您的SMTP日志。筛选出您发送邮件的所有域名。检查它们是否具有IPv6 DNS和MX。一旦获得100%的收益(这十年来就不会),那么您可以尝试IPv6 IP是否真正起作用。
我手边没有任何有趣的生产日志(我没有足够的域值得关注),但是我从https://gist.github上获取了提供免费电子邮件服务的域列表。 com / tbrianjones / 5992856
在前536个中,有173个似乎没有将MX解析为IP,7个中的MX解析为IPv4和IPv6 MX地址,其余356个中只有IPv4 MX。在拥有MX的域之外,这还不到百分之二,即使在实际尝试IPv6地址查看其是否正常之前。即使承认列表中的域在任何意义上都不是大多数Internet电子邮件域,但我认为这不足以运行您实际希望使用的邮件服务器。
编辑:由于3600个免费电子邮件提供商的随机列表中的536个字母顺序的第一个字母不是很有代表性,因此我检查了一些大域名,这是那些没有IPv6 MX的域名(记住IPv6可访问还需要DNS ):
您要注册域名吗?
要么 。。。您要从此站点发送邮件吗?
(当然)gmail.com和google.com具有IPv6,Facebook.com也具有IPv6。
对于那些感兴趣的人,我在bash脚本这一行中使用了一个祖先:
for i in $(cat domains.txt) ; do
echo $(
echo $i
echo \;
for j in $(dig +short mx $i) ; do
dig +short a $j
dig +short aaaa $i
done \
| sed -r -e 's/[^;:\.]//g' \
-e 's/^:+$/v6/' \
-e 's/^\.+$/v4/' \
| sort -u
)
done \
| sed 's/ v4 v6/ v4+v6/' \
| sed -r 's/^([^;]+); *([^;]*)$/\2;\1/' \
| sed 's/^;/none;/' \
| sort '-t;' -k 1,1 \
| tr ';' '\t'
这当然是可以改善的,但是大多数奇怪的事情是使输出更漂亮。
::1
。不,IPv4并不容易。IPv4比IPv6稍微复杂一些。但是真正使事情变得复杂的是NAT,隧道以及所有其他使永久永久保留IPv4的徒劳尝试所导致的变通办法。IPv6的一项非常有用的功能是,即使您的路由和/或地址已完全混乱,链接本地地址也将在您启动接口后立即起作用。
2001:db8::ff00:42:8329
本地地址吗?我不知道。我的iptables设置如何处理IPv6转发?有几个小时的阅读时间。不要误会我的意思,我完全支持IPv6,但是出于很多原因,我仍然至少要在本地网络中拥有IPv4(是的,我确实需要本地网络)。
答案取决于您的成功标准。但很可能不会。
如果您经营的企业中任何未送达的邮件都意味着可衡量的成本。那么答案是否定的,仅IPv6尚不可行。
有许多提供程序,包括一些仍在运行仅IPv4的大型提供程序。我所知道的最大的提供双堆栈支持的提供商是Gmail,但是我经常看到Gmail拒绝通过IPv6进行传送尝试,然后通过IPv4重试成功。因此,即使将邮件发送到具有双堆栈的提供商,您也不会体验到可靠的传递。
如果您的主要目标不是为您的用户提供可靠的邮件服务,而是使IPv4看起来不太可行。并且,如果您只需要足够高的成功率,而不是在将交付失败归咎于仅运行IPv4的提供商时让所有人都嘲笑您,那么答案就是,仅IPv6在当今几乎可行。
希望再过两年,大多数管理员将同意仅IPv4不再可行,并且将需要双堆栈。