这两天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隧道配置
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地址
三、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
测试结果如下:
说明
应用服务器已具备支持IPV6的网络环境