神一样的男人 发表于 2013-5-26 17:44:42

把openvz中的ipv6地址v6inv4的方法广播到本地电脑

默认情况下,VPS商不会给你在OpenVZ启用sit设备(因为需要重新编译内核等等),不用说burst.net这种大公司。没有sit设 备,openvz下除了teredo协议获得IPv6之外,还有一招。

不管任何方式广播openvz的ipv6地址到本地电脑都有开启ipv6转发功能:
echo 1 > /proc/sys/net/ipv6/conf/all/forwarding
ip6tables –F && service ip6tables save

使用tunnelbroker获得完整的/64甚至/48块的IPv6。
英文来自:http://code.google.com/p/tb-tun/wiki/HOWTO
我经过测试通过,可行的。
我把具体的过程写下,貌似还没有看到有人写过。 是俺们国人写的。仰慕一下,顺便研究研究代码。以下步骤在Burst.NET的 VPS跑着Debian5下测试通过,在VPSVilla.ca的CentOS系统的VPS上也测试通过。
1. 开启TUN设备。这一步需要服务商来弄。在你发ticket给服务商之前,试试以下命令:
mkdir -p /dev/net
mknod /dev/net/tun c 10 200
chmod 600 /dev/net/tun
然后运行
cat /dev/net/tun
假如提示:cat: /dev/net/tun: 文件描述符处于错误状态
那么应该就是可以使用了的。具体还是发个ticket吧。
2. 下载tb-tun软件。mkdir tb
cd tb
wget http://tb-tun.googlecode.com/files/tb-tun_r14.tar.gz
tar zxf tb-tun_r14.tar.gz
3. 编译tb-tungcc tb_userspace.c -l pthread -o tb_userspace

重点来了,放出脚本:
先截图或记下分配给你的ipv6地址,删除原有ipv6只留一个(如果是一段48或64位的ipv6段,这部省去!)
方法 (最好放到开机启动脚本里面):ifconfig venet0 inet6 del 2405:4200:202::20e7:c0f/128

编写脚本(最后用)
**** Hidden Message *****
其中红色ip是你路由或电脑的外网ip地址,我的是动态的,开路由开电脑自动更新ip我不说,php还是py你们自己研究!
蓝色部分是你vps分配的ipv6前缀,如果是oneasiahost的vps你可以不改。
修改好上面脚本后保存为脚本,用的时候更新下里面的ip运行一下就行了(在路由或电脑配置好并获取公网ipv4前提下)。

配置路由:shippy tomato为例,基本-ipv6模式选择6in4前缀2405:4200:202::掩码 64网关自定义:2405:4200:202::202:200dns:2001:470:20::2通告关闭(如果ipv6是连续的一段i64或48的ip可以打开) 服务器ip:你的vps的独立ip客户端地址:2405:4200:202::20e7:c2f/64 这个填写你服务器上的一个可用ip地址

保存设置,vps上更新一下脚本里面路由外网ip,并运行一下,这是路由就能上ipv6网了。电脑上网方法:设置网卡ipv6 ip你vps上的一个可用ipv6地址,掩码64,网关(前面路由里面设置的网关):2405:4200:202::202:200 dns:2001:470:20::2

ok 电脑也能上ipv6网了!

adsl789 发表于 2016-10-30 21:17:01

把openvz中的ipv6地址v6inv4的方法广播到本地电脑
页: [1]
查看完整版本: 把openvz中的ipv6地址v6inv4的方法广播到本地电脑