男儿欲遂平生志,六经勤向窗前读。这篇文章主要讲述Nginx配置IPv6端口监听及务器设置IPV6及Https支持并通过AppStore审核相关的知识,希望能为你提供帮助。
一、监听端口
从nginx 1.3的某个版本起,默认ipv6only是打开的,所以,我们只需要在监听中加入ipv6监听即可,不过推荐都手动加上比较好,代码如下:
listen [::]:80 ipv6only=on; server { listen 80; listen [::]:80 ipv6only=on; server_name index index.php index.html index.htm; root }
编辑完毕后保存,然后使用命令检测配置是否正确:
nginx -t
重启nginx
systemctl restart nginx
检测监听是否已经成功,如果列表出现 :::80的监听代表ipv6的监听已经成功。
netstat -tuln
二、其他个性化操作
如果只想监听ipv6,则去掉ipv4的配置,然后将ipv6设置为默认即可。
server { listen [::]:80 default ipv6only=on;
如果想监听指定ipv6地址,则将中括号中的:: 换成 指定ipv6地址即可。
server { listen [2001:470:1f18:471::21]:80 default ipv6only=on;
三、阿里云服务器设置IPV6支持并通过AppStore审核
苹果上架要求:要求支持IPV6only(因为阿里云主机没有IPV6only)
确认IPV6是否开启:
方式1:使用ifconfig查看自己的IP地址是否含有IPv6地址。
文章图片
文章图片
方式2.查看服务监听的IP中是否有IPv6格式的地址。(netstat -tuln)
文章图片
开启IPV6:
vim /etc/sysctl.conf
文章图片
vim /etc/modprobe.d/disable_ipv6.conf
#全部注释掉
#alias net-pf-10 off
#options ipv6 disable=0
vim /etc/sysconfig/network
文章图片
至此ipv6的服务器端支持已经完成,重启服务器测试是否支持ipv6,重启后, ifconfig查看ipv6的信息,有看到有关IPV6的输出就可以
文章图片
添加ipv6隧道:
1. 注册Tunnel broker
https://www.tunnelbroker.net/
注册很容易,就不讲了,注册需要邮箱验证,,gmail、163能收得到认证邮件,qq还是一样收不到
2.创建通道“Create Regular Tunnel”
填写云服务器ip以及选择默认的隧道节点,点击Create Tunnel创建。填写ip都,如果出现“IP is a potential tunnel endpoint.”则证明可以添加ipv6隧道,一般隧道节点系统已经默认分配,可以手动选择,大家可以在自己的云服务器上分别ping一下这些ip,选时延低的。
注意:云服务器安全组需要开放ICMP,不然不会出现“IP is a potential tunnel endpoint.”
文章图片
3.创建ipv6隧道及路由
到下一页面切换到Example configurations选项卡,如果你的VPS是centOS/Debian这些常见Linux的话,下拉菜单选择Linux-route2,出现了设置的命令,
注意这样一定要把 local 后面的ip改成内网ip。再在命令最后一行多留一个换行符,不然最后一行命令不会执行。复制到自己的云服务器上运行。重启会实效。
文章图片
4.测试ipv6
【Nginx配置IPv6端口监听及务器设置IPV6及Https支持并通过AppStore审核】
文章图片
添加ipv6的dns服务器,在最后添加nameserver 2001:4860:4860::8888,nameserver 2001:4860:4860::8844谷歌的ipv6 dns服务器
# vim /etc/resolv.conf
#重启会实效 options timeout:1 attempts:1 rotate nameserver x.x.x.x nameserver x.x.x.x nameserver 2001:4860:4860::8888 nameserver 2001:4860:4860::8844
# ping6 -c 5 ipv6.google.com PING ipv6.google.com(tsa03s01-in-x0e.1e100.net) 56 data bytes 64 bytes from tsa03s01-in-x0e.1e100.net: icmp_seq=1 ttl=55 time=25.5 ms 64 bytes from tsa03s01-in-x0e.1e100.net: icmp_seq=2 ttl=55 time=25.5 ms 64 bytes from tsa03s01-in-x0e.1e100.net: icmp_seq=3 ttl=55 time=33.1 ms 64 bytes from tsa03s01-in-x0e.1e100.net: icmp_seq=4 ttl=55 time=25.5 ms 64 bytes from tsa03s01-in-x0e.1e100.net: icmp_seq=5 ttl=55 time=25.4 ms--- ipv6.google.com ping statistics --- 5 packets transmitted, 5 received, 0% packet loss, time 4031ms rtt min/avg/max/mdev = 25.473/27.040/33.180/3.073 ms
阿里云服务配置
代理配置好之后服务器中执行ifconfig命令,找到he-ipv6虚拟网卡,找到scope为Global 的ipv6地址,在阿里云后台配置AAAA记录为上面提到的ipv6地址
文章图片
阿里云文档:https://help.aliyun.com/knowledge_detail/39813.html
在线测试:http://ipv6-test.com/validate.php
文章图片
结果显示,已经正确访问到网站。可以通过AppStore审核了。
推荐阅读
- SRM489 Div1 1000pts???AppleTree
- Windows基础环境_安装配置教程(Windows7 64JDK1.8Android SDK23.0TortoiseSVN 1.9.5)
- [ABC 100] A-Happy Birthday!
- 错误com.android.ddmlib.AdbCommandRejectedException
- Android图片处理--缩放
- 使用Service组件实现简单的音乐播放器功能 --Android基础
- R apply() 函数和 tapply() 函数
- BurpSuite 抓安卓app包
- 安卓手机USB无法共享上网或卡顿的解决方法