找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 10824|回复: 2

OpenVZ虚拟机里配置tunnelbroker.net的IPv6隧道

[复制链接]
发表于 2013-4-20 16:09:57 | 显示全部楼层 |阅读模式
默认情况下,VPS商不会给你在OpenVZ启用sit设备(因为需要重新编译内核等等),不用说burst.net这种大公司。没有sit设 备,openvz下除了teredo协议获得IPv6之外,还有一招。
4 b' D, E. ^& z7 U8 d使用tunnelbroker获得完整的/64甚至/48块的IPv6。
! _5 A' E6 M$ S0 M; _$ f英文来自:http://code.google.com/p/tb-tun/wiki/HOWTO: n$ }5 K; u# F% L! `# X6 V) b
我经过测试通过,可行的。: K& V" n6 l: g. }( E' e
我把具体的过程写下,貌似还没有看到有人写过。 是俺们国人写的。仰慕一下,顺便研究研究代码。以下步骤在Burst.NET的 VPS跑着Debian5下测试通过,在VPSVilla.ca的CentOS系统的VPS上也测试通过。
0 [5 z! `/ E4 c0 e+ {: E3 B% N2 `1. 开启TUN设备。这一步需要服务商来弄。在你发ticket给服务商之前,试试以下命令:
3 F% y1 w7 l) c8 J6 P$ ^mkdir -p /dev/net- S/ D9 x$ E$ y3 B% H; h
mknod /dev/net/tun c 10 2007 U3 E! q3 E& b0 A2 H; x* _
chmod 600 /dev/net/tun
  }% |* i0 b& s; O然后运行
( w1 k, w1 _! \1 y. k$ R, scat /dev/net/tun6 e/ ?4 M) D7 H& m
假如提示:cat: /dev/net/tun: 文件描述符处于错误状态
+ q1 A: ?( V6 r7 H那么应该就是可以使用了的。具体还是发个ticket吧。
* S9 U5 |, |6 h2. 下载tb-tun软件。mkdir tb7 S/ J) a/ w0 ]* l+ s/ f
cd tb
" j! X& _- B, ]8 ^+ i" |, M9 I! Twget http://tb-tun.googlecode.com/files/tb-tun_r14.tar.gz3 W0 a1 ^0 l7 E8 ?
tar zxf tb-tun_r14.tar.gz5 H: {! b: I4 U* Q/ R
3. 编译tb-tungcc tb_userspace.c -l pthread -o tb_userspace. V" Q# \3 _0 Y' ]- c1 e+ B% m
4. 创建Tunnelbroker.net账户这一步。我不多说了。到tunnelbroker.net注 册。需要到邮箱获取密码。
5 L$ \% o: q3 u- O: _( Y! A5. 建立IPv6隧道首先在tunnelbroker.net内,左边找到:Create Regular Tunnel
+ u  A& i3 J. P$ x进入后:
% L6 D% |; ~5 o: l( @  @; l- O) [" [3 }* ]
IPv4 Endpoint内填入你的VPS分配到的IP. {# z. M- f, P
然后在下面选择一个离你的服务器较近的Relay Server.
% U: [6 b; F" @7 w3 Z! {后面略过。假如你创建成功了,那么就会在Main Page里面的Tunnels里面看到你刚刚建立的Tunnel* F- I) O5 ^  s& ?& l( T7 C* u
6. 绑定Tunnel这里才是重点。. g  w- _7 O. W1 t( S. F
找到你的tunnel,点进去,你应该看到这样的信息:1 Q- ]+ G& J- Q9 M% G# I7 a
/ a- X6 {* i$ W" ]" ^
这里记录下重点信息:
  L' |/ X7 g  l9 l4 N1 hRouted /64就是你被分配的IPv6地址块。你可以从中任意添加IP。例如我这里IP块可以使用:4 F6 S0 I* B7 E) W9 a2 w' X8 ~4 I
2001:470:8:4b9::1
& v4 C4 b" m" ^$ W+ X2001:470:8:4b9::2
4 `! M6 p& X$ I( C" E& r. w2001:470:8:4b9::3$ N! F3 t3 |- N7 d* P
2001:470:8:4b9:29ad:2812:293a:cafe:1
) }! S# _2 N4 J" p等等等等。。(当然,要多少添加多少即可,取之不尽阿)
! _. [3 {! Z" M- @- J; v) A& K8 l还有一个重要的信息:
+ l. t% o2 @0 N2 _: A0 Y1 hServer IPv4 Address。这个是HE的服务器IP,作中转,后面用到。
4 ~8 `" o, F% B: y有了这两个信息,就可以开始配置了:
$ l- N2 b  e) ^2 Y. H9 ysetsid ./tb_userspace tb [Server IPv4 address] > /dev/null5 B3 g( W9 K- r; N
ifconfig tb up1 a6 [0 z$ H! Y, B0 g; V% [
ifconfig tb inet6 add [你分配的IPv6地址]/64. G( `- Z4 D, N( e
ifconfig tb mtu 1480
; S8 N4 D* O0 o# I( Wroute -A inet6 add ::/0 dev tb! ~0 n; K. P% b3 v7 |6 m
例如:
0 c" W9 R' ?; `5 X) x7 ysetsid ./tb_userspace tb 216.66.22.2 > /dev/null, c; b- t' {+ S1 v$ U0 o# s
ifconfig tb up6 a8 @7 f; ^, L- s) i/ z
ifconfig tb inet6 add 2001:470:8:4b9::1/64
: ^/ m. E5 F- G3 f3 A" Iifconfig tb mtu 1480
1 P& m4 X8 k$ C
2 X$ t  J) S& C9 @; [; o; p9 [Debian: route -A inet6 add ::/0 dev tb
5 q% \. l5 h7 }: s7 e2 UCentos: ip -6 route add default dev tb
2 {1 b, a. P. o) i完成以上工作,你应该就获得IPv6了。
  ^& }5 g% S8 P( f4 e- A" Cping一下ipv6.google.com测试一下,假如ping通,那么你的IPv6就拿到手拉。
* @( G+ i- j- g% d$ a4 zchencp:~# ping6 ipv6.google.com7 E3 r- Z" Y/ ?4 i
PING ipv6.google.com(iad04s01-in-x68.1e100.net) 56 data bytes; q9 f) I! Q; {% B* L
64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=1 ttl=59 time=14.9  ms
& f) x( @/ n4 ?64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=2 ttl=59 time=15.8  ms' A0 a0 {. i0 [
64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=3 ttl=59 time=15.2  ms( d2 q- L7 K  V* h* ]# S
至于你后面用这些IP干什么,就不关我的事情拉。% q5 r3 D0 m2 p; ^( s2 i' K
假如以后还需要添加IP:. v1 d- I, ]' n$ ]8 b5 ^) ]
ifconfig tb inet6 add [要添加的IP]/64
( O  u9 S3 M5 k. o

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
 楼主| 发表于 2013-4-20 16:12:34 | 显示全部楼层
本文来自:http://ccp.li
回复

使用道具 举报

发表于 2013-4-25 13:11:02 | 显示全部楼层
看了LZ的帖子,我只想说一句很好很强大!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|第一站论坛 ( 蜀ICP备06004864号-6 )

GMT+8, 2025-7-19 01:41 , Processed in 0.066021 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表