一、监听端口

从Nginx 1.3的某个版本起,默认ipv6only是打开的,所以,我们只需要在监听中加入ipv6监听即可,不过推荐都手动加上比较好,代码如下:

listen [::]: ipv6only=on;

server {
listen ;
listen [::]: 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 [::]: default ipv6only=on;

如果想监听指定ipv6地址,则将中括号中的:: 换成 指定ipv6地址即可。

server {
listen [::1f18:::]: 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

添加ipv6的dns服务器,在最后添加nameserver 2001:4860:4860::8888,nameserver 2001:4860:4860::8844谷歌的ipv6 dns服务器

# vim /etc/resolv.conf
#重启会实效
options timeout: attempts: rotate
nameserver x.x.x.x
nameserver x.x.x.x
nameserver ::::
nameserver ::::
# ping6 -c  ipv6.google.com
PING ipv6.google.com(tsa03s01-in-x0e.1e100.net) data bytes
bytes from tsa03s01-in-x0e.1e100.net: icmp_seq= ttl= time=25.5 ms
bytes from tsa03s01-in-x0e.1e100.net: icmp_seq= ttl= time=25.5 ms
bytes from tsa03s01-in-x0e.1e100.net: icmp_seq= ttl= time=33.1 ms
bytes from tsa03s01-in-x0e.1e100.net: icmp_seq= ttl= time=25.5 ms
bytes from tsa03s01-in-x0e.1e100.net: icmp_seq= ttl= time=25.4 ms --- ipv6.google.com ping statistics ---
packets transmitted, received, % 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审核了。

Nginx配置IPv6端口监听及务器设置IPV6及Https支持并通过AppStore审核的更多相关文章

  1. nginx使用多端口监听多个服务

    ###### nginx监听多个端口并转发给不同的服务 ### 第一个监听: upstream odoo { server localhost:; } upstream odoochat{ serve ...

  2. nginx配置8081端口异常

    1.为nginx配置8081端口,结果nginx报错. (nginx配置8081端口监听,通过查看日志,出现nginx: [emerg] bind() to 0.0.0.0:8081 failed ( ...

  3. 黄聪:windows下使用xampp3.2.2配置多个监听端口和不同的网站目录

    windows下使用xampp3.2.2配置多个监听端口和不同的网站目录 一:配置Apache文件httpd.conf 打开Apache的配置文件httpd.conf,可以通过点击xampp的Apac ...

  4. 【PHP】xampp配置多个监听端口和不同的网站目录(转)

    转自:https://blog.csdn.net/cc1314_/article/details/75646344 windows下使用xampp配置多个监听端口和不同的网站目录 一:配置Apache ...

  5. 多进程端口监听 How nginx processes a request Server names

    网络编程( 六):端口那些事儿 - 知乎专栏  https://zhuanlan.zhihu.com/p/20365900 不停服务reload.restart 多进程端口监听 我们都有一个计算机网络 ...

  6. nodejs 80端口监听失败及NODE_PATH不起作用的问题

    nodejs做web服务器,打开80时报错:Error: listen EACCES 0.0.0.0:80 80端口监听失败,是因为1024以下的端口需要root权限,需要sudo或su之后执行.但这 ...

  7. Oracle一个实例配置多个监听

    要想给一个Oracle实例配置多个监听,首先要定义多个监听器,因为是多个监听,势必会有一些监听端口不是1521. 现在服务端的listener.ora文件中定义如下监听器: LISTENER = (D ...

  8. asp.net core 多端口监听&日志服务

    1 配置多个端口监听 HostingAbstractionsWebHostBuilderExtensions. public static IWebHostBuilder UseUrls(this I ...

  9. swoole多端口监听

    今天测试swoole写webserver实现多端口监听.记录下爬过的坑:关于tcp协议监听触发不到receive!!!!! 首先上服务端代码 class Http { /** * 服务实例 * @va ...

随机推荐

  1. 在HTML代码中要如何插入空格?

    超文本标记语言(HTML)会自动忽略空格.平常在编写代码的时候,用空格键.Tab键以及回车键产生的空格,都会被HTML自动忽略.那么我们该用什么方法来实现HTML的空格效果呢?有专门的空格代码吗?不少 ...

  2. Entity Framework With Oracle(转)

    虽然EF6都快要出来了,但是对于Oracle数据库,仍然只能用DB first和Model First来编程,不能用Code First真是一个很大的遗憾啊. 好了,废话少说,我们来看看EF中是如何用 ...

  3. MySQL connector c++使用笔记

    MySQL的connector官方地址: http://dev.mysql.com/downloads/connector/ 针对c++来说, 可以选择c或者c++的库. c++的实现是参考了java ...

  4. python webdriver 测试框架-数据驱动DDT的例子

    先在cmd环境 运行 pip install ddt 安装数据驱动ddt模块  脚本: #encoding=utf-8 from selenium import webdriver import un ...

  5. 2017-2018-2 20165207实验二《Java面向对象程序设计》实验报告

    2017-2018-2 20165207实验二<Java面向对象程序设计>实验报告 课程:Java程序设计 班级:1652 姓名:李天林 学号:20165207 实验日期:2018年4月1 ...

  6. Python笔记 #06# NumPy Basis & Subsetting NumPy Arrays

    原始的 Python list 虽然很好用,但是不具备能够“整体”进行数学运算的性质,并且速度也不够快(按照视频上的说法),而 Numpy.array 恰好可以弥补这些缺陷. 初步应用就是“整体数学运 ...

  7. c++第二十天

    p111~p114: 与旧代码的接口 1.C++程序中的C风格字符串:任何出现字符串字面值的地方都可以以空字符结束的字符数组来替代. const char str[] = {"Hello, ...

  8. Sybase中的load table的用法

    Sybase中的load table的用法 用sybase iq作为数据仓库的存储,确实有其独特的特点和优势,但是在数据ETL的时候,如果用insert.update方式,速度太慢,大概是2秒钟左右一 ...

  9. Ubuntu桌面环境安装

    图形程序安装 运行StartX命令检查是否已安装,若提示未安装则执行: sudo apt-get install xinit 环境管理器 GNOME: sudo apt-get install gdm ...

  10. 【大型web架构】一个大型web系统架构设计和技术选型的讨论摘录

    1.数据库压力问题 所有的压力最终都会反映到数据库方面,一定要对数据库有一个整体的规划. 可以按照业务.区域等等特性对数据库进行配置,可以考虑分库.使用rac.分区.分表等等策略,确保数据库能正常的进 ...