如何访问IPV6网址及在VPS上配置绑定IPV6地址

发布于 作者 量尺寸留下评论

先介绍下本站ipv6站点是 ipv6.liangchicun.com,您可以通过Windows的ping或Linux的ping6命令查看其对应的IP地址,正常情况下,通过 http://ipv6.liangchicun.com 能访问我的网站。
举例通过Windows自带的ping命令来检测一下:

如上图所示,第一次ping ipv6.liangchicun.com 显示“请求超时,无法访问主机”,这就代表无法访问到ipv6地址,第二次ping时,已经成功接收到了服务器返回的数据包。
遇到不能访问ipv6地址,如果在确定访问地址无误的情况下,那就是本地网络不支持ipv6地址访问。据本人了解现在各大网络运营商都是支持ipv6地址的,家庭用户无法访问ipv6的地址其问题可能出现在路由器上,即路由器不支持ipv6,或是支持ipv6却未打开该功能。例如电信光网的默认路由配置是没有开启ipv6的,需要使用超级用户登录路由器后进行设置,登录后“宽带设置”->“IP协议版本”处一定要选择“IPv4/IPv6”方可,如下图所示:

路由器设置完成后,可以用ipconfig命令来查看本地连接的ipv6地址:

对于自己购买的VPS服务器,如果直接给定了ipv6地址并默认绑定在本地网卡上,那么此时你应该可以直接访问服务器的ipv6地址了。
对于有的VPS服务器,提供了ipv6地址,但默认没有绑定在服务器上,这时需要我们来对本地网卡绑定所分配的ipv6地址。
首先修改 /etc/hosts 文件,将指派的ipv6地址指定到服务器。
nano /etc/hosts
在文件中,你将发现有类似 127.0.0.1 yourdomain.com 这样的内容,这里用127.0.0.1代表你的服务器地址,后边是你的域名。将此行完整复制到下一行,然后将127.0.0.1这样的ipv4地址替换成你的ipv6地址,如我的配置:
2a03:4000:24:271::1 liangchicun.com
增加完成后关闭文件。接下来我们在服务器上运行ifconfig命令,该命令会显示服务器的网卡信息,一般服务有两块网卡,eth0和lo,这里我们需要配置的是eth0,也就是除了lo外的这块网卡,你的名字也可能不是eth0,当然以查看到的网卡名称为准。
运行ifconfig后,如果服务器网络支持ipv6,就可以看到一个inet6记录,这个网卡分配到的ipv6地址,如果该地址是以fe开头的,那么这只是一个局域网地址,不是公网的ipv6地址。这时我们通过以下指令将指派到服务器的ipv6地址绑定到网卡。
ifconfig eth0 inet6 add 2a03:4000:24:271:0:0:0:1/64
其中eth0是网卡名称,add后面是需要绑定的ipv6地址。绑定好后执行以下命令来重启网络:
sudo invoke-rc.d networking restart
这时通过ifconfig查看,就会发现ipv6地址已经绑定到了eth0网卡上。这时如果你用的web服务器已经配置可以响应ipv6地址访问,那么你就可以通过ipv6地址访问你的web服务器了。对于apache2只需要让其监听ipv6地址即可,即修改 /etc/apache2/ports.conf文件,在ipv4:80 下边增加上 Listen [::]:80,照此在其他端口如443处一并增加,完成后关闭配置文件,重启apache2服务器。这时你就可以通过ipv6访问在/etc/hosts中ipv6地址对应的域名所指网站了。
要实现通过域名访问,还得在域名的DNS记录中添加一条AAA记录,使其指向服务器ipv6地址。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注