一文读懂 IPv4 到 IPv6 的过渡技术
在介绍 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)的使用仍然是单一的。
双栈技术具体有哪些优缺点呢?
优点:
- 处理效率高、无信息丢失
- 互通性好、网络规划简单
- 充分发挥 IPv6 协议的所有优点,更小的路由表、更高的安全性等。
- 资源占用多,运维复杂。
缺点:
- 无法实现 IPv4 和 IPv6 互通
- 对网络设备要求较高,内部网络改造牵扯比较大,周期性相比较较长。
隧道技术
隧道技术指将另外一个协议数据包的报头直接封装在原数据包报头前,从而可以实现在不同协议的网络上直接进行传输,这种机制用来在 IPv4 网络之上连接 IPv6 的站点,站点可以是一台主机,也可以是多个主机。隧道技术将 IPv6 的分组封装到 IPv4 的分组中,或者把 IPv4 的分组封装到 IPv6 的分组中,封装后的 IPv4 分组将通过 IPv4 的路由体系传输或者 IPv6 的分组进行传输。
隧道技术的优缺点则为:
优点:
- 无信息丢失
- 网络运维相比较简单
- 容易实现,只要在隧道的入口和出口进行修改
缺点:
- 隧道需要进行封装解封装,转发效率低。
- 无法实现 IPv4 和 IPv6 互通
- 无法解决 IPv4 短缺问题
- 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 更稳定、快速的网络质量。
推荐阅读:
一文读懂 IPv4 到 IPv6 的过渡技术的更多相关文章
- 一文读懂高性能网络编程中的I/O模型
1.前言 随着互联网的发展,面对海量用户高并发业务,传统的阻塞式的服务端架构模式已经无能为力.本文(和下篇<高性能网络编程(六):一文读懂高性能网络编程中的线程模型>)旨在为大家提供有用的 ...
- 从HTTP/0.9到HTTP/2:一文读懂HTTP协议的历史演变和设计思路
本文原作者阮一峰,作者博客:ruanyifeng.com. 1.引言 HTTP 协议是最重要的互联网基础协议之一,它从最初的仅为浏览网页的目的进化到现在,已经是短连接通信的事实工业标准,最新版本 HT ...
- [转帖]从HTTP/0.9到HTTP/2:一文读懂HTTP协议的历史演变和设计思路
从HTTP/0.9到HTTP/2:一文读懂HTTP协议的历史演变和设计思路 http://www.52im.net/thread-1709-1-2.html 本文原作者阮一峰,作者博客:r ...
- 一文读懂HTTP/2及HTTP/3特性
摘要: 学习 HTTP/2 与 HTTP/3. 前言 HTTP/2 相比于 HTTP/1,可以说是大幅度提高了网页的性能,只需要升级到该协议就可以减少很多之前需要做的性能优化工作,当然兼容问题以及如何 ...
- 一文读懂AI简史:当年各国烧钱许下的愿,有些至今仍未实现
一文读懂AI简史:当年各国烧钱许下的愿,有些至今仍未实现 导读:近日,马云.马化腾.李彦宏等互联网大佬纷纷亮相2018世界人工智能大会,并登台演讲.关于人工智能的现状与未来,他们提出了各自的观点,也引 ...
- 一文读懂 深度强化学习算法 A3C (Actor-Critic Algorithm)
一文读懂 深度强化学习算法 A3C (Actor-Critic Algorithm) 2017-12-25 16:29:19 对于 A3C 算法感觉自己总是一知半解,现将其梳理一下,记录在此,也 ...
- [转帖]MerkleDAG全面解析 一文读懂什么是默克尔有向无环图
MerkleDAG全面解析 一文读懂什么是默克尔有向无环图 2018-08-16 15:58区块链/技术 MerkleDAG作为IPFS的核心数据结构,它融合了Merkle Tree和DAG的优点,今 ...
- [转帖]一文读懂 HTTP/2
一文读懂 HTTP/2 http://support.upyun.com/hc/kb/article/1048799/ 又小拍 • 发表于:2017年05月18日 15:34:45 • 更新于:201 ...
- 一文读懂HDMI和VGA接口针脚定义
一文读懂HDMI和VGA接口针脚定义 摘自:http://www.elecfans.com/yuanqijian/jiekou/20180423666604.html HDMI概述 HDMI是高清 ...
随机推荐
- [Zjoi2006]三色二叉树(bzoj1864)(洛谷2585)题解
原题地址:https://www.luogu.org/problemnew/show/P2585 题目大意:可以把一个节点染成三种颜色,父节点和两个子节点(可以有一个)颜色不能相同.求最多(少)能有多 ...
- P3386 【模板】二分图匹配(匈牙利算法)
题目背景 二分图 题目描述 给定一个二分图,结点个数分别为n,m,边数为e,求二分图最大匹配数 输入输出格式 输入格式: 第一行,n,m,e 第二至e+1行,每行两个正整数u,v,表示u,v有一条连边 ...
- nginx之动静分离(nginx与php不在同一台服务器)
nginx实现动静分离(nginx与php不在同一个服务器) 使用wordpress-5.0.3-zh_CN.tar.gz做实验 Nginx服务器的配置: [root@app ~]# tar xf w ...
- nginx 访问控制之 http_referer
在rewrite时,曾经用过该变量,当时实现了防盗链功能. 其实基于该变量,我们也可以做一些特殊的需求. 示例: 背景:网站被黑挂马,搜索引擎收录的网页是有问题的,当通过搜索引擎点击到网站时,却显示一 ...
- MySQL中自增ID起始值修改方法
在实际测试工作过程中,有时因为生产环境已有历史数据原因,需要测试环境数据id从某个值开始递增,此时,我们需要修改数据库中自增ID起始值,下面以MySQL为例: 表名:users; 建表时添加: ); ...
- Java动态调用脚本语言Groovy
Java动态调用脚本语言Groovy 2019-05-15 目录 0. pom.xml添加依赖1. 使用GroovyShell计算表达式2. 使用GroovyScriptEngine脚本引擎加载Gro ...
- python 虚拟环境指定python版本
virtualenv --no-site-packages -p python3.7 testenv source testenv/bin/activate deactivate 参考:https:/ ...
- 牛顿迭代法(c++)
编写一个用牛顿法解方程x=tanx 的程序,求最接近4.5和7.7的根 #include <iostream> #include <cmath> using namespace ...
- docker时区问题
解决: dockerfile: RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime#update application timezoneR ...
- [Beta阶段]第十一次Scrum Meeting
Scrum Meeting博客目录 [Beta阶段]第十一次Scrum Meeting 基本信息 名称 时间 地点 时长 第十一次Scrum Meeting 19/05/20 大运村寝室6楼 15mi ...