![仅限 IPV6 的服务器](https://linux22.com/image/504392/%E4%BB%85%E9%99%90%20IPV6%20%E7%9A%84%E6%9C%8D%E5%8A%A1%E5%99%A8.png)
我刚刚使用 GO6 为我的服务器(运行 Ubuntu Karmic Koala)设置了 IPV6 隧道,并且正在尝试研究它的用例。
我有一个动态 IP 地址,以及一些奇怪的代理设置,导致自动 DDNS 目前无法与大多数提供商兼容 - 我有时需要手动进行设置
我的网络服务器已经在运行 IPv6,并且除此之外很少有人支持它(我需要努力解决这个问题!),它麻烦少了很多。
虽然我确实有其他选择(Google 应用程序),但我正在考虑运行电子邮件服务器,并且想知道如果 IPv4 由于端口阻止而“失败”,它会切换到 IPv6,以及 IPv6 邮件服务器如何处理向 IPv4 系统发送邮件?
答案1
您问的是当 IPv4 不可用时,IPv4 是否会“故障转移”到 IPv6。是的,如果从错误的角度看,情况确实如此,但实际上情况恰恰相反。
启用 IPv6 后,IPv6 优先于 IPv4。因此,实际上 IPv4 不会“故障转移”到 IPv6。相反,如果 IPv6联合国可用时,它会“故障转移”至 IPv4。
您的问题专门询问了 IPv6 邮件服务器,但这种行为是普遍存在的。HTTP、FTP、IMAP,等等。如果网站同时启用了 IPv6 和 IPv4,您的浏览器将优先使用 IPv6 版本(假设您具有 IPv6 连接)。如果您要向启用 IPv6 的邮件服务器发送邮件,它将通过 IPv6 发送。
(至于如果您的 IPv6 失败,它是否会通过 IPv4 再次尝试,我目前无法回答 —— 不幸的是我自己没有测试过。如果这是一个问题,您可以使用两个 MX 记录 —— 一个指向仅限 IPv6 的主机名,另一个指向仅限 IPv4 的主机名。)
如果你IPv6–启用您的邮件服务器,但仍保持 IPv4 启用(例如在 Postfix 上您将设置inet_interfaces = all
,而不是inet_interfaces = ipv6
),那么您将能够向 IPv4 和 IPv6 邮件服务器发送邮件,以及从 IPv4 和 IPv6 源接收邮件。
这不是您问题的一部分,但确实与 IPv6 邮件服务器有关:目前所有主要 DNSBL(例如 Spamhaus)都不支持 IPv6。虽然我还没有看到任何来自 IPv6 地址的垃圾邮件,但请注意,您可以采取的唯一垃圾邮件预防措施是基于关键字的。
答案2
支持 v4 和 v6 的应用程序在 v4 上失败可能尝试 v6,但也可能不行。双栈应用程序在这方面各有不同。例如,有些应用程序尝试在 v6 中启动,这对您来说没问题,但对其他人来说却很糟糕。有些应用程序会按照您的意愿故障转移到 v6,但可能不会在您想要的时候这样做:如果它们没有“足够快”地收到 v4 响应,它们可能会这样做,这使得它们很难调试。
还要记住的是,大多数应用程序都在操作系统上运行,总是在 v4 中执行 DNS 查找,因为它们没有启用 v6 DNS 解析。这会使调试更加困难。
这里的主题是:你可以做你想做的事,但你至少在接下来的几年里会面临一些非常困难的客户支持和调试。如果你喜欢生活在前沿,那就继续狂欢吧。
(免责声明:作为 IETF v6 实验的一部分,我运行了这样的系统一段时间,但由于调试问题而将其关闭。)
答案3
理论上,您的接口不会有 IPv4 接口,因此任何用户(即您机器上的客户端)都会收到“无法到达目的地”的信息。但是,有时现实情况会让这种情况变得非常难以实现。
这些客户端中有多少会表现得完全取决于客户端。有些客户端的运气很差,有些客户端只会使用 IPv4,当 IPv4 不可用时就会失败。
您将能够访问某些地方,但不是全部。有时,没有 IPv6 就很难生存。