阿里云 CentOS 添加IPV6支持

0

默认情况下阿里云ECS禁用了IPV6的支持,首先要开启系统的IPV6功能

修改/etc/sysconfig/network文件使NETWORKING_IPV6=yes
删除/etc/modprobe.d/disable_ipv6.conf

tunnelbroker.net注册账户并创建一个 Regular Tunnel,需要填写服务器的公网IP
注册完成后到Example Configurations中找到系统自动生成的脚本,这里我们选择Linux-route2,先不要着急拿去执行

注意页面下的这段提醒

NOTE: When behind a firewall appliance that passes protocol 41, use the IPv4 address you get from your appliance’s DHCP service instead of the IPv4 endpoint you provided to our broker.

这里需要使用的是内网IP,而不是公网IP

所以我们要执行的代码应该是这样子的

modprobe ipv6
ip tunnel add he-ipv6 mode sit remote 0.0.0.0 local <你的内网IP> ttl 255
ip link set he-ipv6 up
ip addr add 00:00:00:00::2/64 dev he-ipv6
ip route add ::/0 dev he-ipv6
ip -f inet6 addr

执行完毕之后就可以在ifconfig中看到这个he-ipv6了,随便ping6一个地址测试一下看看是否畅通

需要注意的是重启服务器后he-ipv6就会消失,需要把这段代码添加到自启动中去,例如/etc/rc.d/rc.local

另外还注意到一个问题,不知道是不是个例,阿里云ECS CentOS中/etc/usr/bin目录没有写权限,很奇怪的设定,不过默认PATH中/usr/local/bin的位置比/usr/bin靠前,所以放到/usr/local/bin中的文件会“覆盖”掉系统原来的文件,但是很多自动化的脚本就无法运行了,甚至很多程序都无法正常编译。 PS:我只是想升级一下CURL版本而已…

发表评论

您的邮箱不会公开,当您的评论有新的回复时,会通过您填写的邮箱向您发送评论内容。 必填字段 *

为何看不到我发布的评论?

正在提交, 请稍候...

This site uses Akismet to reduce spam. Learn how your comment data is processed.