|
默认情况下,VPS商不会给你在OpenVZ启用sit设备(因为需要重新编译内核等等),不用说burst.net这种大公司。没有sit设 备,openvz下除了teredo协议获得IPv6之外,还有一招。3 G" Y5 z$ X' y/ v: j# {
使用tunnelbroker获得完整的/64甚至/48块的IPv6。
: y3 j% j+ a0 A2 d/ U: ?! x, s) X1 V英文来自:http://code.google.com/p/tb-tun/wiki/HOWTO) e. l3 T9 x6 M8 d$ @
我经过测试通过,可行的。& E X+ j( ^: ^$ G, q. s
我把具体的过程写下,貌似还没有看到有人写过。 是俺们国人写的。仰慕一下,顺便研究研究代码。以下步骤在Burst.NET的 VPS跑着Debian5下测试通过,在VPSVilla.ca的CentOS系统的VPS上也测试通过。; @6 d) \% a) j5 i
1. 开启TUN设备。这一步需要服务商来弄。在你发ticket给服务商之前,试试以下命令:
; T6 i. V& v. j1 Emkdir -p /dev/net5 g4 D6 i; X2 Z9 {$ i% y
mknod /dev/net/tun c 10 200
[/ P6 _: q; O5 J2 K2 B' @4 echmod 600 /dev/net/tun( z# Q! q2 O, L" L/ @. A
然后运行
, K" e- I, _9 W& n! S5 T" kcat /dev/net/tun
) |! f7 n' m3 G假如提示:cat: /dev/net/tun: 文件描述符处于错误状态! C8 M. V; L( J; i4 j
那么应该就是可以使用了的。具体还是发个ticket吧。0 M" G2 V Q. z& s* }# L! G
2. 下载tb-tun软件。mkdir tb) m- N. y3 j. {
cd tb2 l: _7 m+ k, B# p, i) t- x) K
wget http://tb-tun.googlecode.com/files/tb-tun_r14.tar.gz$ V, F5 |: V2 K7 t: Y
tar zxf tb-tun_r14.tar.gz( }1 m. y$ ~ I, }- S, ^
3. 编译tb-tungcc tb_userspace.c -l pthread -o tb_userspace
. K5 q& p- g$ f4. 创建Tunnelbroker.net账户这一步。我不多说了。到tunnelbroker.net注 册。需要到邮箱获取密码。
( E+ T! |# P% f9 i$ E% I/ m5. 建立IPv6隧道首先在tunnelbroker.net内,左边找到:Create Regular Tunnel
2 T) e' J6 Y5 n q! G进入后:3 a6 u$ f: A, a8 e
( f& o# Q. w9 `: FIPv4 Endpoint内填入你的VPS分配到的IP。
* a' b4 r% S9 Y w( ~4 U然后在下面选择一个离你的服务器较近的Relay Server.
( |# m3 I! q) ?) t/ p$ @后面略过。假如你创建成功了,那么就会在Main Page里面的Tunnels里面看到你刚刚建立的Tunnel
' f, u9 A2 P9 R6 @: v6. 绑定Tunnel这里才是重点。
7 i% A% V h9 ?$ j8 ?) H2 c# T找到你的tunnel,点进去,你应该看到这样的信息:$ u# Z; m# J3 B6 T( Z6 j! K5 z
1 |2 o" d3 R$ F% t5 `9 U这里记录下重点信息:
`/ Z9 y0 g+ b3 q0 RRouted /64就是你被分配的IPv6地址块。你可以从中任意添加IP。例如我这里IP块可以使用:; c0 w; M7 q+ c P5 W; ~4 _+ g! a" H
2001:470:8:4b9::1+ W- { G- D0 W, w0 o. s
2001:470:8:4b9::27 ?2 W. j, _. }% d8 _9 K
2001:470:8:4b9::3: W. A) X7 d) C5 h8 p6 t% r
2001:470:8:4b9:29ad:2812:293a:cafe:1. }6 H/ X' {5 X; @# O! F$ d
等等等等。。(当然,要多少添加多少即可,取之不尽阿)
5 ?7 X( U$ a) p4 G# m$ g% i还有一个重要的信息:
# R C# T! j/ P4 O& P W1 p6 QServer IPv4 Address。这个是HE的服务器IP,作中转,后面用到。
. g' K1 Y8 U& r! D6 j有了这两个信息,就可以开始配置了:
: ]" S; j0 D" s3 gsetsid ./tb_userspace tb [Server IPv4 address] > /dev/null' k- T c5 K. U8 ]
ifconfig tb up/ n5 y, ~' k! I( |& M& ~
ifconfig tb inet6 add [你分配的IPv6地址]/64 j* _9 L* K( ?4 Z
ifconfig tb mtu 1480) [' R* W: y f- z
route -A inet6 add ::/0 dev tb; n- x) k, |* K/ e8 k1 U% q8 I
例如:
O. m7 M3 e, T( i+ ]" wsetsid ./tb_userspace tb 216.66.22.2 > /dev/null: M6 p/ k6 s1 U6 ?+ \5 n# b1 m- s3 F
ifconfig tb up
( Q; I9 _! q8 J/ Yifconfig tb inet6 add 2001:470:8:4b9::1/641 R9 p- ^6 h) P3 `" R% _
ifconfig tb mtu 1480; G% |1 t7 S. ?8 v7 G x
) R$ m$ \8 k- H" ^( j' W1 m/ yDebian: route -A inet6 add ::/0 dev tb
0 |8 E* H* n+ oCentos: ip -6 route add default dev tb9 l+ t# h8 q8 A1 c/ d- r
完成以上工作,你应该就获得IPv6了。9 W9 w8 j! O. D+ J! c/ H7 O
ping一下ipv6.google.com测试一下,假如ping通,那么你的IPv6就拿到手拉。
% s/ t( a* e" k: T7 bchencp:~# ping6 ipv6.google.com
0 R0 G) @0 ?+ s0 j D$ h; MPING ipv6.google.com(iad04s01-in-x68.1e100.net) 56 data bytes' |3 b- y' W% ?- g
64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=1 ttl=59 time=14.9 ms+ M$ R& U% Q2 P6 G+ N- l
64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=2 ttl=59 time=15.8 ms
" |# D; `8 H% v" I- M64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=3 ttl=59 time=15.2 ms. _; A& u! \" r
至于你后面用这些IP干什么,就不关我的事情拉。. _" W, @: [' G; x5 c. U4 M
假如以后还需要添加IP:
! Y3 i: j* e, ?" {" uifconfig tb inet6 add [要添加的IP]/64/ g2 x8 [# p- _
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
|