一、服务器安装IPv6协议
在Linux、FreeBSD、Unix等各种系统下一般都默认安装,Windows 2008也默认开启,Windows 2003需手工安装
确认服务器已经接入IPv6网络,且分配到IPv6地址,可以通过he.net的tunnelbroker接入,或ISP自行接入。
确认ifconfig中存在全球单播IPv6地址,并路由可达,可尝试ping6 -c 5 ipv6.google.com等验证IPv6是否可用
二、为Nginx添加IPv6模块
1、首先进入nginx源码安装所在的目录,比如:
/usr/src/nginx-0.7.68/,如果忘记之前安装放在服务器上那个目录下了,可以执行:
find / -name “nginx-0.7.68” -type d 进行查找
2、找到源码安装目录之后,执行:
cd /usr/src/nginx-0.7.68/ 进入该安装目录
3、然后给Nginx加入IPv6模块,执行:
./configure –user=nginx –group=nginx –prefix=/usr/local/nginx –with-http_stub_status_module –with-http_ssl_module –with-ipv6
4、如果编译没有错误,则继续执行:
make 但不要
make install。
5、编译完,在objs目录下有一个nginx执行文件,先备份下原来老的nginx文件,执行:
mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.old ,再把新objs下的nginx cp到sbin下,执行:
cp objs/nginx /usr/local/nginx/sbin/nginx
6、执行
/usr/local/nginx/sbin/nginx -t 测试下,显示没有问题。
7、再执行:
make upgrade
8、执行:
/usr/local/nginx/sbin/nginx -V 看一下,IPv6模块已经编译进去了。
三、在Nginx配置文件中启用IPv6
Nginx添加上IPv6后,需要执行:
killall nginx 再执行:
/usr/local/nginx/sbin/nginx 不能用平滑重启。
修改Nginx所有虚拟主机的配置,这个
/usr/local/nginx/conf/nginx.conf 也要修改,将所有server {}里面的listen 后面全部加上IP,如下:
server
{
listen 116.255.153.163:80;
listen [2001:470:1f04:15c5::2]:80;
server_name ipv6s.com;
index index.html index.htm index.php;
root /home/wwwroot;
….省略部分配置}
要注意IPv6地址需要用[]括起来,如果你不知道本机IPv6地址,可以执行
ifconfig 命令查看
或者将以上listen命令行全部替换为:
listen [::]:80;
只需一行即可,使服务器监听本机的所有IPv4与IPv6地址。例如:
server
{
listen [::]:80;
server_name ipv6s.com;
index index.html index.htm index.php;
root /home/wwwroot;
….省略部分配置}
修改完成后,执行:
/usr/local/nginx/sbin/nginx -t 检查配置是否还有错误,确认没有错误后可以执行:
killall nginx ,再执行:
/usr/local/nginx/sbin/nginx 启动即可。
此时,可通过
netstat -tulpn | grep :80命令查看,例如:
tcp 0 0 116.255.153.163:80 0.0.0.0:* LISTEN
tcp 0 0 2001:470:1f04:15c5::2:80 :::* LISTEN
或者:
tcp 0 0 :::80 :::* LISTEN
四、在客户端通过IPv6访问Web服务器
首先你的电脑需要已经支持IPv6,且连入IPv6网络,可以通过本站内介绍的各种隧道、软件等接入。
其次选择支持IPv6的浏览器,XP系统自带的IE6是不支持通过此方式访问的,可使用Firefox、Chrome、Opera、IE8、IE9等浏览器
在浏览器地址栏中输入:
http://[2001:470:1f04:15c5::2]/ 就可以访问Web服务器了。
原创文章,作者:中国IPv6网,如若转载,请注明出处:https://www.ipv6s.com/basis/application/20110115453.html