找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 12928|回复: 2

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

[复制链接]
发表于 2013-4-20 16:09:57 | 显示全部楼层 |阅读模式
默认情况下,VPS商不会给你在OpenVZ启用sit设备(因为需要重新编译内核等等),不用说burst.net这种大公司。没有sit设 备,openvz下除了teredo协议获得IPv6之外,还有一招。
  H% q- N  K; R5 V使用tunnelbroker获得完整的/64甚至/48块的IPv6。
5 _4 ?& z0 u5 g) B英文来自:http://code.google.com/p/tb-tun/wiki/HOWTO4 k/ w9 X2 p* L' i( T
我经过测试通过,可行的。& m! }0 C* A, h0 u) Q3 Q" m
我把具体的过程写下,貌似还没有看到有人写过。 是俺们国人写的。仰慕一下,顺便研究研究代码。以下步骤在Burst.NET的 VPS跑着Debian5下测试通过,在VPSVilla.ca的CentOS系统的VPS上也测试通过。  Y  j' t1 w; n5 h' [
1. 开启TUN设备。这一步需要服务商来弄。在你发ticket给服务商之前,试试以下命令:- E* D3 i" D( ^7 }2 z/ R% A
mkdir -p /dev/net
" b2 z/ Q% i: V3 S" u( Gmknod /dev/net/tun c 10 2003 w+ ]( W3 U& |$ I. f3 Z
chmod 600 /dev/net/tun
- x; p+ z: _( u% {  \然后运行
: h4 A7 y9 q0 a/ ?: f6 V7 ]cat /dev/net/tun
/ C5 p: z4 S4 L6 @  n假如提示:cat: /dev/net/tun: 文件描述符处于错误状态( p, x8 a( Y$ n4 `3 {9 i
那么应该就是可以使用了的。具体还是发个ticket吧。4 m+ X- d% c# s, \" H6 S
2. 下载tb-tun软件。mkdir tb, m* W. z, A; h8 ^% u7 Y, W9 T& c
cd tb
% @8 ?" d- [$ Nwget http://tb-tun.googlecode.com/files/tb-tun_r14.tar.gz
- e( Z& g% J, A. |1 ]- A5 B# Utar zxf tb-tun_r14.tar.gz0 \9 B0 p+ T) v/ v
3. 编译tb-tungcc tb_userspace.c -l pthread -o tb_userspace
6 o+ e% |0 h, V% C/ a; ?0 u4. 创建Tunnelbroker.net账户这一步。我不多说了。到tunnelbroker.net注 册。需要到邮箱获取密码。2 ]( y8 i! m2 W) Y9 z' v+ m$ _( s- j0 s
5. 建立IPv6隧道首先在tunnelbroker.net内,左边找到:Create Regular Tunnel# D8 l) I# [& @% g3 u) a
进入后:
# H( H- v- B  T, {+ ]$ r& t- @+ u6 h3 y8 e9 M8 C* x
IPv4 Endpoint内填入你的VPS分配到的IP
! ~$ t3 C- `+ k7 D1 w) `! ]) H然后在下面选择一个离你的服务器较近的Relay Server.
) n4 ?& C) Z+ T/ H后面略过。假如你创建成功了,那么就会在Main Page里面的Tunnels里面看到你刚刚建立的Tunnel
% Z1 T6 ^, K; W' A# K3 o% g6. 绑定Tunnel这里才是重点。
$ Z; h; G+ l: T. ?找到你的tunnel,点进去,你应该看到这样的信息:6 H' c+ {8 i# U) v
8 L" V- B1 @6 Y" L6 x7 x/ T
这里记录下重点信息:+ t" [' |" q$ ?4 I& f- {
Routed /64就是你被分配的IPv6地址块。你可以从中任意添加IP。例如我这里IP块可以使用:
0 E! W$ \7 `# P8 {2001:470:8:4b9::1
8 b, ^$ V5 E4 l: Z# P2001:470:8:4b9::26 x: _. s+ ]& S8 h' e$ `/ J
2001:470:8:4b9::3
4 f7 e# F) q/ A: t2001:470:8:4b9:29ad:2812:293a:cafe:12 }' ?& Z1 z. Q
等等等等。。(当然,要多少添加多少即可,取之不尽阿)7 |" O7 H" M6 \. v2 M4 ]4 j$ g
还有一个重要的信息:6 h  R/ D! R4 `4 W; _% N3 i
Server IPv4 Address。这个是HE的服务器IP,作中转,后面用到。
$ U5 U1 e1 {. k. Q5 h2 z: i有了这两个信息,就可以开始配置了:
: S2 K4 ?' d# d' `: k0 q  Vsetsid ./tb_userspace tb [Server IPv4 address] > /dev/null
* S' S# E6 a' \. o# mifconfig tb up
: K* Y" o* j& N' Q7 z3 zifconfig tb inet6 add [你分配的IPv6地址]/64
6 T8 l" U4 [/ |3 t, [ifconfig tb mtu 1480
2 m, H$ o$ S' F( ?/ Uroute -A inet6 add ::/0 dev tb0 G+ O1 R9 h* l( s4 a# q% i  I) f
例如:( p/ F3 U$ l. l% B$ n1 l. C
setsid ./tb_userspace tb 216.66.22.2 > /dev/null
! G) P4 F& [3 ]6 Zifconfig tb up4 _7 v% p, G; f& t8 u! S
ifconfig tb inet6 add 2001:470:8:4b9::1/64
$ ]" S) n# r! c3 [& Y) zifconfig tb mtu 1480% L8 e& \' j- k

( @, E( X+ ]) i; yDebian: route -A inet6 add ::/0 dev tb  V6 @3 M$ v/ t2 f/ R
Centos: ip -6 route add default dev tb4 t1 Q3 u! T1 x
完成以上工作,你应该就获得IPv6了。0 M' L8 R6 l$ B7 Q5 l
ping一下ipv6.google.com测试一下,假如ping通,那么你的IPv6就拿到手拉。5 R# j5 p1 M. r
chencp:~# ping6 ipv6.google.com# n, r" l; y6 T9 n, |
PING ipv6.google.com(iad04s01-in-x68.1e100.net) 56 data bytes9 T% K9 w/ H: P. p$ x9 n
64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=1 ttl=59 time=14.9  ms; ]# _- X/ y7 R  m
64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=2 ttl=59 time=15.8  ms
- T. c3 l8 A0 n' u; ^64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=3 ttl=59 time=15.2  ms
4 v6 U9 F# B+ a* F至于你后面用这些IP干什么,就不关我的事情拉。0 _7 U/ r: f" n: A' B
假如以后还需要添加IP:0 m; b9 B8 R6 W  G1 p  ~& u9 f# Q9 ]
ifconfig tb inet6 add [要添加的IP]/64
4 M- ]8 A1 K6 r9 h

本帖子中包含更多资源

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

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

使用道具 举报

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-3-26 07:36 , Processed in 0.081253 second(s), 24 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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