使 IPv6 Only VPS 能访问 IPv4 网络

教程

由于某些廉价的 VPS 只支持 IPv6,没有 IPv4 支持,而很多网站都没有支持 IPv6,这就带来了诸多不便(比如无法下载托管在 GitHub 上的脚本、无法 clone 代码)。目前有两种方法使 IPv6 Only VPS 能够访问 IPv6 网络,这两种方法各有优缺点,请你根据需求自行选择。

DNS64 + NAT64

优点:支持国内 VPS
缺点:不能直接访问 IPv4 地址

当你访问域名的时候,DNS 服务器收到查询请求,如果目标服务器支持 IPv6,就会直接返回 IPv6 地址;如果不支持,就会返回按照一定规则合成转化后的 IPv6 地址,这个 IPv6 地址又会指向 NAT64 服务器,NAT64 服务器根据它包含的信息获取 IPv4 数据并转发给你。这样你就可以直接访问仅支持 IPv4 的网站了。

我最常用的 DNS 服务是谷歌家的 Google Public DNS,不过它虽然支持 DNS64,但不提供配套的 NAT64 网关,需要自行搭建。这里我更推荐提供配套 NAT64 的 Cloudflare DNS64

使用方法很简单,仅需修改 /etc/resolv.conf 即可。将其中所有内容删掉或注释掉,然后填入以下内容,并保存文件。

1
2
nameserver 2606:4700:4700::64
nameserver 2606:4700:4700::6400

下面是一些公益 DNS64 服务器的地址:

  • TREX(芬兰)
    1
    2
    2001:67c:2b0::4
    2001:67c:2b0::6
  • Go6Lab
    1
    2
    2001:67c:27e4:15::6411
    2001:67c:27e4::64

    Cloudflare WARP

优点:原生 IPv4,流媒体解锁,跳过 Google 验证码
缺点:不支持国内 VPS,有时响应较慢

WARP 是 Cloudflare 提供的一项基于 WireGuard 的网络流量安全及加速服务,能够让你通过连接到 Cloudflare 的边缘节点实现隐私保护及链路优化。

手动配置 WARP 步骤较为复杂且容易出错,对新手不友好,使用一键配置脚本极大地简化了配置步骤,提高了效率。由于 GitHub 不支持纯 IPv6 网络,可能会遇到脚本无法下载的问题,按照上面的教程配置 DNS64 即可。

fscarmen 的 warp 脚本

GitHub:https://github.com/fscarmen/warp
此脚本支持多个 Linux 发行版,支持多 CPU 架构,能结合 Linux 版本和虚拟化方式,自动优选 WireGuard 方案。同时,此脚本拥有对普通用户友好的菜单,方便用户配置。

Speedtest 测速结果:

f6KFwT6U.jpeg

菜单提供中英文双语,方便国内外用户使用。
HEs5aZCu

8CYtN6xH

首先,执行 sudo -i 切换到 root 用户。然后,根据你的需要执行安装命令:

使用方法

为 IPv6 Only VPS 启用 IPv4 支持:

执行以下命令:

1
wget -N https://gitlab.com/fscarmen/warp/-/raw/main/menu.sh && bash menu.sh 4

然后根据实际情况自行选择。

为 VPS 添加双栈全局网络:

执行以下命令:

1
wget -N https://gitlab.com/fscarmen/warp/-/raw/main/menu.sh && bash menu.sh 4

然后根据实际情况自行选择。

可以看到 VPS 已经分配到 IPv4:

4jOLJj5n

再次运行执行 warp [option] 即可。
下面是一些常用的 [option] 变量:

[option] 变量 具体动作说明
h 帮助
4 原无论任何状态 -> WARP IPv4
6 原无论任何状态 -> WARP IPv6
d 原无论任何状态 -> WARP 双栈
o WARP 开关,脚本主动判断当前状态,自动开或关
u 卸载 WARP
v 同步脚本至最新版本
i 更换 WARP IP
s 单栈与双栈快速切换 ,如 warp s 4warp s 6warp s d
其他或空值 菜单界面

如需开启或关闭 WARP 网络,执行 warp o 即可;如要查看帮助只需执行 warp h

P3TERX 大佬的 warp.sh 脚本

GitHub:https://github.com/P3TERX/warp.sh

脚本支持 x86 和 ARM 架构,支持多个 Linux 发行版,由于功能强大、使用简单广受网友欢迎。

Speedtest 测速结果:

7qRFtW0J

首先,执行 sudo -i 切换到 root 用户。然后,根据你的需要执行安装命令:

一把梭安装脚本,真正的一键安装 WARP

M7FPHXND

使用方法

只有 IPv6,需要添加 IPv4 支持,使用以下命令一把梭:
1
2
#自动配置 WARP WireGuard IPv4 网络
bash <(curl -fsSL git.io/warp.sh) 4
如果你要添加双栈全局网络,使用以下命令一把梭:
1
2
#自动配置 WARP WireGuard 双栈全局网络
bash <(curl -fsSL git.io/warp.sh) d

脚本提供了对用户友好的菜单,可以轻松管理 WARP 网络。执行以下命令查看功能菜单和网络状态:

1
bash <(curl -fsSL git.io/warp.sh) menu

8xZ7iya0

jMg7w1Gw

执行以下命令可查看脚本的子命令:

1
bash <(curl -fsSL git.io/warp.sh) help

似乎没有提供卸载的选项(反正是我没有找到),只能手动卸载。

Cloudflare WARP 网速测试

测速支持 IPv4 和 IPv6,能获得 VPS 通过 WARP 访问外部网络 的极限网速。

  • 安装 Ookla Speedtest CLI(安装脚本由 P3TERX 大佬编写)
    1
    curl -fsSL git.io/speedtest-cli.sh | sudo bash
  • 然后执行 speedtest 命令测速。

注意事项

  1. 由于 WARP 类似虚拟专用网络,之前很多人用它来 fq,目前已被中国大陆屏蔽,只有国外 VPS 才能使用。
  2. 因为用的人很多,可能会遇到无法获取 WARP IP 的情况,请稍后再试。
  3. 使用 WARP 可能会导致下载文件响应时间很长,且速度有所下降。
  4. 通过 WARP 获得的 IP 并不是公网 IP,只能用于访问外部网络。

参考

  1. P3TERX 大佬的文章

本文作者:Tony

本文链接: https://blog.iamsjy.com/2022/01/30/enable-ipv6-only-vps-to-access-ipv4-network/

文章默认使用 CC BY-NC-SA 4.0 协议进行许可,使用时请注意遵守协议。

评论