近日无事,重写了tb-tun。
tb-tun是在用户态实现6to4的小程序,通过he 的tunnel连接到ipv6网络。
它主要用于openvz主机,在不能直接添加sit连接的情况下,通过tun设备收发 ipv6数据包。
原项目地址是:https://github.com/acgrid/tb-tun
说明:https://www.jianshu.com/p/4315183d88b3
原代码是用多线程实现,我改为用libevent事件驱动。
因为是在openvz中,内核版本很低,只有2.6.32,这样老的内核不支持ipv6 nat。
所以我又修改了napt66。
napt66 的项目地址是:https://github.com/mzweilin/napt66
是北邮的同学做的。我原来也做过补丁,是用在linux内核中。
现在我反其道行之,把napt66改到用户态下,与tb-tun相结合,完美实现了6to4和ipv6 nat。
有什么用呢?
一是用了ipv6 nat,在openvz内跑的的uml内核的程序(为了用bbr tcp加速)可以通过ipv6 nat出去,访问到ipv6了。
二是机器中设置好vpn后,连接到这个vpn的用户可以得到ipv6地址,连接到ipv6。如果没有nat,那是不行滴。
三,,其它,没想到。
其实如果可以是可以自己编译内核的kvm,直接用最新内核,几个命令就解决。何须这么麻烦?关键是openvz便宜啊!!!!
下载地址:
http://bbs.routerclub.com/thread-48958-1-1.html