找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 13608|回复: 2

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

[复制链接]
发表于 2013-4-20 16:09:57 | 显示全部楼层 |阅读模式
默认情况下,VPS商不会给你在OpenVZ启用sit设备(因为需要重新编译内核等等),不用说burst.net这种大公司。没有sit设 备,openvz下除了teredo协议获得IPv6之外,还有一招。
; D" ]8 t6 |4 n1 U8 C7 ^使用tunnelbroker获得完整的/64甚至/48块的IPv6。
6 N, \$ w0 `4 P0 v英文来自:http://code.google.com/p/tb-tun/wiki/HOWTO
7 n+ [% ?! h  ?- H, c我经过测试通过,可行的。0 A* N' [4 B* u* G. x1 y
我把具体的过程写下,貌似还没有看到有人写过。 是俺们国人写的。仰慕一下,顺便研究研究代码。以下步骤在Burst.NET的 VPS跑着Debian5下测试通过,在VPSVilla.ca的CentOS系统的VPS上也测试通过。1 @' f4 u8 w# w% ~
1. 开启TUN设备。这一步需要服务商来弄。在你发ticket给服务商之前,试试以下命令:( r. a+ i4 w) N7 H
mkdir -p /dev/net) v5 l! L! f4 T+ D) w$ H+ J8 S& m; p
mknod /dev/net/tun c 10 200
. d4 E+ A- c$ ]9 \$ \, echmod 600 /dev/net/tun
! t. M+ d$ z) _  ~3 N& I然后运行
4 a+ p, v; Z8 M, ]/ }! v/ N9 ]9 xcat /dev/net/tun( C9 F8 {5 `/ F$ Z* w
假如提示:cat: /dev/net/tun: 文件描述符处于错误状态
1 |5 W5 F) q9 e- M那么应该就是可以使用了的。具体还是发个ticket吧。
8 M8 d) i4 j, t8 }2. 下载tb-tun软件。mkdir tb8 S, k) u) ^+ a7 k8 y. Q
cd tb4 j9 q' {4 h; K- {7 ?" s1 Q  M# \
wget http://tb-tun.googlecode.com/files/tb-tun_r14.tar.gz
  ~9 @# e, n& ctar zxf tb-tun_r14.tar.gz
: M: j' s( v7 z" Z3. 编译tb-tungcc tb_userspace.c -l pthread -o tb_userspace! R8 [1 f5 _  L
4. 创建Tunnelbroker.net账户这一步。我不多说了。到tunnelbroker.net注 册。需要到邮箱获取密码。' H4 ?. p3 X  {4 f
5. 建立IPv6隧道首先在tunnelbroker.net内,左边找到:Create Regular Tunnel& b. h& g9 J4 h3 T. v
进入后:
) p$ {- M# R3 p& u: E
! C9 g% P7 `) m9 _IPv4 Endpoint内填入你的VPS分配到的IP- ~  U, G9 t9 h
然后在下面选择一个离你的服务器较近的Relay Server.
6 r& p( M. e" S) y- K后面略过。假如你创建成功了,那么就会在Main Page里面的Tunnels里面看到你刚刚建立的Tunnel/ Z* K9 x+ k. q+ ^1 ]$ ?
6. 绑定Tunnel这里才是重点。$ h. v9 k; ^- Q0 S! g  T
找到你的tunnel,点进去,你应该看到这样的信息:9 @9 S; a6 t+ C- J( D) a/ U

% ^" l: @% h6 i* H" h- c  p3 b这里记录下重点信息:
) B* e% {" O9 M9 V# eRouted /64就是你被分配的IPv6地址块。你可以从中任意添加IP。例如我这里IP块可以使用:
/ v9 x5 m4 u5 F. N; _: K2001:470:8:4b9::1; {/ H2 H# \, u
2001:470:8:4b9::2
# }; Z, b: e2 ?! E+ A$ o2001:470:8:4b9::3
+ j" `( n2 I. F+ W: B  p* p2001:470:8:4b9:29ad:2812:293a:cafe:1+ S" r5 |# R4 j
等等等等。。(当然,要多少添加多少即可,取之不尽阿)
( T  M6 Y2 B6 B/ C9 R还有一个重要的信息:
' O+ H3 n$ P0 i: W# [Server IPv4 Address。这个是HE的服务器IP,作中转,后面用到。
, O4 G+ s" }' D" Z! `有了这两个信息,就可以开始配置了:
( g8 E4 N4 K1 U0 ]setsid ./tb_userspace tb [Server IPv4 address] > /dev/null, f8 B9 [. c9 v& j' b
ifconfig tb up0 |5 c1 D5 h: r+ q/ N
ifconfig tb inet6 add [你分配的IPv6地址]/64
0 \$ T/ K5 i( o" N* Xifconfig tb mtu 1480
; E# Q9 X6 E7 F( B+ L/ Z- Eroute -A inet6 add ::/0 dev tb
$ j  y% Q  d3 g' Q例如:) O* p8 x" k. m2 O
setsid ./tb_userspace tb 216.66.22.2 > /dev/null
  |# z& k. d8 R8 B* Xifconfig tb up
9 w2 G+ \, S7 I+ Lifconfig tb inet6 add 2001:470:8:4b9::1/64
7 n: T& s5 i0 N5 Yifconfig tb mtu 1480
1 B/ P+ s" E( [+ N5 z  X( Q2 D- e" {; s% [3 f8 C1 @
Debian: route -A inet6 add ::/0 dev tb6 G9 \* O7 U  z
Centos: ip -6 route add default dev tb9 F8 @5 Q* z( J, _. L- Y
完成以上工作,你应该就获得IPv6了。
% l+ n2 h4 j: H* P# Wping一下ipv6.google.com测试一下,假如ping通,那么你的IPv6就拿到手拉。
# K4 C7 T! E) S  j( }chencp:~# ping6 ipv6.google.com# S" R. @& d' S( s/ L
PING ipv6.google.com(iad04s01-in-x68.1e100.net) 56 data bytes( v" W, W+ B* p( N( U, O3 B# r4 n4 f
64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=1 ttl=59 time=14.9  ms
& f; D6 i: J; {0 A  S64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=2 ttl=59 time=15.8  ms2 }2 P5 B+ B5 J  Z) J4 u
64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=3 ttl=59 time=15.2  ms# S6 y; W, ?5 T, l
至于你后面用这些IP干什么,就不关我的事情拉。# F& j3 Q# M" T" @8 H) f9 R
假如以后还需要添加IP:
9 c& y' w( @6 f8 l- W$ Difconfig tb inet6 add [要添加的IP]/64
3 Y8 J2 Y- Q+ U9 Z# m& z) C+ Y$ O

本帖子中包含更多资源

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

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

使用道具 举报

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-5-25 11:04 , Processed in 0.047729 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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