在介绍 IPv4 到 IPv6 过渡技术之前,我们先来简单了解一下 IPv4 和 IPv6。什么是 IPv4?IPv4 全称为 Internet Protocol version 4,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,IP 地址是一个 32 位的二进制数,算下来其实也只有 2^32 个地址,这些地址中有分为 A、B、C、D、E 5 类,而比较常用的只有 B 类 和 C 类,这两类地址算起来数量就更加有限,在加上现在互联网迅猛的发展,在 2011 年 2 月 3 日 IANA 中 IPv4 地址池已全部耗尽,这就严重制约了互联网的发展。而对于 IPv6 来说,是用于替代 IPv4 的下一代 IP 协议,IPv6 地址长度是 128 位,长度是 IPv4 地址的 4 倍,IPv6 具体有多少地址呢?IPv6 128 位的地址长度可以提供 3.402823669 × 10³⁸ 个地址,小编的数学不好,算不出来到底有多少,就借用一句话来形容,IPv6 可以为全世界每一粒沙子分配一个地址。这要是分配的是 GirlFriend 那该多好啊,这样工程师就能构建更厉害的技术,小编也能拥有一个 GF 了。

IPv6 VS IPv6

除了充沛的 IP 地址数量,IPv6 相比 IPv4 还有其他诸多的优势。

更快的传输速度

快、更快、非常快,这是现在互联网长期的追求,而 IPv6 是固定报头,不像 IPv4 那样携带一堆冗长的数据,简短的报头提升了网络数据转发的效率。并且由于 IPv6 的路由表更小,聚合能力更强,保证了数据转发的路径更短,极大的提高了转发效率。

更安全的传输方式

安全虽然越来越多的网站正在开启 SSL,但是依旧有大量的网站没有采用 HTTPS 。在 IPv4 协议中并没有强制使用 IPSec加密数据,导致网站明文传输泄漏数据,而 IPv6 则是直接集成了 IPSec,在网络层认证与加密数据,为用户提供端到端的数据安全,保证数据不被劫持。

对移动端更加友好

现在手机等移动设备可以说已经成为许多人不可缺少的一部分了, IPv6 协议可以增强移动终端的移动特性、安全特性、路由特性,同时降低网络部署的难度和投资。

即插即用

同样与 IPv4 相比, IPv6 增加了自动配置以及重配置技术,对于 IP 地址等信息实现自动增删更新配置,提升 IPv6 的易管理性。

IPv4 到 IPv6 的过渡技术

IPv6 在 1992 年被提出,到现在已经二十多年,IPv6 技术的发展已经很成熟,那么 IPv4 能否一下全部切换到 IPv6 呢,答案肯定是否定的。主要因为 IPv6 不是 IPv4 的改进,IPv6 是一个全新的协议,在链路层是不同的网络协议,不能直接进行通信。而且目前几乎都是在使用 IPv4,所以这种转换可能会持续很久。

目前,IETF 已经成立了专门的工作组,研究 IPv4 到 IPv6 的转换问题,并且已提出了很多方案,我们先介绍其中几种。

双栈技术

IPv4 和 IPv6 有功能相近的网络层协议,都是基于相同的硬件平台,同一个主机同时运行 IPv4 和 IPv6 两套协议栈,具有 IPv4/IPv6 双协议栈的结点称为双栈节点,这些结点既可以收发 IPv4 报文,也可以收发 IPv6 报文。它们可以使用 IPv4 与 IPv4 结点互通,也可以直接使用 IPv6 与 IPv6 结点互通。双栈节点同时包含 IPv4 和 IPv6 的网络层,但传输层协议(如 TCP 和 UDP)的使用仍然是单一的。

双栈技术具体有哪些优缺点呢?

优点:

  1. 处理效率高、无信息丢失
  2. 互通性好、网络规划简单
  3. 充分发挥 IPv6 协议的所有优点,更小的路由表、更高的安全性等。
  4. 资源占用多,运维复杂。

