带有自定义固件(DD-WRT、OpenWrt 等)和 Teredo IPv6 的路由器

带有自定义固件(DD-WRT、OpenWrt 等)和 Teredo IPv6 的路由器

我想设置家用路由器(华硕 RT-N66U),以便允许出站连接。由于 ISP 不提供公共 IP 地址,因此我想使用米雷多以及动态域名解析服务提供指向 Teredo 提供的 IPv6 地址的 DNS 名称。(是的,这不是最有效和最可靠的解决方案,但对于我的目的来说已经足够了。)

然而,Miredo 目前似乎不太受支持。我尝试了 OpenWRT,目前不维持我也尝试了 DD-WRT,理论上可以通过它安装 Miredoipkg来自(较旧的)OpenWRT 包,但由于一些未满足的库依赖关系,我确实设法让它工作。

有人设法让 Miredo 在类似的路由器上运行吗?例如,通过让ipkgMiredo 软件包运行、从源代码编译它等?

答案1

要使用 Teredo,您需要 Teredo 客户端、Teredo 服务器和 Teredo 中继。并且您需要将所有这些都部署在适当的位置。

Teredo 设计为通过 NAT 工作,但它只为每个 Teredo 客户端提供一个 IPv6 地址,该地址分配给运行 Teredo 客户端的主机。

因此,您的路由器不是部署 Teredo 客户端的合适位置。它将为路由器本身提供 IPv6 访问权限,但不提供与其连接的 LAN 访问权限。


连接到许多不同网络且无论身在何处都需要 IPv6 的笔记本电脑可以从运行 Teredo 客户端中受益,但它只能连接到具有 Teredo 中继的网络。(虽然存在第三方中继,但不提供可靠的服务。)

但是,您的路由器可能是部署 Teredo 中继的合适位置。您可以在任何具有公共 IPv4 地址的主机上部署 Teredo 中继。假设您的路由器具有公共 IPv4 地址,它就可以运行 Teredo 中继。

在路由器上运行 Teredo 中继的好处是,它使 Teredo 客户端能够与 LAN 上的 IPv6 主机进行通信。当然,这只有在您的 LAN 首先支持 IPv6 的情况下才有用。

miredo软件包可以用作客户端或中继,具体取决于您的配置方式。在默认配置中,它充当客户端。以下是将/etc/miredo.conf其用作中继的示例:

InterfaceName   teredo
RelayType       relay
BindPort        64646

执行此操作,然后重新启动miredo,您将拥有一个功能齐全的继电器。


为了在您的 LAN 上获得 IPv6,您有几种选择。您可以使用 6to4,但由于 6to4 中继配置不足,因此不建议这样做。

更好的选择是使用隧道服务。如果您的路由器有公共 IPv4 地址,我建议使用 tunnelbroker.net 作为您的隧道提供商。

答案2

最后我自己为 OpenWRT 打包了 Miredo。目前 openwrt/packages 的 pull-request 正在等待处理:https://github.com/openwrt/packages/pull/4201

与此同时,用于手动构建软件包的打包文件可在以下位置获取:https://github.com/ppetr/openwrt-miredo

相关内容