|
默认情况下,VPS商不会给你在OpenVZ启用sit设备(因为需要重新编译内核等等),不用说burst.net这种大公司。没有sit设 备,openvz下除了teredo协议获得IPv6之外,还有一招。6 n3 l1 v" s2 l& J/ s+ I1 T+ a
使用tunnelbroker获得完整的/64甚至/48块的IPv6。3 m1 F7 \; f) o0 K
英文来自:http://code.google.com/p/tb-tun/wiki/HOWTO
' G2 O6 @! W. F' D4 |9 Y. @我经过测试通过,可行的。4 o4 H& y* f- x* G, p
我把具体的过程写下,貌似还没有看到有人写过。 是俺们国人写的。仰慕一下,顺便研究研究代码。以下步骤在Burst.NET的 VPS跑着Debian5下测试通过,在VPSVilla.ca的CentOS系统的VPS上也测试通过。" ^ p3 h' h$ r k0 l% k9 G
1. 开启TUN设备。这一步需要服务商来弄。在你发ticket给服务商之前,试试以下命令:
3 y4 k, X0 J5 f4 d/ h0 t4 ymkdir -p /dev/net5 X4 j9 s, P5 f i! D
mknod /dev/net/tun c 10 200" U/ J. s: I S, l( f8 @! J
chmod 600 /dev/net/tun
: {. y0 m7 E/ e0 J q然后运行5 g; D7 F+ y) b; o8 `
cat /dev/net/tun
: _; i. X0 G3 I( \: H- T假如提示:cat: /dev/net/tun: 文件描述符处于错误状态
- _, F- U7 J/ ?) E6 x8 s. n那么应该就是可以使用了的。具体还是发个ticket吧。
/ v" U: U$ O8 D3 N( w5 B# F" W/ X2. 下载tb-tun软件。mkdir tb! Q7 G8 J8 T5 ~' q" A) y
cd tb
3 Q7 i* p/ O6 M8 K5 @! qwget http://tb-tun.googlecode.com/files/tb-tun_r14.tar.gz
9 \- A8 i( x# n \$ {1 Qtar zxf tb-tun_r14.tar.gz
! N1 T) q0 W: s/ c3. 编译tb-tungcc tb_userspace.c -l pthread -o tb_userspace
5 Y2 M/ ?% r9 w% u# n* @4. 创建Tunnelbroker.net账户这一步。我不多说了。到tunnelbroker.net注 册。需要到邮箱获取密码。
9 `# K% B6 N, I$ P+ D" g9 M5. 建立IPv6隧道首先在tunnelbroker.net内,左边找到:Create Regular Tunnel
7 Q: k7 t4 k: Z% f" a( _0 z进入后:
0 n# ?$ h% \8 V. Q5 l( h: K9 D2 \
IPv4 Endpoint内填入你的VPS分配到的IP。
2 X, [& z5 g. k3 M8 O$ R然后在下面选择一个离你的服务器较近的Relay Server.
' s/ H% u( ?. a' e后面略过。假如你创建成功了,那么就会在Main Page里面的Tunnels里面看到你刚刚建立的Tunnel
6 W3 w) s7 S3 b2 \) B+ {6. 绑定Tunnel这里才是重点。& w2 { G/ [! o' e# q2 Q
找到你的tunnel,点进去,你应该看到这样的信息:8 k, f3 V$ T: I
" m# B4 w. v. c& J v1 @- }0 h
这里记录下重点信息:/ t2 Q& Q6 |' l( w7 C0 W2 Q
Routed /64就是你被分配的IPv6地址块。你可以从中任意添加IP。例如我这里IP块可以使用:
9 D/ @! O& z- O& H& M2001:470:8:4b9::1
" N! Q" `7 i$ p+ ]! @0 j% ~& @2001:470:8:4b9::2* ^* O* r0 \4 g% w* Y# t, h
2001:470:8:4b9::3
% r! u& B, t1 D$ G- w2001:470:8:4b9:29ad:2812:293a:cafe:1
' S+ _8 h0 G1 b! Y等等等等。。(当然,要多少添加多少即可,取之不尽阿)! ?. j( y! e; n3 a
还有一个重要的信息: i: R' X, n( L+ b4 ~: A. G# \/ c
Server IPv4 Address。这个是HE的服务器IP,作中转,后面用到。9 y" j$ \+ ?% z6 n
有了这两个信息,就可以开始配置了:
% W- W4 P$ |0 Q/ q) w# I4 [setsid ./tb_userspace tb [Server IPv4 address] > /dev/null! r' C; R- x8 e3 y: ^4 l3 h
ifconfig tb up
6 Y+ x- l0 Y- e9 D1 jifconfig tb inet6 add [你分配的IPv6地址]/64
; F) ]/ D" O* p: N% W. }ifconfig tb mtu 1480* t5 \# \) {0 i0 C) b* g
route -A inet6 add ::/0 dev tb
* ?1 S" ^& C% f例如:
+ ^5 U" n1 _. msetsid ./tb_userspace tb 216.66.22.2 > /dev/null) [' s& [, K) O* ]8 X
ifconfig tb up
6 u# T" g9 Q% V# r$ y0 {- w. D9 m, Eifconfig tb inet6 add 2001:470:8:4b9::1/642 h* }' g* t$ S1 ~, Z" o) [
ifconfig tb mtu 1480
' o8 G! r! Q' B* l) G* b7 |0 u) z: \- \! E
Debian: route -A inet6 add ::/0 dev tb! O9 @7 L+ W' W( c
Centos: ip -6 route add default dev tb
# }) ?, z! `; L5 B) B完成以上工作,你应该就获得IPv6了。
5 r9 ~( n: i0 \% Jping一下ipv6.google.com测试一下,假如ping通,那么你的IPv6就拿到手拉。/ _4 n7 ~ [0 J7 g9 F, \
chencp:~# ping6 ipv6.google.com1 p: w! @& }# h& X
PING ipv6.google.com(iad04s01-in-x68.1e100.net) 56 data bytes
$ I; Y, i1 k( k64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=1 ttl=59 time=14.9 ms$ D9 ~3 j0 v P
64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=2 ttl=59 time=15.8 ms4 }5 [* x3 N! q
64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=3 ttl=59 time=15.2 ms. s; {, ^1 n2 z
至于你后面用这些IP干什么,就不关我的事情拉。( C2 N3 k- b C
假如以后还需要添加IP:
: U/ M( q# O1 Y" r Rifconfig tb inet6 add [要添加的IP]/64* p5 t2 d2 w3 o8 _& I
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
|