无IPv6 网络解决方案:用 OpenVPN + 云主机访问家庭 IPv6 服务

一、场景及目标

✅ 重点需求

公司网络环境缺乏 IPv6 支持,导致无法直接访问家庭 IPv6 服务。需通过 OpenVPN(基于 IPv4 连接)接入云服务器,实现以下目标:
  • 获取 IPv6 网络能力:通过云服务器中转,为本地电脑分配 IPv6 地址,以访问家庭 IPv6 服务
  • 保留原有 IPv4 路由:不干扰公司 IPv4 网络(IPv4 流量不走 VPN
  • 建立 IPv6 专用通道:利用云服务器的双公网 IP(IPv4+IPv6),构建直达家庭 IPv6 服务的通信隧道

二、云主机环境准备(Ubuntu 24.04 LTS)

1 、确认 IPv6 可用性,服务器要有IPv4和v6双公网
ping6 2001:4860:4860::8888  # 测试 IPv6 连通性
ip -6 addr show              # 查看 IPv6 地址(如 2402:4e00:c032:5b00:xxxx:xxxx:xxxx:xxxx)
2、安装 OpenVPN
wget https://git.io/vpn -O openvpn-install.sh
chmod +x openvpn-install.sh
sudo bash openvpn-install.sh

安装选项说明

选项 推荐选择 原因
协议 UDP 速度更快,适合 VPN
端口 自定义(如 65194) 避免被屏蔽或扫描
IPv6 支持 Yes 必须启用
公网 IPv6 输入服务器的 IPv6 地址 确保正确绑定
推送 IPv4 默认路由 No 关键!避免干扰公司网络
DNS Default 系统默认的即可
 

三、服务器配置优化

1、手动修改 /etc/openvpn/server/server.conf 默认不用修改
# IPv6 关键配置
server-ipv6 fddd:1194:1194:1194::/64  # 私有 IPv6 段,可自定义
push "route-ipv6 2000::/3"            # 推送 IPv6 默认路由
tun-ipv6                              # 启用 IPv6 支持
push "dhcp-option DNS 2001:4860:4860::8888"  # 强制 IPv6 DNS

# 禁止 IPv4 干扰(确保无以下行)
# push "redirect-gateway def1"
2、防火墙规则
iptables -I INPUT -p udp --dport 65194 -j ACCEPT  # 放行 OpenVPN 端口
3、重启 OpenVPN
sudo systemctl restart openvpn-server@server.service

四、客户端配置

1、下载客户端文件
  • 提前安装好客户端软件 https://openvpn.net/client/
  • 从服务器下载 /root/CloudTencent.ovpn 到本地
2、修改 .ovpn 文件然后导入客户端
# 添加以下两行(关键!)
route-nopull           # 禁止 OpenVPN 修改 IPv4 路由
route-ipv6 2000::/3    # 添加 IPv6 路由

# 删除所有 redirect-gateway 相关行
3、连接后验证
ipconfig
  • 正常情况
    • IPv4 地址显示为公司内网(如 192.168.1.x)。
    • IPv6 地址显示为 VPN 分配(如 fddd:1194:1194:1194::xxx)。
  • 测试家庭 IPv6
ping -6 240e:391:cd1:ea0:a85a:e07d:8147:c

五、故障排查表格

问题现象 诊断步骤 解决方案
客户端无 IPv6 1. 检查 server.conf 是否有 tun-ipv6
2. 运行 journalctl -u openvpn-server@server.service
补全配置并重启服务
家庭 IPv6 不通 1. 在服务器执行 ping6 240e:391:cd1:ea0:a85a:***
2. 检查家庭防火墙规则
放行 fddd:1194::/64 的入站流量
IPv4 走 VPN 1. 检查 .ovpn 是否有 route-nopull
2. 运行 route print 查看 Win10 路由表
手动删除 10.8.0.0 路由
连接超时 1. 检查云厂商安全组
2. 测试tcp端口 telnet 101.35. xxx.xxx 65194
3. 测试udp端口 nc -vzu 101.35.xxx.xxx 65194
放行 UDP 65194 端口

六、最终效果

  • 🌐 公司电脑
    • IPv4 → 走公司原有网络
    • IPv6 → 走 OpenVPN 隧道(访问家庭 IPv6)
  • ☁ 云服务器
    • 仅中转 IPv6 流量,不干扰 IPv4
    • 经过验证,当目标网站支持双栈(IPv4/IPv6)时,系统默认优先走IPv4,所以不用担心v6流量会走云主机中转,如果确实有影响到,可以添指定路由。