ipv6隧道

http://tb.zju.edu.cn/

浙江大学 IPv6 Tunnel Broker试验



欢迎大家加入Tunnel Broker试验,在开始前,请你首先取消浏览器的代理服务器设置

如果你是第一次访问,请按照下列步骤进行:
1.安装ipv6协议栈
2.用户注册
3.登录并开通隧道
4.测试IPv6连通性
5.访问IPv6网页
6.说明

如果你已注册并开通了隧道服务,可以通过下列链接访问
登录并更改隧道配置
由于隧道资源有限,我们将定期清理一周以上无流量发生的隧道,你可以通过下面的链接重新激活隧道 
登录并重新激活隧道

什么是Tunnel Broker?

http://tb.zju.edu.cn/tech.htm

什么是tunnel broker?

    为保证IPv4能够平稳过渡到IPv6,研究者提出了多种技术方案。主要有双协议栈、隧道技术、NAT-PT等。

    隧道技术提供了一种以现有IPv4路由体系来传递IPv6数据的方法:将IPv6的分组作为无结构意义的数据,封装在IPv4数据报中,被IPv4网络传输。

隧道包括下列类型:
1) 手工配置隧道 ( Configured Tunnel) 
这种隧道的建立是手工配置的,需要隧道两个端点所在网络的管理员协作完成。隧道的端点地址由配置来决定,不需要为站点分配特殊的IPv6地址,适用于经常通信的IPv6站点之间。每一个隧道的封装节点必须保存隧道终点的地址,当一个IPv6包在隧道上传输时终点地址会作为IPv4包的目的地址进行封装。通常封装节点要根据路由信息决定一个包是否要通过隧道转发。 
采用手工配置隧道进行通信的站点之间必须有可用的IPv4 连接,并且至少要具有一个全球唯一的IPv4地址。站点中每个主机都至少需要支持IPv6,路由器需要支持双栈。在隧道要经过NAT设施的情况下这种机制不可用。 
手工配置隧道的主要缺点是网络管理员的负担很重,因为他要为每一条隧道做详细的配置。 

(2) 自动配置的隧道 ( Auto-configured Tunnel ) 
这种隧道的建立和拆除是动态的,它的端点根据分组的目的地址确定,适用于单独的主机之间或不经常通信的站点之间。自动配置的隧道需要站点采用IPv4兼容的IPv6地址,这些站点之间必须有可用的IPv4连接,每个采用这种机制的主机都需要有一个全球唯一的IPv4地址。 
采用这种机制不能解决IPv4地址空间耗尽的问题(采用手工配置隧道的站点就不需要IPv4地址)。另外还有一种危险就是如果把Internet 上全部IPv4路由表包括到IPv6网络中,那么会加剧路由表膨胀的问题。这种隧道的两个端点都必须支持双协议栈(手工配置就不需要)。在隧道要经过NAT设施的情况下这种机制不可用。 

(3) 隧道中介(Tunnel Broker) 
Tunnel Broker不是一种隧道机制,而是一种方便构造隧道的机制。可以简化手工隧道的配置过程,适用于单个主机获取IPv6连接的情况。Tunnel Broker也可用于站点之间,但这时可能会在IPv6的路由表中引入很多条目,导致IPv6的路由表过于庞大,违背了IPv6设计的初衷。用户可以通过Tunnel Broker从支持IPv6的ISP处获得持久的IPv6地址和域名。 Tunnel Broker要求隧道的双方都支持双栈并有可用的IPv4连接,在隧道要经过NAT设施的情况下这种机制不可用。采用TB方法,可以使IPv6 的ISP可以很容易对用户执行接入控制,按照策略对网络资源进行分配。 
TB转换机制包括Tunnel Server(TS)和Tunnel Broker(TB)。server和boker位于不同的计算机上,对于隧道的控制通常是web形式的。 

4)其他方式
包括6to4,ISATAP等

回到首页

 

http://nic.hrbust.edu.cn/ipv6/1/new-page/new-page-3.html

ipv6隧道技术概念

      随着IPv4地址的枯竭,IPv6投入应用是必然的。但是全球大部分网络都还在使用IPv4,所以IPv6到IPv4的过渡必定是渐进的,这是一个相对缓慢的过程,这时就需要使用IPv6隧道技术使IPv4网络与IPv6网络相通。

IPv4与IPv6隧道技术分为3类:

双协议栈(DualStack)隧道封装(Tunneling)协议转换技术(NAT)

IPv6数据包在IPv4中隧道传输是如何工作的:

IPv6数据包在IPv4隧道中传输时,原始包头和有效载荷是不被修改的。仅在IPv6数据包前面插入一个IPv4的包头。这样,里面的包头包含着端到端IPv6会话的源和目的IPv6地址,外面的包头包含着隧道端点的源和目的IPv4地址。隧道的两端要执行IPv6数据包的封装和解封装所以两端的设备必须同时支持IPv4和IPv6。

