suspicious 上的 IPv6 服务
终于抽空在 suspicious.org 的 postfix 上启用了 IPv6。很长一段时间我们都在用通往 Hurricane Electric 的 IPv6 隧道,但除了 ping6、traceroute6 和 Web 服务器之外,实际上几乎没有在生产环境中使用 IPv6 服务。我觉得互联网上真正的杀手级应用仍然是电子邮件,尽管它相较于 p2p 流量的带宽显得黯淡;如果电子邮件不能在 IPv6 网络上无缝传输,我们根本没有机会把大众转向这套新协议。我的主要目标是让 IPv6 上提供的服务和 IPv4 完全相同,等有空的时候再部署一些仅限 IPv6 的服务,以此来激励切换。
Postfix 现在已经完全支持 IPv6。我们的主机 inanna 运行 Linux,并且有指向隧道代理的 SIT 接口。如果 speakeasy 开始提供原生 IPv6 服务,我可以很轻松地与它们一起转向双栈模式;与此同时,隧道代理服务位于纽约,往返时间在我们这台机器上不到 15 ms,算是挺不错的。
在 main.cf 中加入如下语句即可为 Postfix 配置 IPv6 服务:
inet_protocols = ipv4,ipv6
设置完并重启 Postfix 后,最困难的事就是在互联网上找到可用的 IPv6 SMTP 服务器。我很想看到一些关于可达 IPv6 SMTP 服务器的统计数据,因为我查到的大多数涉及 IPv6 的站点都没有提供 IPv6 SMTP。话虽如此,经过一番挖掘,我发现 Pittsburgh Supercomputer Center(psc.edu)拥有已开启 IPv6 的 MTA,并且在它们的服务器上测试了一些随机地址,期待收到一条返回信息,说明邮件是通过 IPv6 发送的:
<[email protected]>: host mailer1.psc.edu[2001:5e8:1:3a::64] said: 550 5.1.1
<[email protected]>… User unknown (in reply to RCPT TO command)
Reporting-MTA: dns; dns.suspicious.org
X-Postfix-Queue-ID: 68F217CE4
X-Postfix-Sender: rfc822; truman@suspicious[nospam].org
Arrival-Date: Sat, 24 May 2008 04:16:10 -0400 (EDT)Final-Recipient: rfc822; [email protected]
Action: failed
Status: 5.0.0
Diagnostic-Code: X-Postfix; host mailer1.psc.edu[2001:5e8:1:3a::64] said: 550
5.1.1 <[email protected]>… User unknown (in reply to RCPT TO command)
于是我想确认我们 MTA 发往对方 MTA 的外发消息是否是通过 IPv6 发送的,于是我只查看了日志:
[root @ inanna : /etc/postfix]>grep smtp /var/log/maillog | grep “\[2001"
May 25 00:24:57 inanna postfix/smtp[8108]: 6781615C6B: to=<[email protected]>, relay=mailer1.psc.edu[2001:5e8:1:3a::64], delay=2, status=bounced (host mailer1.psc.edu[2001:5e8:1:3a::64] said: 550 5.1.1 <[email protected]>… User unknown (in reply to RCPT TO command))
我还没有测试从外部进入的 IPv6 到我们的 MTA,但我推测它可以工作,因为我已经为我们域名的 MX 记录设置了 A 和 AAAA 记录。订阅一个使用 IPv6 MTA 的邮件列表应该是个不错的测试。
原文发布于 truman.net。查看存档副本。