IPv4地址和IPv6地址的比较,IPv6地址及其表示

IPv4地址和IPv6地址的比较,IPv6地址及其表示

TCP/IP协议是互联网发展的基石,其中IP是网络层协议,规范互联网中分组信息的交换和选路。目前采用的IPv4协议地址长度为32位,总数约43亿个IPv4地址已分配殆尽。

IPv6是IP地址的第六版协议,诞生于1999年,其最大的优点就是设计地址长度达128bit,可以提供2的128次方个IP地址,即使将地球上所有沙子都变成晶体管,依然会有足够的IP地址给电子设备使用。近乎无穷的IP地址让IPv6能容得下海量设备,这将与5G等技术一起,支撑移动互联网、物联网、工业互联网、云计算、大数据、人工智能等新兴业态的快速发展。

IPv4地址

IPv4地址和IPv6地址的比较,IPv6地址及其表示

无论你是使用智能手机上网还是使用PC机上网,你的手机或PC机都会被分配一个IP地址,手机或PC机使用这个IP地址与互联网上的其它网元通信。IP地址现在有IPv4和IPv6 两大类,现在使用的绝大多数的IP地址是其中的IPv4地址。

IPv4是 Internet Protocol version 4 的缩写,表示IP协议的第四个版本。现在互联网上绝大多数的通信流量都是以IPv4数据包的格式封装的。IPv4在 IETF publication RFC 791有详细的描述。

IPv4使用32位2进制位的地址,因此IPv4的地址空间是 2^32= 4294967296。最初每一个连接入互联网的用户都要分配使用一个IPv4 地址,因此未分配的IPv4地址越来越少,由此产生了IPv4地址耗尽的问题。为了根本解决IPv4地址耗尽的问题,IPv6应运而生。

IPv4通常用点分十进制记法书写,例如192.168.0.1,其中的数字都是十进制的数字,中间用实心圆点分隔。

一个IPv4地址可以分为网络地址和主机地址两部分,其中网络地址可以使用如下形式描述:192.168.0.0/16,其中斜线后的数字表示网络地址部分的长度是16位,这对应2个字节,即网络地址部分是192.168.0.0。

为了便于对IP地址进行管理, 根据IPv4地址的第一个字节,IPv4地址可以分为以下五类。

A类:0~127

B类:128~191

C类:192~223

D类:224~239,组播地址

E类:240~254,保留为研究测试使用

IPv4地址中有一些地址段有特殊用途,这些地址段及用途的说明如表1所示。

IPv4地址和IPv6地址的比较,IPv6地址及其表示

IPv4特殊用途地址

IPv6 地址及其表示

IPv4地址和IPv6地址的比较,IPv6地址及其表示

Pv6 提供的地址空间非常大,即地址很长–比IPv4 长4 倍。IPv6 地址长128 位。IPv6 没有广播的概念,它使用组播。IPv6 还支持另外两种通信:单播和任意播,其中单播与IPv4 中相同,而任意播是新增的。任意播可将同一个地址分配给多台设备,而向该地址发送数据流时,它会被路由到共享该地址的最近主机。

理解IPv4 地址的结构和用法至关重要,对IPv6 地址来说亦如此。你知道, IPv6 地址长128 位,这比IPv4 地址长得多,因此除了要以新方式使用IPv6地址外, IPv6 地址管理起来也更复杂。但不用担心,这里将解释IPv6 地址的组成部分、如何书写及其众多常见的用法。

IPv6地址示例
在这里插入图片描述
IPv6地址示例

IPv6 地址确实长得多,但除此之外,还有什么不同呢?首先,注意到它包含8组(而不是4 组)数字,且用冒号而不是句点分隔。看,地址中还有字母!与MAC 地址一样,IPv6地址是用十六进制表示的,因此可以这样说:IPV6地址包含8 个用冒号分隔的编组,每组16 位,并用十六进制表示。

注意:使用Web 浏览器连接到IPv6 设备的HTTP 连接时,必须将IPv6 地址用方括号括起。为什么呢?因为冒号已被浏览器用来指定端口号。如果不用方括号将地址括起,浏览器将无法识别地址。

所以必须这样:

http://[2001:0db8:3c4d:0012:0000:0000:1234:S6ab]/index.html

显然,在可能的情况下,你更愿意使用名称来指定目的地(如www.toutiao.com),但必须接受这样的事实:有时候,不得不咬紧牙关,输入地址,虽然这样做无疑很痛苦。显然,实现IPv6 时, DNS也极其重要。

IPv6简化表示

好消息是,书写这些大型地址时,有很多简写方式。其中之一是可省略地址的某些部分,但必须遵守一些规则。首先,可省略各个字段中的前导零。这样做后,前面的示例地址将变成下面这样:

