利用HE IPv6使openvz支持ipv6
参考
https://github.com/acgrid/tb-tun
飞扬的喵窝-为OpenVZ VPS添加HE IPv6 tunnel
使用 HE Tunnel Broker 给 IPv4 VPS 免费添加公网 IPv6 支持
环境
OpenVZ Linux VPS Ubuntu 14.04 x86
步骤
1. HE IPv6 tunnel
1.1 注册HE IPv6 tunnel
登陆注册https://tunnelbroker.net
1.2 Create Regular Tunnel
- IPv4 Endpoint (Your side):填vps的ip
- Available Tunnel Servers:在vps上ping试试看哪个延迟最低
- Checking address…可以后,点下方Create Tunnel就好了
1.3 查看ip地址
[2022年方法]直接修改系统网卡配置
- 复制配置到
/etc/network/interfaces.d/he-ipv6
对于Oracle的免费服务器,要把配置中的公网ip地址替换成ip addr
看到的子网地址
如果没有interfaces.d
目录,apt-get install ifupdown
- 启动网卡
ifup he-ipv6
ip addr
就能查看到ipv6的网卡,也能ping通网站了- 开机也会自启
[2017年方法]使用tb-tun添加隧道
许多教程里给的源码地址都已失效,我重新从GitHub上找了代码,如果我找的这个代码地址失效,可自行到GitHub上找 源代码tb-tun
2.1 下载
root@GaseousOvercooked-VM:/# mkdir tb-tun-file
root@GaseousOvercooked-VM:/# cd tb-tun-file/
我是浏览器下载https://codeload.github.com/acgrid/tb-tun/zip/master 然后本地解压后用winscp上传到vps的/tb-tun-file目录 wget 然后解压或者git 命令都行,源码就在那里,传到vps上就可以
2.2 编译
gcc tb_userspace.c -l pthread -o tb_userspace
如果缺少gcc,先安装gcc,例deb系
sudo apt-get install gcc
3.1 需要开启tun/tap
先检查tun/tap设备是否已经打开,可以通过命令cat /dev/net/tun检测,如果返回File descriptor in bad state,则说明tun/tap设备已经打开,否则需要到控制面板更改或给客服发ticket开启。
3.2 设置tunnel
下述命令中 he-ipv6为之后的tunnel名称,可自定义 [server ipv4 addr] [client ipv4 addr] [client ipv6 addr] 为1.3 查看ip地址图中的几个ip地址
root@GaseousOvercooked-VM:/tb-tun-file# setsid ./tb_userspace he-ipv6 [server ipv4 addr] [client ipv4 addr] sit > /dev/null
root@GaseousOvercooked-VM:/tb-tun-file# ifconfig he-ipv6 inet6 add [client ipv6 addr]
root@GaseousOvercooked-VM:/tb-tun-file# ifconfig he-ipv6 mtu 1480
root@GaseousOvercooked-VM:/tb-tun-file# ifconfig he-ipv6 up
root@GaseousOvercooked-VM:/tb-tun-file# route -A inet6 add ::/0 dev he-ipv6
root@GaseousOvercooked-VM:/tb-tun-file# ip -6 route del default dev venet0
3.3 ping6测试
ping6 ipv6.google.com
测试是否正常
备注
-
- 上述命令重启后会无效,需从3.2 设置tunnel继续输入,需要添加开机脚本可参考IPv6 tunnel on OpenVZ
本文首发于我的博客@cndaqiang.
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!