我在 Debian Lenny 上运行 OpenVPN,在 OSX 上运行 Tunnelblick。我的目标是拥有一个支持 IPv6 的完全路由的 VPN。OpenVPN 服务器有一个功能齐全的 6to4 设备,所以现在我的目标是让客户端通过 VPN 路由他们的 IPv6 流量。
OpenVPN 启动后,它会运行以下命令来为 IPv6 配置其 tap0 设备:
ifconfig $dev up
ifconfig $dev add 2001:470:e910:1000::1/64
到目前为止,我一直在手动执行 OSX 方面的事情。我已到达这里:
ifconfig tap0 inet6 2001:470:e910:1000::2
route add -inet6 default 2001:470:e910:1000::1
route add -inet6 2000:: -prefixlen 3 2001:470:e910:1000::1
使用这些命令,我可以 ping client.tap0、server.tap0 和 server.6to4,但无法获得 6to4 设备以外的任何流量。如果没有这两条路由,则根本没有流量到达服务器。我没有做过太多路由或 IPv6,所以我很困惑。
答案1
确保您已启用 IPv6 转发 ( net.ipv6.conf.*.forwarding
sysctls ),并且没有意外地使用防火墙阻止流量。
另外,您是否考虑过使用 IPv6 无状态自动配置,而不是手动配置客户端?基本上,您需要radvd
在服务器上安装并让它在 tap0 设备上公布您的前缀(子网)和网关。