阿里云(CentOS 7.2)+Nginx配置支持IPV6

这两天IOS上架遇到一个问题,AppStore要求必须支持IPv6,这个问题令不少人脑仁疼,结合这两天不断的尝试,现将配置过程总结如下,亲测可用!

若要满足AppStore要求应用支持IPV6需确保两点:
1、待上架的APP应用支持IPV6(这个交由IOS开发人员搭建本地IPV6环境去调试);
2、应用服务器具备支持IPV6(也就是应用部署的服务器)的网络环境。
本文只讲述第2个满足条件。

一、阿里云配置
1、编辑 vim /etc/modprobe.d/disable_ipv6.conf 文件(需要root权限) 
disable 设置成 0
2、编辑 vim /etc/sysconfig/network 文件(需要root权限) 
NETWORKING_IPV6 设置成 yes

然后执行 service network restart 重启
3、编辑 vim /etc/sysctl.conf 文件(需要root权限)

然后运行 sysctl -p 的命令,启用IPv6 (需要root权限)
4、验证是否开启IPV6
执行命令 ip addr 查看是否已经有 inet6 的地址,如果有说明已经开启ipv6


二、IPV6隧道配置
1、 https://tunnelbroker.net 注册并登陆;
2、左侧点击Create Regular Tunnel创建一个隧道规则===> IPv4 Endpoint 需要些服务器的外网IP地址===>选择一个隧道服务器===>这里选择了“亚洲香港”


查看Tunnel信息

红框里面的 Client IPv6 Address 就是你的IPv6 地址,之后解析域名(AAAA解析)的时候用的就是它(域名里不用写“/64”)
配置信息

重点: 选择IP的方式设置(这里选择的是Linux-route2),然后将文本框中local IP需改成内网IP(这两个IP在阿里云后台都能看到),复制文本框中的内容到CentOS环境下执行。
3、执行命令 ping6 he.net

能ping通说明已经配置成功。
4、配置DNS解析,将域名指向IPV6的地址即可,需要用AAAA记录 
AAAA xxxx 2001:xxxxx 即:AAAA 访问前缀 IPV6地址
解析之后可以用 wget -6  http://xxxxxxx  来验证你的解析是否正确以及IPV6是否成功。如果能获取到网页信息,说明一切正常。(https同理)

三、Nginx配置
1、nginx开启IPV6支持配置
到nginx的sbin目录, cd /usr/local/nginx/sbin ,执行命令 ./nginx -V

若没有出现--with-ipv6,说明当前的nginx不支持ipv6,我们需要重新编译Nginx,配置里面增加--with-ipv6
2、重新编译Nginx
1)解压Nginx安装包:  tar xvzf nginx-1.10.3.tar.gz
2)跳转到解压过后的目录: cd nginx-1.10.3
3)执行命令配置新的参数,加入 ipv6模块,命令如下:
./configure \--prefix=/usr/local/nginx \--pid-path=/var/run/nginx/nginx.pid \--lock-path=/var/lock/nginx.lock \--error-log-path=/var/log/nginx/error.log \--http-log-path=/var/log/nginx/access.log \--with-http_gzip_static_module \--http-client-body-temp-path=/var/temp/nginx/client \--http-proxy-temp-path=/var/temp/nginx/proxy \--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \--http-scgi-temp-path=/var/temp/nginx/scgi \
--with-ipv6 \
--with-http_ssl_module
4)配置完毕后,执行 make 命令 ,重新编译
5)编译完毕后,会在当前目录下创建objs目录,新的nginx执行文件将生成在该目录中,替换nginx执行文件,执行以下命令:
./nginx -s stop #关闭Nginx
cp objs/nginx /usr/local/nginx/sbin #覆盖原有Nginx执行文件
./nginx #启动Nginx
./nginx -V #检查nginx是否已经支持ipv6
3、 nginx配置ipv6监听
vim /usr/local/nginx/conf/nginx.conf
添加一条:listen [::]:80 ipv6only=on;

重新加载Nginx配置文件:
./nginx -s reload

四、测试IPV6
打开网站 http://ipv6-test.com/validate.php ,输入完整域名

测试结果如下:


说明 应用服务器已具备支持IPV6的网络环境

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值