Linux
基於 VPN 的 IPv6 路由
我在 Debian Lenny 上執行 OpenVPN,在 OSX 上執行 Tunnelblick。我的目標是擁有一個支持 IPv6 的完全路由的 VPN。OpenVPN 伺服器有一個功能正常的 6to4 設備,所以現在我的目標是讓客戶端通過 VPN 路由他們的 IPv6 流量。
OpenVPN 啟動後,它會執行以下命令來配置其 tap0 設備以支持 IPv6:
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,所以我很難過。
確保您啟用了 IPv6 轉發 (
net.ipv6.conf.*.forwarding
sysctls),並且您不會意外地將流量隔離。此外,您是否考慮過 IPv6 無狀態自動配置而不是手動配置客戶端?基本上,您需要
radvd
在伺服器上安裝並讓它在 tap0 設備上宣傳您的前綴(子網)和網關。