找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 14783|回复: 2

OpenVZ虚拟机里配置tunnelbroker.net的IPv6隧道

[复制链接]
发表于 2013-4-20 16:09:57 | 显示全部楼层 |阅读模式
默认情况下,VPS商不会给你在OpenVZ启用sit设备(因为需要重新编译内核等等),不用说burst.net这种大公司。没有sit设 备,openvz下除了teredo协议获得IPv6之外,还有一招。
+ }- P- @6 ]8 L; \使用tunnelbroker获得完整的/64甚至/48块的IPv6。! `6 n! I' D7 b7 g1 F
英文来自:http://code.google.com/p/tb-tun/wiki/HOWTO
. m! A% L9 C  _9 ~) y7 _  m% P, i我经过测试通过,可行的。5 p$ l% ?7 n1 ~. B* t/ e
我把具体的过程写下,貌似还没有看到有人写过。 是俺们国人写的。仰慕一下,顺便研究研究代码。以下步骤在Burst.NET的 VPS跑着Debian5下测试通过,在VPSVilla.ca的CentOS系统的VPS上也测试通过。, z% \7 Q3 j. \0 K8 y7 B
1. 开启TUN设备。这一步需要服务商来弄。在你发ticket给服务商之前,试试以下命令:
4 ^& a% ^9 U# {mkdir -p /dev/net7 }# n& Q: Z0 X$ S
mknod /dev/net/tun c 10 200' `) k9 d" |& G' {
chmod 600 /dev/net/tun
* e7 o. t+ R/ e4 A3 `. X然后运行* I' {8 ]1 v5 S) Z0 t9 {8 V& q  P
cat /dev/net/tun
( E, P; F4 D. ]1 f9 o假如提示:cat: /dev/net/tun: 文件描述符处于错误状态" i& b( x) U- B
那么应该就是可以使用了的。具体还是发个ticket吧。. n. |' n, {8 T
2. 下载tb-tun软件。mkdir tb& a) @+ A" X, B
cd tb
- Y$ W) S8 t% @& o; iwget http://tb-tun.googlecode.com/files/tb-tun_r14.tar.gz
3 x$ d& F3 n* }* l8 C; F' rtar zxf tb-tun_r14.tar.gz5 P) o( h# T' d; a. V' r( C# u
3. 编译tb-tungcc tb_userspace.c -l pthread -o tb_userspace
: ]$ _! _; x: k' W' G2 u+ y4. 创建Tunnelbroker.net账户这一步。我不多说了。到tunnelbroker.net注 册。需要到邮箱获取密码。2 O  ~% C6 ?' k1 [9 \' T
5. 建立IPv6隧道首先在tunnelbroker.net内,左边找到:Create Regular Tunnel& a, Z$ \! c  Y
进入后:* H; X1 b. u" b' g: q+ u* O3 ^

1 m) c% d+ @* ~4 e9 C- VIPv4 Endpoint内填入你的VPS分配到的IP
! J8 D: u* l6 ^! ]& H3 P' e然后在下面选择一个离你的服务器较近的Relay Server.
5 z! P9 Y4 ~; A  e) ~' O后面略过。假如你创建成功了,那么就会在Main Page里面的Tunnels里面看到你刚刚建立的Tunnel6 Z, ?9 ?7 T/ b0 H( q
6. 绑定Tunnel这里才是重点。
9 s/ k) [( ?. D" v& x( \找到你的tunnel,点进去,你应该看到这样的信息:3 j. V/ X& ]- S4 |& F; a

( `$ E+ B' _7 u# ]这里记录下重点信息:" ^" W2 |/ w+ ~- L
Routed /64就是你被分配的IPv6地址块。你可以从中任意添加IP。例如我这里IP块可以使用:& t9 j! P: ~/ k# g; V) s
2001:470:8:4b9::1  p' t1 V3 _9 c$ i# Y
2001:470:8:4b9::2
  @" }& ?2 L, }+ d% \! V2001:470:8:4b9::3$ c& P' J) Q5 U# a
2001:470:8:4b9:29ad:2812:293a:cafe:1
4 ]+ c, o2 M( M0 G- @- }等等等等。。(当然,要多少添加多少即可,取之不尽阿)/ J! t' Q: t/ _+ u3 }1 }
还有一个重要的信息:
; J# q6 f2 L! [& @! N+ IServer IPv4 Address。这个是HE的服务器IP,作中转,后面用到。
/ i% C  n; K  @7 B有了这两个信息,就可以开始配置了:
  J" e& l7 ?; w$ j7 Ysetsid ./tb_userspace tb [Server IPv4 address] > /dev/null
& I" _6 \# M5 T# R* nifconfig tb up
9 E3 L0 ~4 U+ f8 r, O7 {  E" ~ifconfig tb inet6 add [你分配的IPv6地址]/64
# G0 d$ s, a1 Hifconfig tb mtu 1480# E4 q/ S( @. e4 a: {( b
route -A inet6 add ::/0 dev tb3 w9 _. O$ V6 R) k# v
例如:- s' W+ ~& b& Q5 ~0 J& i. p
setsid ./tb_userspace tb 216.66.22.2 > /dev/null
/ C: K8 m' k( `/ difconfig tb up8 }: y$ l/ k. ~9 W# \' i
ifconfig tb inet6 add 2001:470:8:4b9::1/64
9 A7 F1 t8 v0 M8 _9 F& m4 L) a4 X. Fifconfig tb mtu 1480& ]' ~% F! q5 p$ e9 L, Y% x

4 ]7 M# H2 m% Y7 x# u  GDebian: route -A inet6 add ::/0 dev tb
9 _8 t3 }+ j' X( Y: OCentos: ip -6 route add default dev tb
& q1 S% }( k9 }# q. d7 L完成以上工作,你应该就获得IPv6了。* I4 i' l" K" x. t! }
ping一下ipv6.google.com测试一下,假如ping通,那么你的IPv6就拿到手拉。
+ r5 {/ G! }1 E6 Q8 l+ tchencp:~# ping6 ipv6.google.com2 u3 y0 V! {& Z& J1 m% H& C  P
PING ipv6.google.com(iad04s01-in-x68.1e100.net) 56 data bytes
, c# d- a0 ~5 g64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=1 ttl=59 time=14.9  ms
3 D5 s7 {0 s+ ~$ n/ d, W! L4 n64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=2 ttl=59 time=15.8  ms
$ Z3 ^8 M) q2 @9 E64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=3 ttl=59 time=15.2  ms
3 ^% q5 Q0 _! L至于你后面用这些IP干什么,就不关我的事情拉。, J- E1 ~( N) x' F
假如以后还需要添加IP:* H; \+ S  q. h' @/ U9 p/ d
ifconfig tb inet6 add [要添加的IP]/64
+ K5 ^! I  `2 m* p

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
 楼主| 发表于 2013-4-20 16:12:34 | 显示全部楼层
本文来自:http://ccp.li
回复

使用道具 举报

发表于 2013-4-25 13:11:02 | 显示全部楼层
看了LZ的帖子,我只想说一句很好很强大!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|第一站论坛 ( 蜀ICP备06004864号-6 )

GMT+8, 2026-9-22 06:38 , Processed in 0.070562 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表