购买VPS主机一般来说会免费送一个IPv4地址(部分NAT VPS为共享IP,购买后会给你一个URL地址,例如CloudIPLC和Uovz VPS),也有部分VPS主机商(例如Linode、DigitalOcean)会赠送一个IPv6,并且VPS创建成功后会自动启用IPv6地址。
但是大部分VPS主机商还是没有提供IPv6地址,主要还是因为IPv6现在普及度不高,且IPv6的用户也可以使用IPv4,如果没有特别需要(据说IPv6网络很“畅通”),IPv4用于建站访问都是没有问题的。前一段时间有其云否主机的客户想要使用IPv6。
对于VPS主机没有配备IPv6地址,我们可以利用Tunnel broker (He.net旗下)给VPS主机免费开通IPv6地址访问,同时如果你想让你的Nginx或者Apache支持IPv6用户访问,只需要调整一下Nginx和Apache的配置文件即可。
一、开启VPS对IPv6的支持
检查文件
,开启IPv6。
打开 /etc/sysconfig/network,添加如下:
编辑网卡配置:
(有也可能是ifcfg-eth1),开启IPv6支持。
打开:
,开启IPv6支持(没有就添加,有的话要保证是0)。
执行命令:
,看到有输出就表示你的VPS主机支持IPv6了。
二、申请免费的IPv6地址
网站:
- https://www.tunnelbroker.net
Tunnel broker 为He.net旗下的产品,提供免费的IPv6地址和隧道,你可以利用它在自己的VPS主机上绑定一个新的IPv6地址。注册一个TunnelBroker账号,然后选择“Creat Regular Tunnel”。
根据需要选择访问速度最快的服务器,你只需要填写你自己的VPS的公网IP,点击最下方的“Creat Tunnel”就完成了。
在Tunnel的详情界面,可以看到申请到的IPv6的详细信息。
有几点要用到的信息说明如下:
Server IPv4 Address 服务端IPv4地址(用于通过IPv4连接隧道)
Server IPv6 Address 服务端IPv6地址(用于IPv6网关地址)
Client IPv4 Address 本地IPv4地址(用于让服务器允许连接)
Client IPv6 Address 本地IPv6地址(作为本地IPv6地址使用)
三、VPS手动绑定IPv6地址
3.1 绑定IPv6
在Tunnel页面有一个选项卡为Example Configuration,这里有Tunnel broker自动生成的配置命令,对于CentOS、Ubuntu和Debian可以选择linux-route2或Linux-net-tools。
然后直接复制命令在自己的VPS主机上运行。如下图:
执行ifconfig命令可以查看到IPv6地址已经添加成功了。
3.2 重启后仍有效
按照上面的命令绑定好了IPv6后,如果你重启服务器后就会丢失。一种方法是重启服务器再次运行该命令,当然我们可以利用Linux重启后自动执行脚本的功能,命令如下:
另一种方法就是手动将IPv6地址绑定到已有了网卡中,命令如下:
最后一步要特别注意,若本地IPv4地址为内网地址(如腾讯云),请在此处配置文件里面应填写内网地址,不要直接写公网地址。配置文件写完后,执行service network restart重启网络服务,此时Tunnel应能够正常工作,且重启后不会丢配置。
四、Nginx和Apache支持IPv6
4.1 Nginx IPv6
找到你的Nginx网站配置文件,添加IPv6监听,然后重启Nginx就可以了。代码如下:
4.2 Apache IPv6
找到httpd.conf配置,修改成这样:
4.3 设置好AAAA记录解析
配置好了,现在你只需要到你的DNS处添加一个新的AAAA记录,记录值就是你的IPv6地址,这样IPv6用户就可以访问到你的Web服务器了。
AAAA记录可以和A记录并存,实现双栈访问,但不能与CNAME并存。各大DNS解析服务基本上都支持AAAA记录,如果你的没有,请在这里找一个更好的:国内外免费DNS域名解析服务汇总列表。
五、总结
如果本地还没有开通原生的IPv6,我们可以通过以下方法开通IPv6,以Windows 10为演示,Win+X 打开CMD 或 Windows PowerShell(管理员),输入命令:
重启系统通过命令ipconfig /all
查看当前网络信息,看到 Teredo Tunneling Pseudo-Interface
有以 2001 开头的IPv6地址即可。 启动IE浏览器,访问 http://test-ipv6.com 或 http://ipv6.test-ipv6.com,如果选项卡 “测试项目” 下面的 “不使用域名的 IPv6 测试” 显示成功,则隧道建立成功。Chrome浏览器的测试结果可能和IE不一样,请注意。
VPS绑定好了IPv6后,可以Ping测试一下IPv6网络是否通畅。Linux常用的命令是:ping6 ipv6.google.com。更多的Linux网络配置方法这里有:Linux手动设置IPv4和IPv6地址。
如若转载,请注明出处:https://www.ozabc.com/jianzhan/535327.html