IPV6介绍

地址资源无限多

通常见到的124.33.24.116这种形式的是ipv4版本的地址,这种地址由32位二进制数表示。

ipv6是一种新的ip地址的表示方式形如fc80::2367:7cff:fed2:abc9,由128位二进制数表示。

以电话号码为例,本来4位数的电话号码就能够一个城市的居民使用,但是随着电话的普及,安装电话的家庭超过了9999户,4位数的电话号码就不够用了。如果改成8位的电话号码,那么就够99999999户居民使用。ipv6和ipv4就类似8位电话号码和4位电话号码的关系,当然对比更夸张。ipv4总量一共42.9亿个,还没有全球人口多,面临使用枯竭问题,尤其是物联网时代的临近,每个家用电器可能都需要一个公网ip。ipv6地址资源可以认为无限多,一种说法是地球上每一粒沙子都有一个地址,另一种说法是地球上每平方米会有1000个ipv6地址,按照保守的说法,每平方米有1000个ip地址,也足够物联网时代万物互联用了。

其它改进

当然除了数量的原因,ipv6还有在安全、路由效率以及流媒体数据方面的改进。

我国现状

我国ipv6网络的使用比例远不如欧美日。因此现在ipv6的普及已经上升到国家战略,各行业信息系统都要经历一次ipv6改造的阶段。

普及推广成本较高

Ipv6改造普及是一个比较长期的过程。特别是对于已有的旧系统,如何兼容很麻烦。因为早期大部分信息系统都是基于ipv4地址来通信的,而ipv4的地址和ipv6的地址无法通信。好比4位电话号码可以给4位电话号码打电话,8位电话号码可以给8位电话号码打电话,但是4位电话号码没法给8位电话号码打电话,8位也没法打通4位。就是说如果两个节点使用ipv6协议通信,节点和节点之间的整个链路必须都支持ipv6才能访问通。只要有一个环节不支持,就和电话线断了一样,是无法通信的。

测试设备是否支持ipv6

如何测试自己的网络环境是否支持ipv6呢?大家首先打开手机浏览器或者打开电脑浏览器,地址输入http://test-ipv6.com。如果你看见的是下面这样,说明你的设备没有分配ipv6地址。

如果是下面这样,说明设备分配了ipv6地址。

有ipv6地址是不是就可以访问ipv6的系统呢?参考我上面的描述,必须全链路都支持ipv6才行。http://IPv6.baidu.com这个地址是ipv6单栈的结构,如果使用ipv4的设备访问它会报错,链路有不支持ipv6的设备也会报错。

我无论用有ipv6地址的设备还是用没有ipv6地址的设备都无法成功访问IPv6.baidu.com。应该就是设备到网站之间的链路的某部分设备不支持ipv6地址导致的吧。可见我国的网络环境对ipv6的支持率比较低,各部分需要较长的时间来升级。如果你的某个设备能访问通IPv6.baidu.com,说明你到这个网站之间的链路设备都支持ipv6,恭喜你可以提前体验浏览ipv6网站的感觉了。

网站ipv6改造

基本步骤

进入ipv6时代后,网站都面临一个由ipv4到ipv6改造的问题。起码的要求是,如果用户使用ipv6设备访问网站,体验应该和使用ipv4设备是一样的。目前很多网站都不支持ipv6访问,都在逐步进行改造。

网站改造的一般步骤:

  1. 排查网络设备、操作系统、web服务器软件、数据库是否支持ipv6。
  2. 对于不支持ipv6的部分,能否通过升级软件版本、更换硬件解决。或者有能替代的支持ipv6的软件。
  3. 排查web应用程序是否支持ipv6。
  4. web应用程序如有不支持ipv6的部分,需要评估是否可以改造。
  5. 如改造不可行,考虑选用同时支持ipv4和ipv6的技术架构,建设新网站,替换现有网站。
  6. 申请网站ipv6外网地址,配置内网ipv6/ipv4双协议网络环境,部署网站系统进行测试。
  7. 测试通过,投产。

这些步骤是可选的,取决于你想改造到说明程度,是局部改造还是彻底改造,要具体分析。

改造技术

对于系统不同程度的改造也相应的诞生了一些改造技术,

  • 双栈
  • 映射
  • 转换
  • 翻译
  • 隧道

这些技术从网站技术架构角度简单的分可以分为两种,

一种是发生了ipv4和ipv6转换。

一种是不发生ipv4和ipv6的转换。

发生转换

发生转换是因为网络入口、网络设备、安全设备、web层、数据库层,至少有一层是不支持ipv6只支持ipv4的。所以在ipv6的请求到达这一层之前要进行ipv6到ipv4的转换。这种转换有专门的硬件设备,价格大概几万元。也可以选择云平台转换,只要支付云平台转换费用,不用自己购买硬件了。

不发生转换

不发生转换就更好理解了,路由器、防火墙、交换机、web应用、数据库、服务器,都是支持ipv6的,这样ipv6的访问来了就在ipv6的协议下传输就行了,和处理ipv4的请求是一样的。这种双栈结构可以都在一套系统上配置,这套系统传输ipv4流量的同时也传输ipv6的流量。也可以在ipv4系统平行的位置搭建一模一样的ipv6系统,这套系统不配ipv4只配ipv6,两套系统各自处理各自的协议请求,有利于运维管理和排查问题,也分散了系统流量的压力。

