找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 13823|回复: 2

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

[复制链接]
发表于 2013-4-20 16:09:57 | 显示全部楼层 |阅读模式
默认情况下,VPS商不会给你在OpenVZ启用sit设备(因为需要重新编译内核等等),不用说burst.net这种大公司。没有sit设 备,openvz下除了teredo协议获得IPv6之外,还有一招。
, k; R! a" q. d3 ]# [5 t  P使用tunnelbroker获得完整的/64甚至/48块的IPv6。, l2 `# Z) L) q! G1 e7 U
英文来自:http://code.google.com/p/tb-tun/wiki/HOWTO
+ l5 K% L/ I  y/ H9 K我经过测试通过,可行的。, X: t# `  x  O1 G! D
我把具体的过程写下,貌似还没有看到有人写过。 是俺们国人写的。仰慕一下,顺便研究研究代码。以下步骤在Burst.NET的 VPS跑着Debian5下测试通过,在VPSVilla.ca的CentOS系统的VPS上也测试通过。1 v4 ?; I* I. a4 g7 e# x
1. 开启TUN设备。这一步需要服务商来弄。在你发ticket给服务商之前,试试以下命令:
% x  h- u  f9 {7 n1 pmkdir -p /dev/net
/ p0 W5 E1 B) ]mknod /dev/net/tun c 10 200* {1 k, m5 ^+ t9 K
chmod 600 /dev/net/tun
. i4 [8 d; B5 T- B/ _然后运行
) h& s0 J. Z$ q+ H# qcat /dev/net/tun
- W) u9 ]! I, q8 p假如提示:cat: /dev/net/tun: 文件描述符处于错误状态
9 q' h. B, V" b那么应该就是可以使用了的。具体还是发个ticket吧。
/ X% Y. v# J7 h  A( J; ]# o2. 下载tb-tun软件。mkdir tb" |4 L7 F. ~& g$ }9 m
cd tb) T7 u3 f: {" d, x/ u
wget http://tb-tun.googlecode.com/files/tb-tun_r14.tar.gz9 o6 Z) F8 ^; S! F8 C6 h! D* b
tar zxf tb-tun_r14.tar.gz
3 X, z' Z6 ]& D1 l8 f3. 编译tb-tungcc tb_userspace.c -l pthread -o tb_userspace
) j! Q9 h4 S9 h. f* I6 H! D! o4. 创建Tunnelbroker.net账户这一步。我不多说了。到tunnelbroker.net注 册。需要到邮箱获取密码。. s/ X; }; I. M+ e; ]
5. 建立IPv6隧道首先在tunnelbroker.net内,左边找到:Create Regular Tunnel
7 ]) w! \) \& Y  q9 v进入后:- r& p& ], J8 z8 k

+ _+ g! E: k, j$ b5 M) f8 }IPv4 Endpoint内填入你的VPS分配到的IP  k3 S" H+ i1 k4 a. @
然后在下面选择一个离你的服务器较近的Relay Server.
, @. ~( J! I( F) E8 }$ u2 J, w8 }后面略过。假如你创建成功了,那么就会在Main Page里面的Tunnels里面看到你刚刚建立的Tunnel
9 c/ }) _4 ]& j6. 绑定Tunnel这里才是重点。
7 f; d( R  {" [! R$ A找到你的tunnel,点进去,你应该看到这样的信息:
: O( w# h! Y8 ]7 d# k
2 t  h; W" A. s  \这里记录下重点信息:) O. `0 E  {& O9 Y, j! F
Routed /64就是你被分配的IPv6地址块。你可以从中任意添加IP。例如我这里IP块可以使用:/ C% M1 E* f( D; ~" {
2001:470:8:4b9::1
: S# A% g  s; A% ]2001:470:8:4b9::21 n  z3 T  k8 E: h
2001:470:8:4b9::3" E  o9 w/ u/ K# n- X
2001:470:8:4b9:29ad:2812:293a:cafe:1
7 d7 d4 L: Z3 Z6 T4 ~等等等等。。(当然,要多少添加多少即可,取之不尽阿)
* B* {; j9 ~' l- \/ [还有一个重要的信息:, i1 n0 V9 W# u* O- w
Server IPv4 Address。这个是HE的服务器IP,作中转,后面用到。
; \: H- w8 f3 I5 ~5 n" _有了这两个信息,就可以开始配置了:
% v, W5 W" e6 v; O& Osetsid ./tb_userspace tb [Server IPv4 address] > /dev/null
3 D6 |0 q( }% [! O" Fifconfig tb up
/ _2 q8 a" ?% x' B. y; g# K2 fifconfig tb inet6 add [你分配的IPv6地址]/64
9 w$ S1 d% w) o! V5 C4 l# Iifconfig tb mtu 1480! t, s' E! _3 A/ S
route -A inet6 add ::/0 dev tb" e# k. q  D  F0 I
例如:& k, f9 C0 y: a
setsid ./tb_userspace tb 216.66.22.2 > /dev/null
( d* C6 B+ n" w6 }, o& w9 J& sifconfig tb up: R1 z. V5 U+ M* k" H$ O7 M& s
ifconfig tb inet6 add 2001:470:8:4b9::1/64
) H( |2 w9 k8 X+ e( i2 xifconfig tb mtu 1480
- U9 h2 D% t% `. |! a; a3 E  v7 X4 ?. k  M
Debian: route -A inet6 add ::/0 dev tb- X1 g5 n( p- M+ s
Centos: ip -6 route add default dev tb
0 ~% p: f5 S8 z( g, c完成以上工作,你应该就获得IPv6了。8 u: t7 _! w! L- {
ping一下ipv6.google.com测试一下,假如ping通,那么你的IPv6就拿到手拉。, I2 L' \% X. x
chencp:~# ping6 ipv6.google.com
. N, P( S* J8 w! C3 [PING ipv6.google.com(iad04s01-in-x68.1e100.net) 56 data bytes
. [* }$ B. w/ i# A2 F64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=1 ttl=59 time=14.9  ms
9 q- N5 t/ v) ]! Z2 L64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=2 ttl=59 time=15.8  ms. B, b$ @6 o# H; W) H, D, |( L0 O
64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=3 ttl=59 time=15.2  ms
! f+ }- c9 _1 F$ u# {- {/ F/ q2 N* ~至于你后面用这些IP干什么,就不关我的事情拉。; e6 [+ K. z0 x4 S/ ~# O
假如以后还需要添加IP:( y  F1 m& A  @. I
ifconfig tb inet6 add [要添加的IP]/64
3 z: l/ A9 F! a

本帖子中包含更多资源

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

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

使用道具 举报

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-6-16 09:50 , Processed in 0.070130 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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