IPv6数据包的IPv4封装存在的一些问题:

1.隧道的最大传输单元和分段:IPv6的MTU最小值为1280字节,而经过tunnel后又增加了IPv4的包头使得数据包的MTU由1500减少到1480字节所以会造成数据包的分片增加。

2.处理IPv4中的ICMPv4消息的错误:老版本的路由器在出错时仅仅发送ICMPv4的消息,不支持IPv6的报错消息。

3.过滤协议41:协议41是在IPv4包头中协议字段中用于表示6TO4tunnel的专有协议号。1ICMP、2IGMP、6TCP、17UDP、45IRDP、46RSVP、47GRE、88IGRP、89OSPF。

4.网络地址转换NAT:IPv6inIPv4隧道不能穿过一个启用了动态端口转换(pool)和端口重定向模式的NAT(如:N2)。 

IPv6隧道技术

1.配置隧道 

2.隧道代理技术 

3.隧道服务器 

4.采用6TO4

5.GRE隧道 

6.ISATAP站点间隧道自动编址 

7.自动IPv4兼容隧道

一、配置隧道 配置隧道在双栈节点上被静态的配置,在隧道的每一端必须手工配置隧道的IPv4和IPv6地址。 本地IPv4地址:通过这个地址本地双栈节点在IPv4网络上可达。本地IPv4地址用于输出流量的源IPv4地址。 远端IPv4地址:通过这个地址本地双栈节点在IPv4网络上可达。远端IPv4地址用做输出流量的目的IPv4地址。 本地IPv6地:本地分配给隧道接口的IPv6地址。

二、隧道代理 CiscoIOS不支持隧道代理 隧道代理是一个外部系统(服务器)它在IPv4网络中作为服务器,并接受双栈节点的隧道建立请求。

三、隧道服务器 CiscoIOS不支持隧道代理 隧道服务器是隧道代理的简化模型。隧道服务器把代理和双栈路由器结合在一起而不是用两个单独的系统。隧道代理和隧道服务器被认为是不需要手动操作的IPv4路由域的双栈节点中部署隧道的自动操作机制。

四、采用6TO4 IETF(Inter互联网工程任务组)为了简化IPv4网络上配置IPv6隧道技术推出了6to4技术 通过IPv4网络连接IPv6网络,采用6to4机制具有如下特点; 1.自动隧道:在由IPv6节点组成的站点之间动态的采用隧道的方法,不需要手动的事先调整隧道的源和目的IPv4地址。 2.在站点边缘启用:6to4应该在站点边缘的边界路由器上启用,必须通过IPv4路由基础设施到达其他的6to4站点和6to4路由器。 3.自动前缀分配:向每一个6to4站点提供一个可靠的全球单播IPv6前缀(2002::/16)并且要为6to4站点至少分配一个6to4路由器的全球单播IPv4地址,使用IPv4地址和IPv6全球单播地址构成一个全新的IPv6的全球单播地址(2002:ipv4地址::/48)。 4.在IPv4域中,没有IPv6路由传播

五、通过GRE部署IPv6隧道技术 CiscoIOS软件技术支持IPv6数据包的GRE隧道封装。GRE隧道必须在允许通过现有的IPv4基础设施传输IPv6数据包的路由器之间静态配置。默认只有前两个字段,Flag用于表示GRE头部开始,在协议类型中用0X800表示后续是IP

六、ISATAP(IntrasiteAutomaticTunnelAddressProtocol)隧道自动编址 站点间自动隧道寻址技术实在一个广播域中在IPv4地址的基础上传输IPv6数据包的隧道机制,它可以在IPv4网络上创建一个虚拟的IPv6网络。在这个tunnel中不用指目的地址。实际上IPv6地址是根据本地IPv4地址自动生成的。IPv6地址的前缀64位是使用可聚合的全球单播IPv6地址(2001::/16、2002::/16、3ffe::/16)后64位是使用0000:5efe加上32位IPv4地址

七、自动IPv4兼容隧道 Cisco支持自动IPv4兼容隧道机制,但是路由器被看作一个主机,然而相对其他机制自动IPv4兼容隧道机制已经被废除了。 自动IPv4兼容隧道的IPv6地址使用特定的IPv6地址:::/96 如:IPv4206.123.31.200则IPv6::206.123.31.200

 

http://lesca.me/archives/how-to-build-ipv6-tunnel-on-windows.html

清空隧道配置:

netsh interface ipv6 set teredo disable
netsh interface ipv6 6to4 set state disable
netsh interface ipv6 isatap set state disable

Teredo:

