IPv6 ONLY VPS

Vultr 的两个美国机房有 IPv6 ONLY VPS,2.5$/m,便宜但一直都用不起来。

另外我还搜到一家 Skysilk,他的 IPv6 ONLY VPS 只要 2$/m。
虽然说 IPv6 要普及,但很多网站只支持 IPv4,比如 Twitter,GitHub 都没有支持 IPv6,而且很多家用宽带也没有 IPv6 地址。
所以要用这种便宜 VPS,首先要解决本地连接 VPS,其次解决 VPS 连接到互联网,这样才能用起来。

Local To VPS

本地如果运营商给了 IPv6 地址,那就可以直接 SSH 连接 VPS 了,下面的方法就可以不用了。我知道电信的移动数据网络是有 IPv6 地址的,所以也可以分享出来电脑去连接 IPv6 ONLY VPS,这样也简单。

1.路由器配置 IPv6 通道

路由器加 IPv6 通道的优势就是全局性的,如果只是为了用 IPv6 的 VPS 的话建议选择电脑端设置。网上有很多教程,下面百度云的文档很详细,我就放几个图就好了。
华硕路由器:免费设置 IPv6 教程
百度云链接 提取码: pi6h
Padavan:设置 IPv6 教程


2.电脑端设置 IPv6

我就介绍下 win10 下的设置,可以参考下面的链接:
如何开启IPv6

Windows10 开启 IPv6

本方法基于Teredo隧道开启IPv6,其他开启IPv6的方法暂待完善。
特别重要:找到 网络和共享中心 - 更改适配器设置 - 本地连接(无线网络则找到WLAN或蓝牙网络连接)- 属性,把 IPv6协议 前面的勾去掉,确定。否则会出现一些奇怪的问题。

Win+X 打开 Windows PowerShell(管理员)或者管理员运行 CMD,然后输入命令:

1
2
3
4
5
6
7
8
9
// 设置 Teredo 服务器,默认为:win10.ipv6.microsoft.com
netsh interface teredo set state enterpriseclient server=default

// 测试 IPv6 连接
ping -6 ipv6.test-ipv6.com
ping -6 [2001:470:1:18::125]

// 重置 IPv6 配置
netsh interface ipv6 reset

重启系统。通过命令 ipconfig /all 查看当前网络信息,看到 Teredo Tunneling Pseudo-Interface 有以 2001 开头的IPv6地址即可。
启动IE浏览器,访问 http://test-ipv6.com,如果选项卡 “测试项目” 下面的 “无域名 IPv6 测试” 显示成功,则隧道建立成功。
我这边的网络是 ping 不通 win10.ipv6.microsoft.com,所以我换了个服务器 teredo.remlab.net 就可以了。
如果经过上面操作后仍无法启用 IPv6,可能是 Teredo 服务器无法正常连接,也可能是 Windows 自身配置问题,可尝试以下两种方法:
1
2
3
4
5
6
7
// 第一种:修改 Teredo 服务器为 teredo.remlab.net
netsh interface teredo set state server=teredo.remlab.net

// 第二种:先卸载当前 Teredo 适配器再重新启用
netsh interface Teredo set state disable
netsh interface Teredo set state type=default
ping -6 ipv6.test-ipv6.com

经过上面的设置,本地电脑就可以连接到 VPS 了,直接在 SSH 客户端里输入 VPS IPv6 地址即可。
如果还是有问题,可以检查一下路由器,是不是做了什么设置。

VPS to Internet

通过 SSH 连接到 VPS,可以 ping 一下,发现 google.com,facebook.com 都是通的,但 twitter.com ,github.com 都无法连接,这就导致很多 GitHub 上的一键命令执行不了。所以得让 VPS 能访问 IPv4 的网络。

1.免费 DNS64+NAT64 服务

DNS64 是与 NAT64搭配使用的,原理就是修改 VPS 的 DNS 为 DNS64,当 VPS 发出向解析到 IPv4 的域名的请求后,DNS 会将 IPv4 地址按照一定格式嵌入 IPv6 地址中,这个返回 IPv6 地址会指向 NAT64 的服务器,NAT64 网关会按照它包含的信息获取 IPv4 的数据并转发给 VPS,这样就可以直接访问 IPv4 的网站了。

1
2
3
4
5
//编辑 nameserver 地址
sudo vi /etc/resolv.conf
//输入 i 进行修改:
nameserver 2001:67c:2b0::4
nameserver 2001:67c:2b0::6

ESC 键退出插入模式,输入 :wq 保存退出。
免费的 DNS64+NAT64 提供者有:

http://www.trex.fi/2011/dns64.html
2001:67c:2b0::4
2001:67c:2b0::6

https://go6lab.si/current-IPv6-tests/nat64dns64-public-test/
2001:67c:27e4:15::6411
2001:67c:27e4::64

设置完成后 ping 一下 twiter.com 和 github.com 看看是不是通的。这个文件有时重启后会还原需要注意一下。

2.其他方法

有另外的方法是通过一台支持 IPv6 和 IPv4 的服务器做代理中转,或者自建 DNS64+NAT64 服务,我们的目的是省钱,不是为平仓。

安装宝塔搭个网站

经过上面的设置,我们可以连接 VPS,而 VPS 也可以连接任意网络了。这就和一般的 VPS 没啥差别了。

1. 域名解析

域名得在 cloudflare 这种支持 CDN 的网站解析,把 DNS only 开关打到橙色,这样IPv4 和 IPv6 就都支持访问了。

2. 安装宝塔面板

SSH 连接服务器后,通过命令安装:

1
2
3
4
5
6
7
8
Centos安装命令:
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh

Ubuntu/Deepin安装命令:
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh

Debian安装命令:
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && bash install.sh

补充一句,宝塔官方说是完全支持 IPv6 的,但我没改 DNS64 之前 download.bt.cn 无法解析。
等待命令自动完成:
1
2
3
4
5
6
Bt-Panel: http://[2001:19f0:5432:176f:5450:2f1f:fe97:5120]:8888/2ee85e9d
username: dafpimma
password: 4d22eb02
Warning:
If you cannot access the panel,
release the following port (8888|888|80|443|20|21) in the security group

这样就可以通过 IPv6 地址直接访问面板,安装所有环境(比如LNMP)。我建了一个示例博客 typecho,没有发现什么问题。

一键 V2Ray 或 Trojan

V2Ray 可以一键安装,命令如下:

1
2
3
4
ubuntu/debian: apt-get update -y && apt-get install curl -y 
centos: yum update -y && yum install curl -y

bash <(curl -sL https://scaleya.netlify.com/share/v2ray233_6.sh)

需要注意的是 WebSocket+TLS 协议我没有试验成功,不知道是域名证书的问题还是对 IPv6 的支持问题。用 Cloudflare 中转 V2Ray 的 WebSocket 流量,域名解析 IPv6 地址,并且开启 TLS,具体可参照这里 轻松搭建和配置V2Ray 第三点。
打开 YouTube 4k 视频对比下速度,日本的 ping 值低,但看视频速度一般,美国的 ping 值高,速度却还可以,性价比还是美国的好:

  • IPv6 2.5$/m 美国
  • 3.5$/m 美国
  • 5$/m 日本

    梅林 koolshare 版的插件使用有问题,无法连接,v2rayN 客户端就没问题。大家可以多研究一下。

Trojan 通过 Trojan一键搭建教程 一键没有成功,我感觉应该是证书的问题,还有最主要一个是 Trojan 不支持 cloudflare CDN,所以只能是 IPv6 访问有效。以后再研究看看吧。