缺点:

  1. 无法实现 IPv4 和 IPv6 互通
  2. 对网络设备要求较高,内部网络改造牵扯比较大,周期性相比较较长。

隧道技术

隧道技术指将另外一个协议数据包的报头直接封装在原数据包报头前,从而可以实现在不同协议的网络上直接进行传输,这种机制用来在 IPv4 网络之上连接 IPv6 的站点,站点可以是一台主机,也可以是多个主机。隧道技术将 IPv6 的分组封装到 IPv4 的分组中,或者把 IPv4 的分组封装到 IPv6 的分组中,封装后的 IPv4 分组将通过 IPv4 的路由体系传输或者 IPv6 的分组进行传输。

隧道技术的优缺点则为:

优点:

  1. 无信息丢失
  2. 网络运维相比较简单
  3. 容易实现,只要在隧道的入口和出口进行修改

缺点:

  1. 隧道需要进行封装解封装,转发效率低。
  2. 无法实现 IPv4 和 IPv6 互通
  3. 无法解决 IPv4 短缺问题
  4. NAT 兼容性不好

NAT-PT 技术

NAT-PT 技术附带协议转换器的网络地址转换器。是一种纯 IPv6 节点和 IPv4 节点间的互通方式,所有包括地址、协议在内的转换工作都由网络设备来完成。NAT-PT 包括静态和动态两种,两者都提供一对一的 IPv6 地址和 IPv4 地址的映射,只不过动态 NAT-PT 需要一个 IPv4 的地址池进行动态的地址转换。NAT-PT 技术有个最大的优点就是不需要进行 IPv4、IPv6 节点的升级改造,而缺点也是十分明显的。缺点是 IPv4 节点访问 IPv6 节点的实现方法比较复杂,网络设备进行协议转换、地址转换的处理开销较大一般在其他互通方式无法使用的情况下使用。

总结

无论哪种技术,我们都要从以下几个方面考虑,周期性、成本、技术难度、部署的便捷性。按照目前分析的过渡技术,双栈技术以及隧道技术是相比较易用性更高,也更容易实现。作为国内领先的数据云服务厂商,又拍云在 2016 年便开始投入 IPv6 的建设,为客户提供智能化的 IPv6 服务,无需进行配置修改,即可实现 IPv4 到 IPv6 的网关转换,客户和终端用户能够早一步享受 IPv6 更稳定、快速的网络质量。

 

推荐阅读:

开启 IPv6 新时代,升级后的 IPv6 厉害在哪?​