可以穿越NAT通过将IPv6数据包封装在UDP中访问IPv6网络
公共Teredo服务器地址列表:

  • teredo.remlab.net / teredo-debian.remlab.net (法国) (Miredo 默认设置)
  • teredo.autotrans.consulintel.com (西班牙)
  • teredo.ipv6.microsoft.com (美国 雷蒙德) (Windows XP/2003/Vista/7/2008 系统默认设置)
  • teredo.ngix.ne.kr (韩国)
  • teredo.managemydedi.com (美国 芝加哥)

设置方法:

netsh interface ipv6 set teredo enterpriseclient teredo.managemydedi.com. 60 34567

检查状态:

netsh interface ipv6 show teredo

Teredo Parameters
---------------------------------------------
Type                    : enterpriseclient
Server Name             : teredo-debian.remlab.net.
Client Refresh Interval : 60 seconds
Client Port             : 34567
State                   : qualified
Client Type             : teredo client
Network                 : managed
NAT                     : symmetric (address)
NAT Special Behaviour   : UPNP: Yes, PortPreserving: Yes
Local Mapping           : 192.168.1.103:34567
External NAT Mapping    : 49.75.31.52:34567

/!\注意:已知Windows系统中应用程序无法通过Teredo接口进行DNS解析

Due to current absence of Teredorelays on the Internet, connections to native IPv6 addresses are unlikely to succeed over the Teredo interface. If WSAConnectByName is called, Windows Vista will not issue AAAA queries when Teredo is the only IPv6 capable interface available. This ensures that native IPv6 addresses are not obtained as a destination and that connections are attempted over IPv4, which has the highest chance of success. In order to obtain IPv6 addresses when Teredo is the only IPv6 capable interface, anapplication must explicitly use the Dns Query API for AAAA records.

ISATAP:

注意:需要PC机具有公网IPv4地址,不支持NAT后的主机访问
目前教育网上大部分高校均提供ISATAP隧道:

  • 上海交通大学isatap.sjtu.edu.cn
  • 北京邮电大学isatap.bupt.edu.cn
  • 清华大学isatap.tsinghua.edu.cn和59.66.4.50
  • 华中科技大学isatap.hust.edu.cn
  • 台湾:tb.ipv6.apol.com.tw
  • 台湾 isatap.ipv6.chttl.com.tw(202.39.142.146)
  • 韩国 isatap.ngix.ne.kr(203.254.38.129)
  • 波兰 isatap.icpnet.pl(62.21.98.6)

设置方法:

netsh interface ipv6 set teredo disable
netsh interface ipv6 6to4 set state disable
netsh interface ipv6 isatap set router isatap.sjtu.edu.cn
netsh interface ipv6 isatap set state enable

6to4:

注意:需要PC机具有公网IPv4地址,不支持NAT后的主机访问
目前教育网上大部分高校均提供6to4隧道:

  • 上海交大 202.112.26.246
  • 北京大学 222.29.159.10
  • 6to4.ipv6.chttl.com.tw(202.39.142.146)
  • infonet.ipv6.ustc.edu.cn(202.38.75.75)
  • kddilab.6to4.jp(202.255.45.5)
  • 6to4.ngix.ne.kr(203.254.38.130)
  • 6to4.ipv6.microsoft.com(131.107.33.60,192.88.99.1)

设置方法:

netsh interface ipv6 6to4 set state enable

References:

 

http://lesca.me/archives/how-to-ping-ipv6-address.html

http://lesca.me/archives/how-to-ping-ipv6-address.html

一、Windows

以下Windows版本的ping命令支持ping IPv6地址:

  • Windows XP with SP1 及以上
  • Windows Vista 及以上
  • Windows Server 2003 及以上

1. ping ipv6主机名

ping -6 ipv6.google.com

/!\注意:当ping ipv6主机名时,必须加上参数-6;直接ping IPv6地址时可以省略。

2. ping ipv6地址

ping IPv6Address[%ZoneID]

例如:

ping 2001:4860:0:2001::68

如果要ping link-local地址,则需要指定网络接口索引(详见《为什么Link-local地址后面要有百分号(%) 》一文),如:

ping fe80::260:97ff:fe02:6ea5%4

其中%4表示“用索引为4的网络接口”ping目标计算机。

二、Linux

在Linux发行版中,使用ping6命令ping IPv6主机或者地址。

1. ping ipv6主机名

ping6 ipv6.google.com

2. ping ipv6地址

ping6 IPv6Address[%InterfaceName]

如果要ping link-local地址,则需要指定网络接口名称(详见《为什么Link-local地址后面要有百分号(%) 》一文),如:

ping fe80::260:97ff:fe02:6ea5%eth0

其中%eth0表示“用网络接口eth0 ping目标计算机”。

posted @ 2012-06-25 16:18  陳聽溪  阅读(711)  评论(0)    收藏  举报