2001:db8:3c4d:12:0:0:1234:56ab

这显然要好得多,至少无需书写所有多余的零了!但对于只包含零的字段,该如何办呢?也可将它们省略,至少是其中的一部分。还是以前面的地址为例,可省略两个只包含零的相邻字段,并用两个冒号替代它们,如下所示:

2001:db8:3c4d:12::1234:56ab

使用两个冒号替代了相连的全零字段。这样做时必须遵守如下规则:只能替换相连的全零字段一次。因此,如果地址中有4 个全零的字段,但它们彼此不相邻,则不能全部替换它们;请记住,这里的规则是只能替换相连的全零字段一次。请看下面的地址:

2001:0000:0000:0012:0000:0000:1234: 56ab

不能将其简化成下面这样:

2001: :12::1234:56ab

相反,最多只能将其简化成这样:

2001::12:0:0:1234:56ab

因为如果替换两次,设备见到该地址后,将无法判断每对冒号代表多少个字段。路由器见到这个错误的地址后,将发出这样的疑问:我是将每对冒号都替换为两个全零字段呢,还是将第一对冒号替换为3 个全零字段,并将第二对冒号替换为1 个全零字段?路由器无法回答这个问题,因为它没有所需的信息。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/555662.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MySQL如何有效的存储IP地址

文章目录序言工具类实现转换数据库函数实现转换一、IP地址应该怎么存二、整数存储 IP 地址的查询性能实验1、测试范围查询:2、IP精确查询:3、整理一下结果发现:总结首先就来阐明一下部分人得反问:为什么要问IP得知怎样存&#xff…

ab753变频器参数怎么拷贝到面板_变频器怎么设置参数?变频器的基本参数设定...

电工学习网:www.diangon.com技术驱动未来,关注电工学习网官方微信公众号“电工电气学习”,收获更多经验知识。变频器在工业生产中应用及其重要,其除了调速,软启动作用外,最重要的是可以节能。变频器功能参数…

卢克增加服务器,DNF卢克跨区服务器崩溃?策划:暗制造者临时加入安图恩攻坚...

原标题:DNF卢克跨区服务器崩溃?策划:暗制造者临时加入安图恩攻坚DNF作为一款即时在线,2d网络游戏,决斗场系统延伸到早期60级版本组队刷图。玩家与玩家之间互动,即时刷图跨区,成为了阿拉德大陆一…

使用TortoiseGit(小乌龟)操作分支的创建

现在的我的github库上面只有一个master分支 由于是穷屌丝用不起mac,所以我windows为例进行相应的演示: 下图就是本地使用小乌龟的版本管理工具在只有一个分支的情况下执行命令:Switch/Checkout 显示的内容。 下面分为三个步骤进行创建分支操…

计算机丢失d3dcompile,电脑d3dcompiler43.dll文件丢失怎么办 文件丢失解决方法

最近有位用户私信给小编,说他在使用电脑的时候,电脑一直弹出丢失d3dcompiler43.dll文件的弹窗。就算是关闭,下次开机依旧会弹出这样的窗口,十分厌烦。那丢失电脑中的d3dcompiler43.dll文件应该怎么办呢?其实也不难&…

python中最难的是什么_Python 最难的问题你猜是什么?

超过十年以上,没有比解释器全局锁(GIL)让Python新手和专家更有挫折感或者更有好奇心。未解决的问题随处都是问题。难度大、耗时多肯定是其中一个问题。仅仅是尝试解决这个问题就会让人惊讶。之前是整个社区的尝试,但现在只是外围的开发人员在努力。对于新…

mybatis plus 导出sql_软件更新丨mybatis-plus 3.0.7 发布,辞旧迎新

点击右上方,关注开源中国OSC头条号,获取最新技术资讯Mybatis-Plus 是一款 Mybatis 动态 SQL 自动注入 Mybatis 增删改查 CRUD 操作中间件, 减少你的开发周期优化动态维护 XML 实体字段,无入侵全方位 ORM 辅助层让您拥有更多时间陪…

文件服务器映驱动,映射驱动程序文件 - Windows drivers | Microsoft Docs