一文读懂 IPv4 到 IPv6 的过渡技术的更多相关文章

  1. 一文读懂高性能网络编程中的I/O模型

    1.前言 随着互联网的发展,面对海量用户高并发业务,传统的阻塞式的服务端架构模式已经无能为力.本文(和下篇<高性能网络编程(六):一文读懂高性能网络编程中的线程模型>)旨在为大家提供有用的 ...

  2. 从HTTP/0.9到HTTP/2:一文读懂HTTP协议的历史演变和设计思路

    本文原作者阮一峰,作者博客:ruanyifeng.com. 1.引言 HTTP 协议是最重要的互联网基础协议之一,它从最初的仅为浏览网页的目的进化到现在,已经是短连接通信的事实工业标准,最新版本 HT ...

  3. [转帖]从HTTP/0.9到HTTP/2:一文读懂HTTP协议的历史演变和设计思路

    从HTTP/0.9到HTTP/2:一文读懂HTTP协议的历史演变和设计思路   http://www.52im.net/thread-1709-1-2.html     本文原作者阮一峰,作者博客:r ...

  4. 一文读懂HTTP/2及HTTP/3特性

    摘要: 学习 HTTP/2 与 HTTP/3. 前言 HTTP/2 相比于 HTTP/1,可以说是大幅度提高了网页的性能,只需要升级到该协议就可以减少很多之前需要做的性能优化工作,当然兼容问题以及如何 ...

  5. 一文读懂AI简史:当年各国烧钱许下的愿,有些至今仍未实现

    一文读懂AI简史:当年各国烧钱许下的愿,有些至今仍未实现 导读:近日,马云.马化腾.李彦宏等互联网大佬纷纷亮相2018世界人工智能大会,并登台演讲.关于人工智能的现状与未来,他们提出了各自的观点,也引 ...

  6. 一文读懂 深度强化学习算法 A3C (Actor-Critic Algorithm)

    一文读懂 深度强化学习算法 A3C (Actor-Critic Algorithm) 2017-12-25  16:29:19   对于 A3C 算法感觉自己总是一知半解,现将其梳理一下,记录在此,也 ...

  7. [转帖]MerkleDAG全面解析 一文读懂什么是默克尔有向无环图

    MerkleDAG全面解析 一文读懂什么是默克尔有向无环图 2018-08-16 15:58区块链/技术 MerkleDAG作为IPFS的核心数据结构,它融合了Merkle Tree和DAG的优点,今 ...

  8. [转帖]一文读懂 HTTP/2

    一文读懂 HTTP/2 http://support.upyun.com/hc/kb/article/1048799/ 又小拍 • 发表于:2017年05月18日 15:34:45 • 更新于:201 ...

  9. 一文读懂HDMI和VGA接口针脚定义

    一文读懂HDMI和VGA接口针脚定义 摘自:http://www.elecfans.com/yuanqijian/jiekou/20180423666604.html   HDMI概述 HDMI是高清 ...

随机推荐

  1. 【牛客】路径计数机 (树形dp 前缀和)

    题目描述 有一棵n个点的树和两个整数p, q,求满足以下条件的四元组(a, b, c, d)的个数:  1.$1\leq a,b,c,d \leq n$  2.点a到点b的经过的边数为p.  3.点c ...

  2. Centos7 .net core 2.0安装使用

    一.添加dotnet产品Feed sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc sudo sh -c 'ech ...

  3. Spring Transaction 使用入门

    一.开篇陈述 1.1 写文缘由 最近在系统学习spring框架IoC.AOP.Transaction相关的知识点,准备写三篇随笔记录学习过程中的感悟.这是第一篇,记录spring Transactio ...

  4. 创建第一个react项目

    前提:已安装部署好nodejs环境 查看nodejs是否安装以及版本 1,win+r输入cmd打开命令行页面 2,路径换到nodejs目录 3,输入node -v查看版本 创建项目 1,win+r输入 ...

  5. [技术博客]使用CDN加快网站访问速度

    [技术博客]使用CDN加快网站访问速度 2s : most users are willing to wait 10s : the limit for keeping the user's atten ...

  6. Future home of something quite cool.

    我绑定二级域名的时候显示内页如下,怎么办??一级主域名没问题呀~ Future home of something quite cool.If you're the site owner, log i ...

  7. SpringBoot 为API添加统一的异常处理(一)

    首先我把异常分为两种,一种是可控制的,或者是由我们发现条件不正确主动抛出的异常,就像前城市编号不存在那个粟子:另一种是不可控制的,或者说是程序存在bug引起的异常,但这种异常也不想变态的就直接给前端抛 ...

  8. fragment原来的页面切换被重新实例化,无法继续保持上一次的内容。只让它执行一次

    最好的方法是: 定义类.静态变量的方式 保存数据,从这里取. 用网上其他人的方法,fragment切换速度太快会报错 child view 没有从parent view 中移除: 只执行一次,定义一个 ...

  9. Axure8.1.0.3388 授权码

    Licensee:www.jb51.net Key:5eKQiVe0zlGqMijERRp6ancI2jGAxhuejGWvk2oWClywQSB/Mrq72wYhj7D9gAKC

  10. async异步流程控制神器

    async https://www.npmjs.com/package/async Async is a utility module which provides straight-forward, ...