IPv4地址资源越来越紧张,IPv6是以后的流行趋势,所以现在很多VPS服务商都提供IPv6+IPv4的服务器,但是如果仅只有IPv6的服务器对于大多数苦逼站长来说很有诱惑力,因为价格更低。
以Vultr服务商为例,IPv6 ONLY(只有IPv6地址,没有IPv4)只要2.5刀,是不是感觉很爽,价格比IPv4+IPv6少了一半。所以如果可以搭建网站访问的话,还是有必要折腾一番的。
今天这篇文章就是只购买有IPv6的服务器安装宝塔,并且实现IPv6可以访问,IPv4也可以访问。
开启本地IPv6环境
参考:https://github.com/XX-net/XX-Net/wiki/IPv6-Win10
WIN10系统。
Win+X 打开CMD 或 Windows PowerShell(管理员),按顺序输入命令:
1.1设置Teredo 服务器
// 设置 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
1.2测试IPv6 连接
// 测试 IPv6 连接 ping -6 ipv6.test-ipv6.com ping -6 [2001:470:1:18::125]
测试ping都不通
这里我仍无法启用IPv6服务。按照教程来可能是 Teredo 服务器无法正常连接,也可能是 Windows 自身配置问题,可尝试以下两种方法:
// 第一种:修改 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
我选择的第一种方法修改Teredo 服务器为 teredo.remlab.net,并测试
第一次ping会有丢包情况出现,第二次就OK 了。然后进行上面的 重置 IPv6 配置。
1.3重置IPv6 配置
// 重置 IPv6 配置 netsh interface ipv6 reset
据提示重启电脑。
1.4查看当前网络信息
通过命令 ipconfig /all
看到 Teredo Tunneling Pseudo-Interface 有以 2001 开头的IPv6地址即可。
这样本地环境已经搭建好了。
纯IPv6 VPS搭建网站
目前新版的宝塔面板已经支持纯IPv6,所以我们这里就以宝塔面板来举例,其他面板没有测试过。
1.安装宝塔面板
SSH登录之后命令安装
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
跟IPv4一样没有区别
安装完成后登录
2.新建网站
跟IP v4一样,安装所有环境(比如LNMP)方法一样。然后新建网站,直接上图。
3.域名解析
我已经提前将域名DNS放到Cloudflare,这样是为了后面的CDN。用IP v6来解析域名,与IP v4下解析有点不同的是,IP v6的格式是AAAA
IPv6域名解析看下图
类型选择好 AAAA
后 后面对应的自然就会提示输入 IP v6地址。输入之后点击 “Save”。
4.IP v6访问网站
如果你像我一样提前就开启了本地IP v6环境,那么现在就可以访问网站了。
我们可以看到远程地址是 2001开头的IP v6格式地址。
但是我自己也出现点状况,火狐浏览器、Edge浏览器都可以打开,唯独Chrome浏览器无法显示。一直以来都是以Chrome为主,网站无法打开我还以为自己哪里设置错了,后来换浏览器了就OK。
5.IP v4访问网站
毕竟现在IP v6还没有普及开,所以还需要针对大部分IP v4能够访问,很简单,
这里的黄色云朵就表示开启CDN,那么IP v4也可以访问了。
6.IP v4 + IP v6分别访问
如果你的服务器是IP v4 + IP v6 那么,想让IP v4, IP v6用户分别访问,很简单,只需要新增一个IP v4的A解析。
折腾了很久才解决