为 Aliyun 开启 IPv6 Tunnel

现在IPv6发展越来越快,但还是需要时间来普及,有时候有访问 IPv6 的特殊需求该怎么办呢...

我们可以使用 Hurricane Electric 提供的免费 IPv6 Tunnel Broker 来让阿里云 ECS 支持 IPv6


1. 注册并创建 IPv6 通道
tunnelbroker.net 注册并登陆
点击 Create Regular Tunnel
tunnelbroker.net
IPv4 Endpoint (Your side) 处填上 ECS 的 公网 IPv4 地址
Available Tunnel Servers 中选择离 ECS 物理位置最近的节点
点击 Create Tunnel 后,通道就创建完成了


2. 关闭 ECS 的 IPv6 限制

这里以 Ubuntu 为例,一般情况下不需要这一步,这是阿里云的限制
编辑/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

编辑完毕 sysctl -p 保存


3. 添加网卡

点击 IPv6 TunnelExample Configurations 获取配置,在 /etc/network/interfaces 底部加上配置的内容:
(如果你的服务器有内网IP,一定要把 local 的IP替换成内网IP,否则可能无法正常使用)

auto he-ipv6
iface he-ipv6 inet6 v4tunnel
address <HE分配的 IPv6 地址>
netmask 64
endpoint <HE 的 Server IPv4 地址>
local <ECS的内网 IPv4 地址>
ttl 255
gateway <HE分配的 IPv6 网关>

最后执行 ifup he-ipv6 启用网卡,如果遇到了 add tunnel sit0 failed 错误,多半是因为已经有 he-ipv6 tunnel,运行ip tun del he-ipv6 之后再启用就可以了。


测试一下:
ping6 -c 4 cloudflare.com

至此配置完成,你可以通过 HE 的 IPv6 Address 访问你的服务器了,当然也可以通过服务器访问 IPv6 资源,目前 IPv6 的普及率还是太低了,希望各路 服务商/运营商 能尽快支持原生 IPv6 吧~

标签: Ubuntu IPv6 阿里云


添加新评论