找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 14857|回复: 2

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

[复制链接]
发表于 2013-4-20 16:09:57 | 显示全部楼层 |阅读模式
默认情况下,VPS商不会给你在OpenVZ启用sit设备(因为需要重新编译内核等等),不用说burst.net这种大公司。没有sit设 备,openvz下除了teredo协议获得IPv6之外,还有一招。
9 _, a! E0 i8 E1 u0 {" C" j使用tunnelbroker获得完整的/64甚至/48块的IPv6。' G6 e: G  H4 q$ G! H
英文来自:http://code.google.com/p/tb-tun/wiki/HOWTO
- G' s% d) t% }: n4 P8 A我经过测试通过,可行的。
8 _* N2 m. {9 _* P& C我把具体的过程写下,貌似还没有看到有人写过。 是俺们国人写的。仰慕一下,顺便研究研究代码。以下步骤在Burst.NET的 VPS跑着Debian5下测试通过,在VPSVilla.ca的CentOS系统的VPS上也测试通过。  n6 }% x5 @! Q
1. 开启TUN设备。这一步需要服务商来弄。在你发ticket给服务商之前,试试以下命令:
7 E, c3 E0 u4 x- j& p6 @# Q: zmkdir -p /dev/net. Y! H. M4 B8 A! p3 x; d
mknod /dev/net/tun c 10 2000 `0 X) r. b& a  ~! G6 V0 q
chmod 600 /dev/net/tun
" Y$ G( r) \6 d然后运行' G5 i3 R% L6 A( `
cat /dev/net/tun" X; c, F1 D. _6 R" f* ]4 d1 i
假如提示:cat: /dev/net/tun: 文件描述符处于错误状态
! U4 i+ l* u8 F) f那么应该就是可以使用了的。具体还是发个ticket吧。/ V$ }( E( u8 s/ F- K) I
2. 下载tb-tun软件。mkdir tb
& K% p. g! B# g  Q  S& U- p3 S# Scd tb4 N* P8 t0 p1 f9 c& `8 a+ M& N1 i9 R: H
wget http://tb-tun.googlecode.com/files/tb-tun_r14.tar.gz% b8 T+ Z5 i" o7 J' z6 b: ~3 e
tar zxf tb-tun_r14.tar.gz  g4 Q& b$ O$ Z4 r: p6 A4 v
3. 编译tb-tungcc tb_userspace.c -l pthread -o tb_userspace
, A2 m* [8 X. ]- m  r* G* _5 l" y4. 创建Tunnelbroker.net账户这一步。我不多说了。到tunnelbroker.net注 册。需要到邮箱获取密码。& d) N$ e) `+ F$ E
5. 建立IPv6隧道首先在tunnelbroker.net内,左边找到:Create Regular Tunnel
7 g7 _5 F+ s. b4 D2 @8 O8 j进入后:
# |: l# r0 s6 Y& {  L
7 g  K& K5 P. P% ]: J# NIPv4 Endpoint内填入你的VPS分配到的IP。
8 O* Z) i9 t3 C# G+ ^, T' b3 G然后在下面选择一个离你的服务器较近的Relay Server.
& }: k" H0 J% U8 I! ?6 d: K后面略过。假如你创建成功了,那么就会在Main Page里面的Tunnels里面看到你刚刚建立的Tunnel
; \7 G- e' h. s) }" I) F% S" A3 i0 g- v6. 绑定Tunnel这里才是重点。" L+ G% ~& D) {" h. I$ {0 C
找到你的tunnel,点进去,你应该看到这样的信息:
, |1 h1 ~( M5 S$ ]" N
# C, q5 m  w- U" L2 c这里记录下重点信息:
( U/ l! i3 S9 A# ]5 nRouted /64就是你被分配的IPv6地址块。你可以从中任意添加IP。例如我这里IP块可以使用:
- l7 v8 o: B( |; l) P2 `8 g2001:470:8:4b9::1
4 e3 K* K3 ?% m$ z8 v2001:470:8:4b9::2
- H$ X* Y6 Y; s( i/ B* T4 D; J( b2001:470:8:4b9::3' z4 d$ t7 |, K) }/ S
2001:470:8:4b9:29ad:2812:293a:cafe:1
6 d% `* V4 w3 P& M- K6 g等等等等。。(当然,要多少添加多少即可,取之不尽阿)6 x  Q8 F' l+ S3 V) u+ m1 M
还有一个重要的信息:3 A! y2 z! o. U0 m
Server IPv4 Address。这个是HE的服务器IP,作中转,后面用到。1 W( m& m3 b' m: s0 Z& b8 d0 u
有了这两个信息,就可以开始配置了:; e- O  _  n6 }% U2 B
setsid ./tb_userspace tb [Server IPv4 address] > /dev/null
: Y6 B% D) n) r7 y! L. Y1 ]& |ifconfig tb up9 x+ i( D0 w5 m. B4 s' [
ifconfig tb inet6 add [你分配的IPv6地址]/64
# [' G" n( n1 |, e, S8 r1 ?+ ]3 }ifconfig tb mtu 1480
- B* m8 A/ y) U4 ~# z& Froute -A inet6 add ::/0 dev tb
' z; D4 b. {. [/ I例如:
! F! Q1 e. c- esetsid ./tb_userspace tb 216.66.22.2 > /dev/null
* T  c4 C! c! Mifconfig tb up5 X1 S  Y& y2 F
ifconfig tb inet6 add 2001:470:8:4b9::1/648 m0 B( ]0 C. a+ x. ^: w3 u: d
ifconfig tb mtu 1480, V' s7 O8 z0 }; d
& T: y2 W7 q- ?) }# Z* }8 \# c3 F. N
Debian: route -A inet6 add ::/0 dev tb
/ `' r+ a7 `2 I- _Centos: ip -6 route add default dev tb
7 }7 |  }& `3 Q* }* F完成以上工作,你应该就获得IPv6了。7 J  n3 I1 A% G4 c6 D
ping一下ipv6.google.com测试一下,假如ping通,那么你的IPv6就拿到手拉。
/ z0 j" Q7 s" o7 y. M/ hchencp:~# ping6 ipv6.google.com
" p/ c0 e3 c. s/ i9 m8 H& ePING ipv6.google.com(iad04s01-in-x68.1e100.net) 56 data bytes* c- O/ j3 o) [, R: ~6 |
64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=1 ttl=59 time=14.9  ms
  m; K: f; R& P" b6 K! B8 T64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=2 ttl=59 time=15.8  ms
7 A( Y& u! m) f+ J2 N; D8 M64 bytes from iad04s01-in-x68.1e100.net: icmp_seq=3 ttl=59 time=15.2  ms
3 V- V5 o7 \% v. p至于你后面用这些IP干什么,就不关我的事情拉。
' m( o- k# \, u, c1 B( F假如以后还需要添加IP:% P* \- o0 r5 M+ j7 @
ifconfig tb inet6 add [要添加的IP]/64. x# S+ L* v+ t  S, ]* t

本帖子中包含更多资源

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

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

使用道具 举报

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-9-29 21:33 , Processed in 0.071464 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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