使用“专有网络”网络类型的云
服务
器
ECS
也能通过
IPv6
地址访问到内容,能通过苹果APP的审核。
注意:如是苹果APP上架申请因无法IPv6-only访问被拒,请重点检查APP代码,苹果公司的参考文档并没有要求APP服务需要有IPv6地址: https://developer.apple.com/library/content/documentation/NetworkingInternetWeb/Conceptual/NetworkingOverview/UnderstandingandPreparingfortheIPv6Transition/UnderstandingandPreparingfortheIPv6Transition.html
场景:
a. 阿里云 国内地域的云服务器ECS没有分配有效的公网IPv6地址,但苹果APP审核时,可能会要求内容能通过IPv6地址访问
b. 国外服务商tunnelbroker.net,可以提供IPv6的隧道地址,使用的协议是6in4
c. 阿里云国内地域的云服务器ECS有“经典网络”和“专有网络”的网络类型,“经典网络”环境里可以使用tunnelbroker.net提供的隧道地址,“专有网络”则不可以,因为阿里云工程师确认在“专有网络”环境下不支持41协议
环境:
a. 国外配有IPv6地址的VPS
b. 阿里云“专有网络”的ECS
过程:
1. 将 域名 (如liujia.anqun.org)分别做A和AAAA记录,A记录解析到阿里云ECS的公网IP(如121.40.22.38),AAAA记录解析到国外VPS的IPv6地址(如2602:ffc5:20::1:ebde)
2. 在国外的VPS, 配置 虚拟主机 配置文件,内容如下:
3. 重启 nginx 后,生效
4. 在 http://ipv6-test.com/validate.php 测试,可以看到前两项通过。在 http://www.ipv6proxy.net/ 测试,可以看到页面内容
注意:如是苹果APP上架申请因无法IPv6-only访问被拒,请重点检查APP代码,苹果公司的参考文档并没有要求APP服务需要有IPv6地址: https://developer.apple.com/library/content/documentation/NetworkingInternetWeb/Conceptual/NetworkingOverview/UnderstandingandPreparingfortheIPv6Transition/UnderstandingandPreparingfortheIPv6Transition.html
场景:
a. 阿里云 国内地域的云服务器ECS没有分配有效的公网IPv6地址,但苹果APP审核时,可能会要求内容能通过IPv6地址访问
b. 国外服务商tunnelbroker.net,可以提供IPv6的隧道地址,使用的协议是6in4
c. 阿里云国内地域的云服务器ECS有“经典网络”和“专有网络”的网络类型,“经典网络”环境里可以使用tunnelbroker.net提供的隧道地址,“专有网络”则不可以,因为阿里云工程师确认在“专有网络”环境下不支持41协议
环境:
a. 国外配有IPv6地址的VPS
b. 阿里云“专有网络”的ECS
过程:
1. 将 域名 (如liujia.anqun.org)分别做A和AAAA记录,A记录解析到阿里云ECS的公网IP(如121.40.22.38),AAAA记录解析到国外VPS的IPv6地址(如2602:ffc5:20::1:ebde)
2. 在国外的VPS, 配置 虚拟主机 配置文件,内容如下:
- server {
- listen [::]:80; # 监听IPv6的80端口
- server_name liujia.anqun.org; # 站点域名
- location / {
- proxy_pass https://liujia.anqun.org/; # IPv4的站点访问地址
- proxy_redirect off;
- proxy_set_header Host $host;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
- }
- }
3. 重启 nginx 后,生效
4. 在 http://ipv6-test.com/validate.php 测试,可以看到前两项通过。在 http://www.ipv6proxy.net/ 测试,可以看到页面内容