IPV6-ONLY 服务器使用初体验

近期,购入了一台 IPV6-ONLY 的VPS。在购买这台服务器之前,甚至都不知道什么是 IPV6-ONLY ,以及它为何会如此的便宜。

购买此服务器的初衷是想将 ERPNext 迁移到此服务器,并额外部署一些小型的 Docker 项目。万万没想到如此的折腾。

下面这些内容都是后期补的课

什么是 IPV6-ONLY

IPV6-ONLY是指仅支持IPv6协议而不支持IPv4协议的网络环境或设备。在这种环境中,所有的网络通信都基于IPv6地址进行,而不能使用IPv4地址。

什么是 IPV4 & IPV66

IPv4(Internet Protocol Version 4)是互联网协议的第四个版本,是用于在网络中标识设备的主要协议之一。使用32位地址,通常以四个十进制数表示,每个数之间用点分隔,例如我们常见的:192.168.1.1 就是IPv4 地址。

IPv4 地址可以提供大约42亿个唯一地址,但由于互联网的快速发展,这些地址已经接近耗尽。因此,IPv6(Internet Protocol Version 6)被引入以提供更多的地址空间。

IPV6 这个词似乎已经听说了很多年,多年前就看到 淘宝、京东等一些APP显示支持 IPV6 的字样。只是似乎与我们普通人关系不大。

IPv6(Internet Protocol Version 6)是互联网协议的第六个版本,旨在替代IPv4。IPv6使用128位地址,能够提供几乎无限的唯一地址,理论上可以提供340万亿个地址,这解决了IPv4地址耗尽的问题。 坊间传闻它可以为地球上的每一粒沙子都分配一个地址

IPv6 地址通常以八组十六进制数表示,每组之间用冒号分隔,例如:2001:0db8:85a3:0000:0000:8a2e:0370:7334。IPv6还引入了一些新特性,如更简化的地址配置、更好的路由效率和内置的安全性(如IPsec)。

但是,就目前而言IPv4仍然是当前互联网中最广泛使用的协议

SSH登陆

由于前期功课不足,导致购买后的第一步就被卡住了- 无法登陆 SSH

原来,IPv4 和 IPv6 是两种不同的互联网协议,它们在设计和地址格式上存在差异,因此不能直接兼容。 所以要想登陆服务器本地必须支持IPV6网络。

如何知道自己的网络是否支持 IPV6 呢? 其实很简单,只需在网上搜索 IPV6测试 即可。

很遗憾,我这里并不支持 IPV6 ,剩下的方法要不就是使用一台双栈服务器做跳板,要不就干脆使用手机热点进行连接。双栈服务器我倒是有一台,不过上面部署了 Wordpress 。一来不想在上面折腾,希望尽量保持服务器稳定,再一个就是嫌麻烦。索性直接使用手机热点。

手机热点一开,顺利连接。要说国内通信服务商在这方面做的还是不错的。

使用 Github

接着就是下载脚本,安装文件,结果到这里又卡住了。原来 Github 不能使用 IPV6-ONLY 直接访问。需要使用 DNS64和NAT64。

“至于为什么 Github 这种被普遍使用的大站,至今还不支持 IPV6 的问题,网络上似乎也没有一个准确的答案”

DNS64和NAT64

  • DNS64: DNS64是一种DNS服务,它帮助IPv6设备访问基于IPv4的互联网资源。当一个IPv6设备请求一个只有IPv4地址的域名的DNS记录时,DNS64服务器会将IPv4地址转换为合成的IPv6地址。这个合成的IPv6地址通常在一个特定的IPv6前缀后附加目标IPv4地址,这样设备可以以IPv6格式访问。
  • NAT64: NAT64是一种网络地址转换技术,它允许IPv6设备与IPv4设备互通。 当一个IPv6地址与一个合成的地址进行通信时,NAT64设备拦截通信,将合成的IPv6地址转换回原始IPv4地址,并相应地转换通信数据包,使得来自IPv6网络的数据可以到达IPv4网络中的目标。

所以,通过结合使用DNS64和NAT64,可以在让IPv6网络设备可以在没有直接访问IPv4网络的情况下访问IPv4资源。

虽然,谷歌和 Cloudflare 也提供了 DNS64 服务器,但是好像无法连接 Github 。不过好在还有一些其他的公益 DNS64 服务器可以使用。

更换 DNS64 服务器

连接到终端以后,编辑 /etc/resolv.conf 文件:

sudo nano /etc/resolv.conf

找到或添加 nameserver 行,并输入公益 DNS64 服务器的 IP 地址。例如:

nameserver 2a01:4f8:c2c:123f::1
nameserver 2a01:4f9:c010:3f02::1
nameserver 2a00:1098:2c::1

按 Ctrl + O 保存文件,然后按 Ctrl + X 退出。

安装 1Panel 面板

接下来就可以通过 Github 下载和安装一些脚本或者应用了。

1Panel 是飞致云出品的一款开源 Linux 面板工具,适合对 Linux 系统不是特别精通以及一些不愿手撸代码的朋友。 安装方法可以在官方文档 找到。

安装完 1Panel 后就可以直接使用面板进行操作了,同时还可以借助面板的 Web SSH 功能连接到服务器。

结语

由于本身需求较低,此番配置下来基本上可以覆盖需求了。 至于一些其他的坑就懒的去踩了,遇到了以后再说吧。

同时,由于是第一次使用 IPV6-ONLY 的机器,来来回回折腾了好几天。对于不精通的人来说,真的是折腾人,怪不得 IPV6-ONLY 的机器如此的便宜。

就目前来看,机器到期以后已不打算续费了,宁愿多加点钱买一个带 IPV4 地址的机器。