|
|
默认情况下,VPS商不会给你在OpenVZ启用sit设备(因为需要重新编译内核等等),不用说burst.net这种大公司。没有sit设 备,openvz下除了teredo协议获得IPv6之外,还有一招。
, z: n" z, ?- P使用tunnelbroker获得完整的/64甚至/48块的IPv6。
( y( n3 ^' g4 A9 o英文来自:http://code.google.com/p/tb-tun/wiki/HOWTO
9 L5 W" F: h" A0 R* W我经过测试通过,可行的。
* `' [4 F- n- t我把具体的过程写下,貌似还没有看到有人写过。 是俺们国人写的。仰慕一下,顺便研究研究代码。以下步骤在Burst.NET的 VPS跑着Debian5下测试通过,在VPSVilla.ca的CentOS系统的VPS上也测试通过。, K$ [0 N% |* k- i) ~
1. 开启TUN设备。这一步需要服务商来弄。在你发ticket给服务商之前,试试以下命令:; D$ ~( v: M Z
mkdir -p /dev/net. A/ O, h6 ~+ Z
mknod /dev/net/tun c 10 200
1 ?) ?' `& [+ f$ achmod 600 /dev/net/tun
# ^7 E! S9 I! d m, ~1 t' o然后运行
( @6 x& J) g2 g$ x$ M1 c, \cat /dev/net/tun
`7 k( F+ G% h6 }! I7 b) F假如提示:cat: /dev/net/tun: 文件描述符处于错误状态
# B# S( J1 R' Q2 W+ b" u, k那么应该就是可以使用了的。具体还是发个ticket吧。
r7 z8 D; B/ K; Q4 @2. 下载tb-tun软件。mkdir tb
7 M3 q9 U7 w' H; r) b' R" wcd tb
0 N6 g9 o+ a' R4 Y* J& o* s7 Kwget http://tb-tun.googlecode.com/files/tb-tun_r14.tar.gz1 q1 r% ^% Z J+ e" W
tar zxf tb-tun_r14.tar.gz" K* J) e' g8 y& `" u, A
3. 编译tb-tungcc tb_userspace.c -l pthread -o tb_userspace
, y9 u* J- T0 l. Y( u$ h( h4. 创建Tunnelbroker.net账户这一步。我不多说了。到tunnelbroker.net注 册。需要到邮箱获取密码。
1 G0 ?2 v3 X6 x8 x5. 建立IPv6隧道首先在tunnelbroker.net内,左边找到:Create Regular Tunnel+ n7 l) ^% C' C: \1 \) R
进入后:3 o( @4 L$ M- g% ^& U4 c
, D) r6 g9 d# p2 b; F- U+ aIPv4 Endpoint内填入你的VPS分配到的IP。
- \$ W/ n4 w/ w然后在下面选择一个离你的服务器较近的Relay Server." s0 r# ^6 L5 I" {1 y! \3 a' q9 F
后面略过。假如你创建成功了,那么就会在Main Page里面的Tunnels里面看到你刚刚建立的Tunnel
* D: H/ W J3 U I. S; T5 Z6. 绑定Tunnel这里才是重点。
, [# G4 ?2 N) L& F; T找到你的tunnel,点进去,你应该看到这样的信息:* y. _9 i2 A$ v9 o
- r/ W4 u, a* Q( a' }5 ~5 l4 K这里记录下重点信息:; b6 i& E8 l+ P% h
Routed /64就是你被分配的IPv6地址块。你可以从中任意添加IP。例如我这里IP块可以使用:3 X! O) h5 M. U$ x5 d6 M
2001:470:8:4b9::1
- n& k; w, C, D! d( o: y0 B/ L2001:470:8:4b9::21 b& _% h9 |/ {% @8 C
2001:470:8:4b9::3
0 D5 o, Q7 w; R7 `. E# W# i2001:470:8:4b9:29ad:2812:293a:cafe:1
( x' S, d- g/ {6 g r, I等等等等。。(当然,要多少添加多少即可,取之不尽阿). y! E0 a" r! s8 V
还有一个重要的信息:
, `" v8 J3 _ W6 e2 LServer IPv4 Address。这个是HE的服务器IP,作中转,后面用到。
% o% [0 O0 _/ k# k有了这两个信息,就可以开始配置了:
* o8 i0 i7 E: I. G& Jsetsid ./tb_userspace tb [Server IPv4 address] > /dev/null
7 N1 m& _$ f' ^9 b6 H' Z0 m% b% x# bifconfig tb up
: m6 l0 }' u7 f3 N) P G$ q8 k5 x `ifconfig tb inet6 add [你分配的IPv6地址]/649 z1 t! N3 T' ]* l
ifconfig tb mtu 1480! R9 m6 S* E2 f' i0 T8 y9 B3 L \3 S
route -A inet6 add ::/0 dev tb
: Z% k3 h7 c! ^8 d例如:
: g( y( b( _; z7 Esetsid ./tb_userspace tb 216.66.22.2 > /dev/null
5 ~; _# {; J/ n4 z. gifconfig tb up- I, k! {0 d0 J9 a: P3 P$ q; L7 E- i3 h
ifconfig tb inet6 add 2001:470:8:4b9::1/643 {7 _5 e ~" O8 m7 I9 s
ifconfig tb mtu 1480
7 f$ z: I0 l Q2 R: r3 S6 u! M. H3 Q- S8 k1 L8 R* |( Q
Debian: route -A inet6 add ::/0 dev tb
; h& P6 p5 Z C! k, N& i# VCentos: ip -6 route add default dev tb
1 J2 K/ u& A/ q. [3 k完成以上工作,你应该就获得IPv6了。
) J I& T( d& f/ B1 ~ping一下ipv6.google.com测试一下,假如ping通,那么你的IPv6就拿到手拉。
& s, f. U( M) F# Cchencp:~# ping6 ipv6.google.com# d" L% x( m% P, L: r
PING ipv6.google.com(iad04s01-in-x68.1e100.net) 56 data bytes
8 j0 E# L, O; j, o2 L64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=1 ttl=59 time=14.9 ms
7 {6 Z1 X+ b6 D& K4 x; J4 W0 J64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=2 ttl=59 time=15.8 ms2 v3 ~. v5 X r2 ?+ f
64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=3 ttl=59 time=15.2 ms
2 O( \2 J6 S( c. y" {) S& c至于你后面用这些IP干什么,就不关我的事情拉。3 {3 a% {& ^! c+ w1 m5 Z! S
假如以后还需要添加IP:
' N1 X9 s6 w* ~* ]: N6 uifconfig tb inet6 add [要添加的IP]/64+ p( x& c% Q9 m P# T* V
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
|