|
默认情况下,VPS商不会给你在OpenVZ启用sit设备(因为需要重新编译内核等等),不用说burst.net这种大公司。没有sit设 备,openvz下除了teredo协议获得IPv6之外,还有一招。
3 _7 ^$ c5 @; q使用tunnelbroker获得完整的/64甚至/48块的IPv6。6 H$ X: e6 U7 h" t! S
英文来自:http://code.google.com/p/tb-tun/wiki/HOWTO1 _) e: R9 \' N
我经过测试通过,可行的。
0 E$ x1 W) b% }: \+ F我把具体的过程写下,貌似还没有看到有人写过。 是俺们国人写的。仰慕一下,顺便研究研究代码。以下步骤在Burst.NET的 VPS跑着Debian5下测试通过,在VPSVilla.ca的CentOS系统的VPS上也测试通过。1 A6 v/ I- Y m$ c
1. 开启TUN设备。这一步需要服务商来弄。在你发ticket给服务商之前,试试以下命令:
6 r5 J9 D" \+ D' I6 H* T1 @mkdir -p /dev/net, ~4 u' D( f6 C! f% l
mknod /dev/net/tun c 10 200& O* L$ {* Y3 w4 C# \6 m) K, Z
chmod 600 /dev/net/tun
% r9 ^( [: ?% v4 p, J然后运行: q% P1 O) K( V- H- G! p
cat /dev/net/tun
" x6 U, ?$ s7 h假如提示:cat: /dev/net/tun: 文件描述符处于错误状态
, Q; b n) T3 g( s' C: O {! G那么应该就是可以使用了的。具体还是发个ticket吧。5 f6 f, W! u: u. [4 A4 S: l8 H- a
2. 下载tb-tun软件。mkdir tb M& ]" r ~3 I* H
cd tb' J2 }' _2 S" V: j% d; M- U
wget http://tb-tun.googlecode.com/files/tb-tun_r14.tar.gz% a% h. X. j3 E5 v+ h0 f- Z
tar zxf tb-tun_r14.tar.gz
! @8 q* |/ Y1 W/ b3. 编译tb-tungcc tb_userspace.c -l pthread -o tb_userspace
- d9 D2 ~" _8 l ^+ T' }4. 创建Tunnelbroker.net账户这一步。我不多说了。到tunnelbroker.net注 册。需要到邮箱获取密码。
6 g' p" K8 ]3 X$ G. E% F0 ]5. 建立IPv6隧道首先在tunnelbroker.net内,左边找到:Create Regular Tunnel I8 }- E% S y1 y( M0 F
进入后:5 i2 a2 z5 W5 m( Z. b8 O
) {* b& E8 J' ]/ A( _3 Y; [/ q0 M4 Y; Z. F
IPv4 Endpoint内填入你的VPS分配到的IP。
s6 C$ s; \" r然后在下面选择一个离你的服务器较近的Relay Server., j. p0 P: a6 J4 @0 H; k
后面略过。假如你创建成功了,那么就会在Main Page里面的Tunnels里面看到你刚刚建立的Tunnel. D9 z. Z" Y( @' R% y& y8 ^
6. 绑定Tunnel这里才是重点。
" o+ C4 q; ]- B% m2 q找到你的tunnel,点进去,你应该看到这样的信息:
3 O+ d- _- o* t4 }' \, S$ k+ E4 C% S; ?3 n+ n2 a. I* g" h0 A8 o
这里记录下重点信息:
7 v0 \2 E* a) B ]% W* [/ [5 qRouted /64就是你被分配的IPv6地址块。你可以从中任意添加IP。例如我这里IP块可以使用:: P! m; s7 S9 |0 k% x3 h" u' m4 a& n
2001:470:8:4b9::1
. \' `4 m. V, c& u/ Y0 O+ A2001:470:8:4b9::2
* W [1 d( J& k& ~+ T0 s2001:470:8:4b9::3
7 z. X6 z( U7 _% W2001:470:8:4b9:29ad:2812:293a:cafe:1* C5 [- u! D, j- ^
等等等等。。(当然,要多少添加多少即可,取之不尽阿)& m& f# P, U& ]
还有一个重要的信息:
- V/ U' N5 s9 N8 }Server IPv4 Address。这个是HE的服务器IP,作中转,后面用到。: ^: R; y3 e I8 ?
有了这两个信息,就可以开始配置了:
; b( m, p% L& B0 Ysetsid ./tb_userspace tb [Server IPv4 address] > /dev/null- j- }( u, `! v) C
ifconfig tb up. Q9 W# A- j7 y% S* H7 A8 W" D
ifconfig tb inet6 add [你分配的IPv6地址]/64
0 Y' I4 w! G" q2 V* {3 s& I) Oifconfig tb mtu 1480% e' h, f5 g9 I1 J. u' D$ s1 D
route -A inet6 add ::/0 dev tb
' d6 N% b( m1 [3 [例如:! A0 E3 V9 y5 R' m7 p7 s V! y/ L" V
setsid ./tb_userspace tb 216.66.22.2 > /dev/null4 ?8 B: e4 y7 X. `# }! ?2 x3 e/ l
ifconfig tb up
U0 _( G( o& W1 _8 A' V" m" Bifconfig tb inet6 add 2001:470:8:4b9::1/64
3 j: ~, K2 [8 h$ K, W5 G, b# Eifconfig tb mtu 1480
6 i6 }7 q4 D2 l3 F: B- k+ L1 O( ~6 X: Y }9 }) W& Y
Debian: route -A inet6 add ::/0 dev tb
9 T w2 ?" y8 E3 \; R* ECentos: ip -6 route add default dev tb
. y& g4 }0 i* b9 \完成以上工作,你应该就获得IPv6了。
8 Y+ b; {$ v( f9 _/ T, qping一下ipv6.google.com测试一下,假如ping通,那么你的IPv6就拿到手拉。5 H, M: o% k6 V% S C! S
chencp:~# ping6 ipv6.google.com# @( O' C+ _# G U- C$ j; o. S
PING ipv6.google.com(iad04s01-in-x68.1e100.net) 56 data bytes
7 h0 m" a; a; Z; v( H64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=1 ttl=59 time=14.9 ms) C$ P8 u6 G, A0 f) u* l& l
64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=2 ttl=59 time=15.8 ms
. C: s. d+ `' c: t/ b1 I+ } X64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=3 ttl=59 time=15.2 ms
: u6 s6 m1 a( Y/ s9 O2 e) `至于你后面用这些IP干什么,就不关我的事情拉。
t4 _+ `. ?5 `+ M* X' u7 x假如以后还需要添加IP:
+ i9 Y1 z0 U9 W' U. ^8 i. ~ifconfig tb inet6 add [要添加的IP]/64
0 _* v1 B" C' U9 g/ J( p |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
|