IPv4如何转换为IPv6?
| ipv6已经逐渐在应用,现在已经有很多的运营商支持ipv6,前天我们也发布了如何让电脑使用ipv6地址?有很多朋友在问?ipv6有什么作用,它的表示方式是什么,今天我们来一起来详细了解下ipv6相关计算与转换。 |

我们现在用的是ipv4的地址是32位,例如这样的,59.123.123.123。总数大约有43亿个左右,地球上每个人平均分不了一个,更别说每台电脑了,还要减去内网专用的192、170地址段,就更少了,到现在为止,就更少了。随着科技的进步与物联网的发展,ipv4显然已经满足不了要求了,严重约束了互联网的应用与发展,所以ipv6应运而生。
那什么是ipv6呢?
IPv6是Internet Protocol Version 6的缩写,其中Internet Protocol译为“互联网协议”。IPv6是用于替代现行版本IP协议(IPv4)的下一代IP协议,号称可以为全世界的每一粒沙子编上一个网址。
较之IPv4使用的32位地址,IPv6使用128位地址:
按照地址数的计算方法,我们可以计算出IPv6能够提供的地址数为:
2^128-1个(大约340万亿个)
IPV6地址极为丰富,几乎是取之不尽的,号称地球上的每一粒沙子都能分配到自己的地址,更不用说每台手机、电脑了,连冰箱、洗衣机都能拥有属于自己独一无二的ip地址了,一下子就高大上了不少。
ipv6有什么用,这也是很多朋友在问,其实ipv6的好处还是挺多的。
128位的ipv6拥有大量的ip地址,为将来数十年提供了足够的IP地址,巨大的地址空间为数十亿新设备提供了全球唯一地址,就是老百姓也可以拥有公网ip了,在ipv4时期,由于地址有限,只有企业才能申请公网,我们使用的网络都是私有地址,而ipv6,每个设备都可以拥有公网ip,那么拥有了公网能干啥呢?
作用非常多,比如我们项目监控,可以直接用公网ip地址访问了,就能很好的解决监控中远程控制访问问题,异地监控集中控制也就不用那么麻烦了。
对于企业或个人也可以搭建服务器,使用唯一标识的ipv6地址就可以访问这个服务器了,共享文件极其简单。
可以有更快的速度,这个呢,用专业的话讲,人类无法感受到的微小的速度提升,但毕竟还是快了。
更加安全,以前大家会经常莫名其妙的中木马或者病毒,这个在IPv6里会明显减少。
难以想象,手机、电脑、汽车、电视、空调、机器人、、、都分到了一个独一无二ip后,会是怎样的,物联网发展将会只受想象力的限制。
Linux书籍:https://www.linuxprobe.com/books
IPV6地址的表示采用16进制的表示方法。将128bit分为8组,每组16比特,用4个16进制数表示,各组之间用":"隔开,每组中最前面的0可以省略,但每组必须得有一个数。
格式为 X:X:X:X:X:X:X:X,其中每个X代表16个bit,以十六进制显示,如下面这些:
ip一:ABCD:EF01:2345:6789:ABCD:EF01:2345:6789
ip二:FEDC:BA98:7654:3210:FEDC:BA98:7654:3210
ip三:1080:0:0:0:8:800:200C:417A
在某些情况下,一个IPv6地址中问可能包含很长的一段0,可以把连续的一段0压缩为“::”。但为保证地址解析的唯一性,地址中”::”只能出现一次,例如:
1080:0:0:0:8:800:200C:417A =1080::8:800:200C:417A
FF01:0:0:0:0:0:0:101=FF01::101
FF01:0:0:0:0:0:0:1101 = FF01::1101
0:0:0:0:0:0:0:1 = ::1
0:0:0:0:0:0:0:0 = ::
为了实现IPv4-IPv6互通,IPv4地址会嵌入IPv6地址中,此时地址常表示为:X:X:X:X:X:X:d.d.d.d,
也就是前6组用冒分十六进制表示,后二组用十进制表示,而最后32bit地址则使用IPv4的点分十进制表示,例如::192.168.0.1与就是一个典型的例子 。
上面我们提到了,ipv4地址要与ipv6地址互通,需要将ipv4转换为ipv6地址。
举例:
如果IPv4的一个地址为135.75.43.52,现有32位地址,那么如何转换为ipv6呢?
只需要在ip地址前面6组共96位补充0即可,即
0000:0000:0000:0000:0000:0000:135.75.43.52
也就是::135.75.43.52(内嵌IPv4表示法)
135.75.43.52 按十六进制算出即87.4B.2B.34,
而87.4B.2B.34串地址一组还是8位,所以需要两组v4地址合成v6地址,
再把前96位补零,它可以被转化为
0000:0000:0000:0000:0000:0000:874B:2B34或者::874B:2B34。
补充下:十进制如何转化为16进制?
这里弱电君有必要补充下十进制如何转化为16进制,在ipv6时代,可能会经常需要用到。
方法是:十进制数除以16,反向取余数,除到不能除为止。当然大家听到这个方法可能是一头雾水,我们具体来看下举例计算过程。
例如10进制的ipv4地址:135.75.43.52 ,化成16进制的。
为了方便大家了解原理,具体计算过程可以看下图:
16进制的10、11、12、13、14、15分别用A、B、C、D、E、F来表示。
所以十进制的135.75.43.52 最终得出的是十六进制87.4B.2B.34,转成ipv6就是::874B:2B34。当然也是可以通过工具直接转换。
IPv4如何转换为IPv6?的更多相关文章
- 科普:什么是IPV4?什么是IPV6?
IPv4是Internet Protocol version 4(网际协议版本4)的英文简称,而中文简称为“网协版4”. 目前的全球因特网所采用的协议族是TCP/IP协议族.IP是TCP/IP协议族中 ...
- ipv4转化为ipv6
十進制轉換成十六進位 IPV6為十六進位,所以十進制轉換成十六進位192=c0 168=a8192.168.1.1 轉成 16 進制為 c0.a8.01.01可以使用 Windows 工程版或是程式設 ...
- 【转】非教育网中IPv4网络访问IPv6资源
1. 背景知识 随着个人电脑.移动终端.乃至物联网的不断发展,有很大的IP地址需求.由于IPv4协议设计时没有料到日后网络会如此发达,IPv4网络中的IP数量相对今天的需求来说,显得捉襟见肘.加上IP ...
- 解析IPV4报文 和IPV6 报文的 checksum
解析IPV4报文和IPV6报文的checksum的算法: 校验和(checksum)算法,简单的说就是16位累加的反码运算: 计算函数如下: 我们在计算时是主机字节序,计算的结果封装成IP包时是网络字 ...
- ipv4枯竭和ipv6的启用
IPv4是Internet Protocol version 4的缩写,中文翻译为互联网通信协议(TCP/IP协议)第四版,通常简称为网际协议版本4. IPv4使用32位(4字节)地址,因此地址空间中 ...
- 在linux中设置优先使用ipv4,而不是ipv6
背景: 有时候更新源的时候默认使用ipv6,而ipv6下载数据时候总出现问题. 所有想默认出口的时候优先使用ipv4出口访问,而不是ipv6. 要使用ipv4 连接优先而不必禁用ipv6,需要修改ga ...
- iOS 支持 IPv6
苹果的规定:2016年6月1日提交到App Store必须支持IPv6-only网络. 官方文档:https://developer.apple.com/library/mac/documentati ...
- IPv6原理、应用与实践
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 作者:腾讯微信技术架构部团队 2017年11月26日,中共中央办公厅和国务院办公厅印发了<推荐互联网协议第六版(IPv6)规模部署行动 ...
- IPv6技术详解:基本概念、应用现状、技术实践(下篇)
本文来自微信技术架构部的原创技术分享. 1.前言 在上篇<IPv6技术详解:基本概念.应用现状.技术实践(上篇)>,我们讲解了IPV6的基本概念. 本篇将继续从以下方面展开对IPV6的讲解 ...
随机推荐
- MySQL:实现cumsum(累加)的功能
需求:为实现cumsum累计求和的功能. 一张视图. SELECT 日期, 净利润 FROM daily_pnl_view; 现在希望得到,每天累计的利润是多少. SET @csum := 0;SEL ...
- httpcomponents 发送get post请求
引入的包为: <!-- https://mvnrepository.com/artifact/org.apache.httpcomponents/httpclient --> <de ...
- ubuntu16 安装 qBittorrent ( Linux下BT下载图形工具 )
qBittorrent 是QT编写的一款BT下载软件,支持FreeBSD, Linux, macOS, OS/2, Windows: 官网:https://www.qbittorrent.org/ 在 ...
- [转]JS - Promise使用详解1(基本概念、使用优点)
一.promises相关概念 promises 的概念是由 CommonJS 小组的成员在 Promises/A 规范中提出来的. 1,then()方法介绍 根据 Promise/A 规范,pro ...
- scrapy爬虫案例:用MongoDB保存数据
用Pymongo保存数据 爬取豆瓣电影top250movie.douban.com/top250的电影数据,并保存在MongoDB中. items.py class DoubanspiderItem( ...
- C#实现通过HttpWebRequest发送POST请求实现网站自动登陆
C#实现通过HttpWebRequest发送POST请求实现网站自动登陆 怎样通过HttpWebRequest 发送 POST 请求到一个网页服务器?例如编写个程序实现自动用户登录,自动提交表单数 ...
- Linux命令-nohup和&
基础 在linux终端或控制台上执行命令时,可能不希望脚本占住屏幕需要在后台执行脚本,有几种方法让脚本在后台执行: & 当在前台运行某个作业时,终端被该作业占据:可以在命令后面加上& ...
- Hive、Inceptor数据倾斜详解及解决
一.倾斜造成的原因 正常的数据分布理论上都是倾斜的,就是我们所说的20-80原理:80%的财富集中在20%的人手中, 80%的用户只使用20%的功能 , 20%的用户贡献了80%的访问量. 俗话是,一 ...
- 使用Cloud Toolkit部署SpringBoot项目到服务器
由于我们经常发布项目到测试服,在测试服上调试一些本地无法调试的东西,所以出现了各种打包,然后上传.启动,时间都耗费在这无聊的事情上面了,偶然在网上看到IntelliJ IDEA有 Cloud Tool ...
- Parcel 搭建浏览器自动刷新的 非 SPA项目
重点:parcel index.html 需要引入 index.js 否则不自动刷新