注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

itoedr的it学苑

记录从IT文盲学到专家的历程

 
 
 

日志

 
 

ipv6-ipv4混合组网协议:Teredo与6to4  

2014-01-10 22:32:05|  分类: ipv6应用 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
       Teredo 是一项地址分配和自动隧道技术,能够跨越 IPv4 Internet 实现 IPv6 单播连接。
       在经之前已经有了一种能够通过 IPv4 Internet 实现 IPv6 单播连接的自动隧道技术---- 6to4 。 6to4 路由器使用一个公用的 IPv4 地址来构建 6to4 前缀,起到 IPv6 通告和促进路由器的作用。 6to4 路由器压缩和解压经过站点节点的 IPv6 数据流。
6to4 技术依靠公用 IPv4 地址的配置以及边界设备中采用的 6to4 路由功能。在许多小型办公室/家庭办公室(SOHO)配置中, IPv4 Internet 络地址转换 (NAT) 被广泛使用。
        在大多数 NAT 配置中,提供 NAT 功能的设备并不具备成为 6to4 路由器的功能。即使 NAT 设备普遍支持 6to4 ,还是有一些配置包含多层NAT。在这些多层配置中,支持 6to4 的NAT无法成为路由器,因为它不具备一个公共的 IPv4 地址。
      Teredo 通过在站点内的主机之间实现 IPv6 数据包隧道来解决现今 NAT 设备缺乏 6to4 功能以及多层 NAT 配置问题。相反, 6to4 使用边缘设备之间的隧道。主机之间隧道给 NAT 带来了另外一个问题:IPv4 压缩的 IPv6 数据包发送时协议域的 IPv4 标头设定为41。大多数的 NAT只解析 TCP 或者 UDP 数据流,而且需要通过手动设置来实现对其它协议的解析或者安装负责处理解析的 NAT 编辑器。因为协议41的解析并不是 NAT 的通用功能,所以 IPv4 压缩的 IPv6 通信传输不能通过一般的 NAT。为了使 IPv6 数据传输能够通过单个或多层 NAT, IPv6 数据包必须压缩成 IPv4 UDP 格式的数据,包含 IPv4 和 UDP 标头各一个。UDP 数据普遍能够被 NAT 解析而且能够通过多层 NAT。
总之, Teredo 是一项 IPv6/IPv4 转换技术,能够实现在处于单个或者多个 IPv4 NAT 后的主机之间的 IPv6 自动隧道。来自 Teredo 主机的 IPv6 数据流能够通过 NAT,因为它是以 IPv4 UDP 数据格式发送的。如果 NAT 支持 UDP 端口解析,那么它就支持 Teredo 。但是对称 NAT是一个例外,详细情况在本文的 "NAT 的种类" 中讲解。
Teredo 是作为实现 IPv6 连接最后一种转换技术而设计的,认识到这一点很重要。如果原来的 IPv6 、 6to4 或者ISATAP连接可用,那么主机就不必作为 Teredo 的客户端。现在,越来越多的 IPv4 NAT 经过了升级以便能够支持 6to4 ,而且 IPv6 连接变得越来越普遍, Teredo 将会使用得越来越少,直到最后完全被放弃。

        附:6TO4
         转换策略计划者考虑的关键问题是当使用者对ISP所提供的基本IPv6传输协议还没有合理的选择时,如何激活IPv6路由域间的连通性。当缺少本地IPv6服务时, 提供连通性的解决办法之一是将IPv6的分组封装到IPv4的分组中(6over4隧道技术)。
         6to4是一种自动构造隧道的方式,它的好处在于只需要一个全球惟一的IPv4地址便可使得整个站点获得IPv6的连接。在IPv4 NAT 协议中加入对IPv6和6to4 的支持,是一个很吸引人的过渡方案。
        1.6to4的工作原理
6to4采用特殊的IPv6地址使在IPv4海洋中的IPv6孤岛能相互连接。此时IPv6的出口路由器与 其他的IPv6域建立隧道连接。IPv4隧道的末端可从IPv6域的地址前缀中自动提取,因为站点的IPv4地址包含在IPv6地址前缀中。6to4另一 个让人感兴趣的特点是它可以自动从IPv6 地址的前缀中提取一个IPv4地址。通过这个机制,站点能够配置IPv6而不需要向注册机构申请IPv6地址空间。这同时也简化了ISP提供商的管理工作。可以设想,在一个拥有很多部门的企业里,各部门内部使用私有地址和 NAT技术,利用6to4策略可以建立一个虚拟IPv6外部网。它同样可以重新建立起点到点的IP连接,且允许企业在不同地方的服务器使用IPsec协 议,从而进一步提高了网络的安全性。此外,6to4机制还允许在采用6to4的IPv6站点和纯IPv6站点之间通过中继路由器 ( 6to4 Relay Router )进行通信,这时不要求通信的两个端点之间具有可用的IPv4连接,中继路由器建议运行BGP4+,适应范围更广。
        2.6to4的基本使用方法