配置域名

很多网站域名注册和域名服务器都是第三方提供的,配置ipv6域名很简单,在域名服务商提供的管理系统里,加上AAAA记录,记录对应的ip位置写上网站对外的ipv6地址即可生效。

IPV6介绍已经IPV6改造基本步骤的更多相关文章

  1. IPv6介绍

    一.为什么需要IPv6 为了扩大地址空间,拟通过IPv6重新定义地址空间.IPv4采用32位地址长度,只有大约43亿个地址,估计在2005-2010年间将被分配完毕,而IPv6采用128位地址长度,几 ...

  2. IPv6 Rapid Deployment, IPv6 6rd初探

    IPv6 Rapid Deployment: Provide IPv6 Access to Customers over an IPv4-Only Network 原文地址:https://www.c ...

  3. 老毛子 Padavan 路由器固件开启教育网 IPv6 并实现IPv6转发

    老毛子 Padavan 路由器固件开启教育网 IPv6 并实现IPv6转发 文章目录[隐藏] 一.开启opt环境 二.开启 WAN 端 IPv6 三.安装并运行 6relayd 四.开机自动安装并配置 ...

  4. 申请IPV6地址配置IPV6域名

    0. 前言 最近弄了一下IPV6,虽然不知道什么时候会用到,但是服务器支持IPV6,还是有必要的. 1. 申请IPV6地址 https://tunnelbroker.net/ 到这个网址去注册一个帐号 ...

  5. Datax源码改造关键步骤记录

    Datax源码改造关键步骤记录: 一.作业配置1.一个job配置:reader 和writer 的column 字段必须是所有表共有的:2.reader多张表,writer一个表时,所有reader的 ...

  6. ROS+gre over ipv6,在ipv6的基础上建立GRE隧道

    感谢群众大神 @镜花水月全程技术支持.感谢! 环境: 1.阿里云华北5,申请ipv6测试,申请ECS带ipv6公网ip 2.为了便于测试便捷,在vultr创建2.5美元的vps,带ipv6 对了,测试 ...

  7. IPV4 VS IPV6 谈谈省级ipv6的必要性

    11月26日,中办.国办印发了<推进互联网协议第六版(IPv6)规模部署行动计划>,提出国内要在 5~10 年的时间形成下一代互联网自主技术体系和产业生态,建成全球最大规模的 IPv6 商 ...

  8. IPv6 tutorial 4 IPv6 address syntax

    https://4sysops.com/archives/ipv6-tutorial-part-4-ipv6-address-syntax/ Now that you know about the n ...

  9. XMPP适配IPV6 (GCDAsyncSocket适配IPV6)

    苹果公司要求在6月1号之后上架Appstore的应用必须通过ipv6兼容测试. 最近到了八月份,开始发现新上架的app没有通过,查看了下原因,说没有适配IPV6. 首先在本地搭建一个IPV6的测试环境 ...

随机推荐

  1. Java面试题(Redis篇)

    Redis 179.redis 是什么?都有哪些使用场景? Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API. ...

  2. 启动Spring后,连接mysql报错

    连接失败,原因是Mysql服务未启动 解决方法:启动mysql服务 方法一: 以管理员身份运行CMD 输入命令:net start mysql 方法二: 右键计算机-管理-服务和应用程序-服务 右键启 ...

  3. 力扣Leetcode 50. 实现Pow(x, n)

    实现Pow(x, n) 实现 pow(x, n) ,即计算 x 的 n 次幂函数. 示例 1: 输入: 2.00000, 10 输出: 1024.00000 示例 2: 输入: 2.10000, 3 ...

  4. 为什么golang中不存在三元运算符

    三元运算符广泛存在于其他语言中,比如: python: val = trueValue if expr else falseValue javascript: const val = expr ? t ...

  5. 如何使用zabbix监控公网环境的云服务器(从小白到高级技术顾问!!!)

    问题:当我们在本地部署了一台Zabbix服务器后,想要对云上的服务器做监控.但是zabbix一个在内网,云服务器一个在公网,网络环境不同该如何解决?能否检测到云服务器数据? 思路:使用NAT技术,将本 ...

  6. 在centos6.5下搭建lnmp

    1.查看环境: [root@localhost /]# cat /etc/redhat-release CentOS release 6.5 (Final)   2.关掉防火墙(需要到国外地址下载软件 ...

  7. 水仙花数的条件:1.是一个三位数,2.个百千位数字的3次方加起来的和等于当前的三位数。如果,想要完美一点可以在外部加while循环

    #!/usr/bin/env python# -*- coding: utf-8 -*-print("请输入三位数:")num = input()# 定义常量SumNum = 0# ...

  8. C++STL中vector的初始化

    vector的初始化有很多方式,在N维初始化时还会一些容易出现错误的地方.下面进行总结 以下的总结均以int作为模板参数 一维vector的初始化 vector的构造函数通常来说有五种,如下: vec ...

  9. ZT:C/C++ 字符串与数字相互转换

    转载地址:https://www.cnblogs.com/happygirl-zjj/p/4633789.html 一.利用stringstream类 1. 字符串到整数     stringstre ...

  10. String.format与搭配转化符的使用

    String的format语法搭配转化符,在格式化输出方面效果特别好,值得掌握. 例程: System.out.println("----C1---|----C2---|----C3---| ...