|
|
默认情况下,VPS商不会给你在OpenVZ启用sit设备(因为需要重新编译内核等等),不用说burst.net这种大公司。没有sit设 备,openvz下除了teredo协议获得IPv6之外,还有一招。8 i! a2 H2 N9 \+ G- o% {. N
使用tunnelbroker获得完整的/64甚至/48块的IPv6。7 @" p5 g8 b( [% C/ v6 E- K
英文来自:http://code.google.com/p/tb-tun/wiki/HOWTO; D" v- O; [5 e f9 x, }1 E
我经过测试通过,可行的。
( T' r' i" k3 j) T, Z3 {7 W我把具体的过程写下,貌似还没有看到有人写过。 是俺们国人写的。仰慕一下,顺便研究研究代码。以下步骤在Burst.NET的 VPS跑着Debian5下测试通过,在VPSVilla.ca的CentOS系统的VPS上也测试通过。. z. x3 s, k; v6 n: H5 i, w/ s
1. 开启TUN设备。这一步需要服务商来弄。在你发ticket给服务商之前,试试以下命令:3 o" T* `0 B8 `" Y3 T
mkdir -p /dev/net- m1 `& C7 ?! B! [2 q/ c' r A* T
mknod /dev/net/tun c 10 200, D+ @! J1 o" m& ]9 T; A0 K
chmod 600 /dev/net/tun
2 q9 V5 v- e6 }6 U' Q然后运行, H3 e8 F- D$ P9 d. F
cat /dev/net/tun. Q; }( S/ ?* _0 R
假如提示:cat: /dev/net/tun: 文件描述符处于错误状态5 B4 {) a! m5 r) m" H% c/ o$ n
那么应该就是可以使用了的。具体还是发个ticket吧。0 m4 W! r. v. {
2. 下载tb-tun软件。mkdir tb
& D2 G6 r8 a2 } X& Vcd tb: Y g) D* U6 D5 T/ W; ?% ^
wget http://tb-tun.googlecode.com/files/tb-tun_r14.tar.gz% j# T9 R/ D9 z( M+ c0 b
tar zxf tb-tun_r14.tar.gz/ a' B) M3 g, \0 _
3. 编译tb-tungcc tb_userspace.c -l pthread -o tb_userspace6 ?* Z" C# ~; s) h% s1 Y
4. 创建Tunnelbroker.net账户这一步。我不多说了。到tunnelbroker.net注 册。需要到邮箱获取密码。
0 n$ d" `# L% r* V3 l5. 建立IPv6隧道首先在tunnelbroker.net内,左边找到:Create Regular Tunnel
" W6 h& ^$ P7 X$ t( s9 F! ~进入后:/ \$ H7 Z4 N7 T4 t6 H
7 p) T: m+ J8 [6 hIPv4 Endpoint内填入你的VPS分配到的IP。' J4 A% Q* b0 ~1 V* _
然后在下面选择一个离你的服务器较近的Relay Server.1 a9 W% Y2 j3 {9 L7 m5 S2 e
后面略过。假如你创建成功了,那么就会在Main Page里面的Tunnels里面看到你刚刚建立的Tunnel
, F1 h" O; M3 o8 L) Z8 I8 b- t: E8 N7 G6. 绑定Tunnel这里才是重点。
& }3 z, v3 X6 e找到你的tunnel,点进去,你应该看到这样的信息:* ? M7 k3 A$ f
. S& P. j8 |1 M; U
这里记录下重点信息:3 n5 ]9 C. \ j
Routed /64就是你被分配的IPv6地址块。你可以从中任意添加IP。例如我这里IP块可以使用:! p1 Q1 P, g9 i' b# X% A2 S
2001:470:8:4b9::1' [6 i+ k1 S6 p$ v w% H! h2 S+ W
2001:470:8:4b9::24 ]! u0 p1 Q6 ^* `
2001:470:8:4b9::31 H2 l. d1 e- ]" B* }! Y1 q
2001:470:8:4b9:29ad:2812:293a:cafe:1# K U Y* `1 ~$ Y% u) N
等等等等。。(当然,要多少添加多少即可,取之不尽阿)0 _6 E @3 V$ \% ?
还有一个重要的信息: W* t v# g7 n0 _' Q
Server IPv4 Address。这个是HE的服务器IP,作中转,后面用到。3 C5 ], e# a3 _/ U" }! U
有了这两个信息,就可以开始配置了:9 @# L. N }+ F3 i
setsid ./tb_userspace tb [Server IPv4 address] > /dev/null) B0 ]. i" L0 c: J _) y; l
ifconfig tb up7 H8 r( X4 I4 n! v1 F4 u2 W! k
ifconfig tb inet6 add [你分配的IPv6地址]/64
+ S! L% X u9 _" A# P$ Lifconfig tb mtu 1480
\& B; A& K4 Nroute -A inet6 add ::/0 dev tb4 {4 c6 T- X" f& H& q$ s
例如:
/ O# ~3 ~( M; U0 P+ G8 ^setsid ./tb_userspace tb 216.66.22.2 > /dev/null7 m' C' J. M& x1 {' R* {; [
ifconfig tb up, H3 F2 ~$ U7 X% n3 V( J* P
ifconfig tb inet6 add 2001:470:8:4b9::1/64; E7 u) r! c% D) x9 D
ifconfig tb mtu 1480
. r7 g" H5 |, R8 E4 I% Q2 k! C* R( Q0 L
- x& e" d# ?7 P; ~2 y3 L8 z; t, U1 }Debian: route -A inet6 add ::/0 dev tb
5 v) _ L: ~, xCentos: ip -6 route add default dev tb
3 V' p0 D: f8 M0 ]5 u3 s# `! S# ?完成以上工作,你应该就获得IPv6了。
" r: Y7 I; z" z3 A3 i5 uping一下ipv6.google.com测试一下,假如ping通,那么你的IPv6就拿到手拉。
8 D! {% w1 P! W$ Gchencp:~# ping6 ipv6.google.com
9 l! O d# J9 A. k3 Y% U# j% p; b$ f7 gPING ipv6.google.com(iad04s01-in-x68.1e100.net) 56 data bytes, U) f6 q+ P2 w2 ^- Y
64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=1 ttl=59 time=14.9 ms
6 o, }$ e2 D+ w" c% h3 Y! k _64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=2 ttl=59 time=15.8 ms6 u" [) {- \. Q, k5 p, S2 W8 P
64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=3 ttl=59 time=15.2 ms7 K* O6 l- w, @
至于你后面用这些IP干什么,就不关我的事情拉。
4 V( L8 A% Z! @' w3 a+ x# h假如以后还需要添加IP:
3 h: o$ \) r+ Pifconfig tb inet6 add [要添加的IP]/64- Z3 {7 S( K: Z6 ~) ]
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
|