6to4机制的简单运用是在没有本地IPv6的 ISP 服务时, 几个IPv4站点需使用IPv6进行交互, 因而每一站点都需要确定一个路由来运行双层协议栈(即IPv4和IPv6兼容)和6to4隧道,以确保这个路由有全球范围的路由地址(非专用IPv4地址空间)。
在运行过程中,当6to4站点内的IPv6主机试图通过域名访问其他6to4站点内的IPv6主机时,均可通过IPv4或IPv6协议实现。访问方主机选择带有6to4前缀的IPv6地址来发送一个信息包至距离最近的路由器,直至到达站点旁的路由器(假定该站点也提供6to4服务)。
      3.6to4路由器的发送接收规则
当请求方站点的6to4路由器发送信息包到另一站点(不在一个子网或一个用户网络中),并且下一个目的地址的前缀包含特殊的6to4 TLA值2002::/16,需使用41类型的IPv4协议将IPv6信息包封装于IPv4信息包内,如转换机制RFC所定义的那样。IPv4源地址包含于请求方站点的6to4前缀内(即6to4路由器的网络外部接口的IPv4地址,它包含于IPv6信息包的6to4前缀内),同时接收方IPv4地址成为下一个IPv6发送包目的地址的6to4前缀。
当接收站点的6to4路由器收到IPv4信息包,且识别出是41类型的IPv4协议时,即进行IPv4安全检测,去除文件头,用IPv6源信息包进行本地传送。
以上的发送规则是对IPv6发送规则所作的惟一修正,因为基本的IPv6转换机制的接收规则早已确定。随着DNS内加载适当个数的6to4前缀,任何站点均可脱离人工隧道配置而相互协作。
       4.返回路径和源地址的选择
可以双向传送的信息包才是有效的。因此当与具有6to4前缀的站点交互时必需在发送的信息包内使用一个6to4前缀作为源地址; 换言之,源地址必须带有6to4前缀。(这个简单例子说明,双方站点仅有IPv4连通性不再是通信障碍,它们可以通过6to4前缀来进行通信)。DNS在搜寻主机名后仅可返回一个IPv6地址,且带有6to4前缀,因此上述源地址的选择不再是个问题。
       5.更为复杂的6to4使用方法
当站点同时拥有6to4连通性和本地IPv6连通性时,会有多种6to4的使用方法。最简单的一种就是当某个站点试 图访问另一个仅有6to4连通性的站点时,上文所提到的源地址的选择算法可确保得到站点的6to4 IPv6地址。在此并不需要选择目的地址,因为只有一个选择:6to4。
同样,当仅拥有6to4连通性的站点试图访问同时拥有6to4和本地IPv6连通性的站点时,在多个目的地址中主机的选择规则决定了6to4地址的选择,因为只有一个本地6to4 IPv6源地址是有效的。
另一特殊情况是当某个拥有6to4和本地IPv6连通性的站点试图访问另一个仅有本地IPv6连通性的站点时,制订一个源地址的选择算法可确保得到站点的本地IPv6地址。在此并不需要选择目的地址,因为只需选择本地IPv6地址即可。
       6.6to4转播
最为复杂的6to4假设情况是仅有6to4连通性的站点和仅有IPV6连通性的站点进行通信。这可通过同时支持6to4和IPv6连通性的6to4转播来实现。事实上,6to4转播就是一个IPv4/IPv6双层栈路由器。
       6to4转播加载路线于IPv6底层组织所附带的2002::/16结构。IPv6网络必须过滤、丢弃任何超过16位的6to4前缀。此外,6to4转播必须加载本地IPv6路由策略允许的6to4连接,其中包括6to4路由器在只支持6to4连接的站点中选择一个BGP4+点对点进程,或是通过一个默认路由到6to4转播。
        因此,当一个只支持6to4转播的站点发送信息包给另一个只支持IPv6的站点时,它会发送一个封装的IPv6信息包给6to4转播,而6to4转播会删去 IPv4头(解封装)并把信息包传给那个只支持IPv6的站点。
        理论上,上述过程可能需要由多个6to4转播来实现,每一个转播分离一个IPv6的路由域。在实际应用中,所有的IPv6 ISP都被连在一起,即使是手动配置的IPv6 ISP也是如此。
  评论这张
 
阅读(184)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017