强制 openVPN 使用 IPv6

jze*_*eus 2 linux vpn ipv6 openvpn linux-networking

我发现我的 VPN 连接从test-ipv6.com泄漏,显示我的 VPN 的 IPv4 地址但我的家庭路由器的 IPv6 地址。

我使用以下.ovpn文件设置了我的 VPN 连接,该文件是从privateinternetaccess.com下载的

client
dev tun
proto udp
remote ireland.privateinternetaccess.com 1197
resolv-retry infinite
nobind
persist-key
persist-tun
cipher aes-256-cbc
auth sha256
tls-client
remote-cert-tls server
auth-user-pass
comp-lzo
verb 1
reneg-sec 0
crl-verify crl.rsa.4096.pem
ca ca.rsa.4096.crt
disable-occ
Run Code Online (Sandbox Code Playgroud)

如何配置和/或传递哪些标志openvpn以启用 IPv6 路由?

Gai*_*aia 6

目前,OpenVPN 要求您在隧道内配置 IPv4,您可以将 IPv6 添加为双栈。你在隧道外做什么取决于你(1)。

话虽如此,这就是您的答案:OpenVPN 2.3(并且很可能是 2.4)仅在 IPv6 ( 2 ) 中不起作用

此外(3),这里有两种 OpenVPN 支持的设备类型:tun 和 tap。

Tun 设备接收原始 IP 数据包并将它们提供给用户空间程序。在 OpenVPN 的情况下,该程序加密这些数据包并将它们发送到隧道的另一端,在那里它们被解密并发送回该侧的 tun 设备。换句话说,tun 设备的行为就像一个虚拟的点对点网络连接。

Tap 设备使用原始以太网帧而不是 IP 数据包。Tap 设备就像一个虚拟以太网卡 - 发送到它的任何数据包都会通过隧道并备份另一端的以太网堆栈。因此,使用 tap 的 OpenVPN 连接就像一个虚拟以太网总线,恰好连接了两个以太网卡 - 隧道的每一侧一个。使用 tap 的缺点是对于每个数据包 14 个以上的字节(以太网标头)用完,优点是我们可以使用任何协议,而不必考虑 OpenVPN 对它的支持。

第一篇使用 tun 描述 OpenVPN 中 IPv6 支持的文章。第二个使用tap:

  1. https://community.openvpn.net/openvpn/wiki/IPv6(尽管 IPv6 不适用于某些移动设备,除非您使用 2.4+,请参阅 ( 4 ))

  2. http://silmor.de/ipv6.openvpn.php(请注意,自从撰写本文以来,OpenVPN 已经启用了 IPv6 传输——我们现在是 2.2+ 版本)