IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    给服务器添加 ipv6 支持 以通过苹果审核

    R0uter发表于 2017-05-20 10:24:47
    love 0

    去落格博客阅读完整排版的给服务器添加 ipv6 支持 以通过苹果审核

    最近更新:20th 五月, 2017

    给 iOS 应用做后端服务器,需要做 ipv6 的支持,虽然 6 在中国几乎不怎么用,但遗憾的是苹果现在要求所有上架的 app 都需要支持纯 ipv6 网络,所以,我们的服务器至少要在 ipv6 的环境下跑起来。

    由于国内大多数服务器商不能提供 ipv6 网络,所以我们只能自己找隧道,现在用的比较广的是这一家,我也用的是他们的服务,是免费的,注册一下就好。

    注册之后,选择左下方的 “Create Regular Tunnel”,创建一个普通隧道,ip地址自然就是你服务器的外网地址,创建的地方选择距离最近的“香港”,速度会比较好一些。

    服务器端

    现在,回过头来配置你的服务器:vi /etc/sysctl.conf ,找到下面三个改为 0:

    net.ipv6.conf.all.disable_ipv6 = 0
    net.ipv6.conf.default.disable_ipv6 = 0
    net.ipv6.conf.lo.disable_ipv6 = 0

    然后编辑/etc/network/interfaces ,在末尾加入下面的信息:

    auto he-ipv6
    iface he-ipv6 inet6 v4tunnel
    address <IPV6>::2
    netmask 64
    remote <Tunnel 的 Server IPv4 Address>
    local <内网 IPv4 地址>
    endpoint any
    ttl 255
    gateway <IPv6>::1
    up ip -6 route add 2000::/3 via ::<HE 的 Server IPv4 Address> dev he-ipv6
    up ip -6 addr add <IPv6>::1:1/128 dev he-ipv6
    up ip -6 addr add <IPv6>::2:1/128 dev he-ipv6
    down ip -6 route flush dev he-ipv6

    注意,local 字段是你内网的 ipv4 地址,比如我的是阿里云的服务器,那么就是阿里云的内网地址否则无法ping通。

    其中里面<IPv6> 需要你自己替换成你刚刚申请的 Tunnel 的 Server IPv6 Address,但不包括最后的::1/64 。server和client都是同一个所以就填就好了。

    配置好后就可以重启服务器了,重启后使用 ifup he-ipv6 确认隧道启动。

    然后就可以测试了,使用ping6 ipv6.google.com 来测试配置是否正确。

    配置解析

    在 HE 网站,配置解析为你的ns服务器,比如我用的 cloudxns,那么我就把解析地址设置为 cloudxns 的代理地址。

    然后登录你的ns网站,给你的服务器添加 AAAA 解析,地址为你的ipv6地址,解析域与你的v4解析一致,用哪个解析哪个,比如我就用到 www,那就添加 www,值得注意的是现在国内的ns商都提供一个额外的国外特殊通道,所以你可能得除了国内默认外,还要添加什么“海外默认”、“美国默认”、“谷歌默认”之类的一大堆。多添加几个,毕竟苹果爸爸在美国。

    等待配置生效就好了,然后我们可以用dig工具来测试——这里注意不要使用阿里云服务器默认的dns,你可能根本查不到。

    dig your.domain.com AAAA @8.8.8.8

    使用谷歌的公开 DNS 进行测试,如果看到记录内容是你的v6地址,那就ok了,现在你可以试试去那些在线ping6的网站测试了。

    配置 nginx

    最后,你还需要让nginx默认支持v6,在你对应域名监听上添加:

     listen 443 ssl;
    	listen [::]:443 ssl;
    
    listen 80 default ;
    	listen [::]:80 default;

    使用命令nginx -t 确认没问题的话,重启服务即可。

    这下,你的网站或者 api 就能支持 ipv6 的访问和测试了。

     

    给服务器添加 ipv6 支持 以通过苹果审核,首发于落格博客。

    其他推荐:
    1. 部署 SNI Proxy 加速网页访问 反代 无需证书
    2. 在 ufw 上开启 nat 伪装和端口转发
    3. 搭建 OpenConnect VPN 服务器 AnyConnect (ocserv)
    4. 思科路由器DHCP以及DHCP中继配置的简单示例
    5. 使用ocserv搭建 Cisco Anyconnect 服务器



沪ICP备19023445号-2号
友情链接