映射驱动程序文件05/13/2020本文内容替换驱动程序文件可能会很困难。 通常,必须启动到 Microsoft Windows 安全生成,替换驱动程序二进制文件,然后重新启动。使用映射文件存在替代方法。 您可以使用此映射方法替换任何内核模式驱动程序 (包括显…

JAVA设计模式——概述

**设计模式(Design pattern)**是一套被反复使用的、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了重用代码、让代码更容易被他人理解、保证代码可靠性。项目中合理地运用设计模式可以完美地解决很多问题。 设计模式的六大原则…

yb3防爆电机型号含义_yb3防爆电机型号含义有哪些?

YB3防爆电机型号中包含了这个系列电机的一些相对信息,每个电机都有其型号系列,将它们的功用功能规格参数进行相应的分隔,防爆电机的的型号系列也可以说是防爆电机的技能综合证,防爆电机有了它的型号系列更能找到它的适用场所。YB3系列的防爆电机的系列含义如下YB3系列防爆电机是…

网站服务器怎么用手机登录不了怎么办,怎么打不开服务器列表了?

2011-04-19网页图片打不开是不是中毒呢?以前网页中没有图片、视频、动画、声音。打开IE选工具/Internet选项/高级/在设置的下拉列表,勾选“播放网页中的动画”“播放网页中的声音”“播放网页中的视频”“显示图片”(也可以直接选择高级中下面的“还原默…

RedisTemplate常用集合使用说明(一)

在这里我使用的是spring-boot框架组合的redisTemplate的jar包spring-boot-starter-data-redis&#xff0c;采用POM的方式引入&#xff0c;引入代码如下: <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent…

idea调试怎么跳出循环_IDEA调试技巧条件断点实现步骤详解

调试的时候&#xff0c;在循环里增加条件判断&#xff0c;可以极大的提高效率&#xff0c;心情也能愉悦。以下介绍下IDEA使用条件【Condition】断点的方法1、编写一段样例代码/*** author jiashubing* since 2017/11/13*/public class Test {public static void main(String[] …

RedisTemplate常用集合使用说明-opsForValue(二)

​ 基础配置介绍已经在前面的《RedisTemplate常用集合使用说明(一)》中已经介绍了&#xff0c;现在我们直接介绍opsForValue()方法的使用&#xff1a; 1、set(K key, V value) ​ 新增一个字符串类型的值,key是键&#xff0c;value是值。 redisTemplate.opsForValue().set(&…

ur机械臂 控制器_OnRobot末端执行器和统一接口已通过UR +计划认证

近日&#xff0c;OnRobot 宣布其One System Solution末端执行器和统一接口现已通过UR 计划认证&#xff0c;UR 计划对夹具等配件进行测试和认证&#xff0c;以便与Universal Robots A / S协作机器人手臂无缝配合使用。OnRobot在9月份发布了全系列的机械手和传感器&#xff0c;具…

xp系统打印机服务器设置,WinXP打印机纸张规格设置的方法

电脑的打印机是我们常常会使用的外部输出设备&#xff0c;虽说经常在用&#xff0c;但是关于它的很多问题还是不会&#xff0c;比如说怎么对打印机纸张规格设置&#xff0c;那么当你遇到这个问题不会的话&#xff0c;那就赶紧看看小编整理的WinXP打印机纸张规格设置的方法吧&am…

RedisTemplate常用集合使用说明-opsForList(三)

​ 基础配置介绍已经在前面的《RedisTemplate常用集合使用说明(一)》中已经介绍了&#xff0c;现在我们直接介绍opsForList()方法的使用&#xff1a; 1、leftPush(K key, V value) 在变量左边添加元素值。 redisTemplate.opsForList().leftPush("list","a&qu…

stm32的语音识别_基于stm32循迹避障语音控制金属探测蓝牙小车设计(原理图+pcb+源码+参考文档)...

功能描述及设计原理&#xff1a;小车具有检测里程功能&#xff0c;在金属探测模式&#xff0c;槽型光耦会检测小车车轮的圈数&#xff0c;以此来计算小车行走的里程&#xff0c;并可以通过OLED屏幕显示出来。还可以显示小车的工作模式以及小车距离前方障碍物的距离。》默认模式…

虚拟磁盘没有可用的合格服务器,VMware提示:没有更多空间可供虚拟磁盘***.vmdk使用 所引发的故障及处理...

Python - - - Pandas基本使用import pandas as pdimport numpy as npdef pandasWork1(): # DataFrame 初始化&#xff0c;与数据的获取one np.array([name0, name1, name2, name3, name4, name5])two list([[...Browser-sync安装与使用browser-sync启动命令Browsersync能让浏…

RedisTemplate常用集合使用说明-opsForHash(四)

基础配置介绍已经在前面的《RedisTemplate常用集合使用说明(一)》中已经介绍了&#xff0c;现在我们直接介绍opsForHash()方法的使用&#xff1a; 1、put(H key, HK hashKey, HV value) 新增hashMap值。 redisTemplate.opsForHash().put("hashValue","map1&q…