关于 IPv6 你需要知道的 10 件事

关于 IPv6 你需要知道的 10 件事

在过去的几年里,IPv6已经逐渐慢慢地成为主流,但许多IT专业人士在面临IPv6时还手足无措,的确,IPv6和IPv4存在很大的不同,本文为此而写,希望能帮助你消除IPv6恐惧症。

1、IPv6地址是128位十六进制数

IPv4地址是有4个数字位组(总共32位)组成的,IPv6地址的长度时128位,而且是由16进制字符组成的。在IPv4中,每个位组由0-255的十进制数字组成,位组之间由英文的句号隔开,IPv6地址由8个为组组成,每个位组由4个字符的16进制数字组成。

2、很容易识别链路本地单播地址

IPv6为不同的地址类型保留了特殊的地址头,最明显的一个例子就是链路本地单播地址都是以PE80开头的,多播地址都是以FF0x开头,这里的x是一个占位符,可以用数字1-8替换它。

3、支持地址缩写

因为IPv6的地址比较长,往往会包含很多0,如果某个位组的字符全部是0,则这些0可以缩写为一个0,例如,下面的地址:

FE80:CD00:0000:0CDE:1257:0000:211E:729C

可以缩写为

FE80:CD00:0:CDE:1257:0:211E:729C

4、可省略连续的0

如果连续多个位组的字符全部是0,则可以省略掉所有得0,例如,下面的地址:

FE80:CD00:0000:0000:0000:0000:211E:729C

除了可以按第3条介绍的方法缩写外,还可以直接省略掉连续的0,用两个英文冒号代替,操作系统看到这样的IPv6地址后,自然会知道它们之间的字符全是0。因此上面的地址可以简写为

FE80:CD00::211E:729C

5、IPv6的环回地址

在IPv4中,我们知道环回地址是指向本机的一个特殊地址,即我们熟悉的127.0.0.1,IPv6也不例外,同样设计了环回地址,如下:

0000:0000:0000:0000:0000:0000:0000:0001

参考第4条的省略写法,IPv6的环回地址就成了

::1

这看上去是不是不像是一个有效的IP地址啊。

6、不需要传统的子网掩码

在IPv4中,每个IP地址必须要搭配一个子网掩码才能使用,IPv6也使用了子网的概念,但子网ID是直接嵌入到地址中的。在IPv6中,前48 位表示网络前缀,紧接着的16位是子网ID,最后64位才是接口标识,即接口ID或设备ID。如果需要的话,预留给设备ID的位可以借用来表示额外的子网 掩码,但通常是不需要的,因为16位子网和64位设备ID可以提供多达65536个子网。

7、IPv6仍然需要DNS

在IPv4中,主机记录(即A记录)将IP地址映射到主机名,IPv6仍然要使用DNS技术,但IPv6不再使用主机记录,相反,IPv6使用AAAA资源记录,ip6.arpa用于反向主机名的解析。

8、可以跨IPv4网络实现IPv6隧道通信

导致IPv6迟迟得不到有效推进的一个原因就是和IPv4不完全兼容,因此出现了在IPv4网络上走IPv6通信的隧道技术,一个是Teredo, 另一个是6to4,虽然它们的工作方法有点不一样,但基本思想都是将IPv6数据包封装成IPv4数据包进行传输,但通信的两端都需要具有封包和解包的能 力。

9、你可能已经在使用IPv6了

从Windows Vista开始,微软默认就安装了IPv6驱动,并默认启用了IPv6协议,因为这一切都是自动配置的,你可能还不知情,但只有操作系统支持IPv6还不 够,所有交换机和路由器都必须支持,此外,还有一些设计得很差的应用程序将IPv4地址硬编码到程序中了,它们都是阻碍IPv6普及的绊脚石。

10、Windows并没有完整支持IPv6

虽然微软在支持IPv6上表现得很积极,但Windows却并没有完整地支持IPv6,例如,在Windows中,我们以往可以使用UNC(通用命 名约定)访问网络共享文件夹(如//127.0.0.1/C$),但现在却不能使用IPv6这样做,因为Windows看到IPv6地址中的冒号时,它会 把它当做驱动器盘符对待。

为了解决这个问题,微软为IPv6地址转换建立了一个特殊的域,如果你在UNC路径中使用IPv6地址,你必须使用破折号代替冒号,并在地址的末尾 加上.ipv6.literal.net后缀,例如FE80-AB00–200D-617B.ipv6.literal.net。

转自:http://www.oschina.net/bbs/thread/13034

本文是使用
B3log Solo
简约设计の艺术 进行同步发布的

转载于:https://www.cnblogs.com/lanzhi/archive/2010/11/17/6468433.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/110693.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 【CAS】CAS原理「建议收藏」

    【CAS】CAS原理「建议收藏」CAS是所有原子类的底层原理,乐观锁主要采用CAS算法。CAS,比较并交换,是==JDK提供的非阻塞原子性操作,通过硬件保证比较-更新操作的原子性。==通常结合volatile保证共享变量的原子性。

    2022年10月16日
  • lxml中etree.HTML()和etree.tostring()用法[通俗易懂]

    lxml中etree.HTML()和etree.tostring()用法[通俗易懂]fromlxmlimportetreetext=”’<div><ul><liclass="item-0"><ahref=&amp

    2022年10月22日
  • numpy的astype函数

    numpy的astype函数astype函数用于array中数值类型转换

  • GDI 总结三: CImage类使用「建议收藏」

    GDI 总结三: CImage类使用「建议收藏」若对您有所启发欢迎打赏古典小说网致力于打造极致阅读体验首创卡拉OK读书方式首创,桌面大屏幕TXT阅读方式前言CImage类是基于GDI+的,但是这里为什么要讲归于GDI?主要是基于这样的考虑:在GDI+环境中,我们可以直接使用GDI+,没多少必要再使用CImage类…

  • springboot实现ajax跨域请求

    springboot实现ajax跨域请求有段时间没写文章了。看到有人提问ajax跨域请求的问题。博主要再次强调,跨域,就是从不同的的IP端口获取数据,比如说,从www.baidu.com获取数据,就叫跨域!那么localhost:8080与localhost:8081之间呢?也叫跨域。如果处理的不好,就会报错,不仅前端报错,后端也会报错。那么如何解决呢?着急的人,请直接往下看,不急的请听我细细道来,一定能解决您的问题。我再此保证

  • 软件测试中根据测试用例设计的方法,测试用例设计方法有哪些?举例说明[通俗易懂]

    软件测试中根据测试用例设计的方法,测试用例设计方法有哪些?举例说明[通俗易懂]众所周知,测试用例是编制的一组测试输入、执行条件及预期结果,专门为的是某个特殊目标,即测试某个程序路径,或是核实是否满足某个特定的需求。一般来讲,常用的测试用例设计方法有五种,分别是:正交实验法、边界值分析法、等价类划分法、判定表法、错误推测法。当然测试用例的设计方法不止这些,下面只是通过举例说明着重讲讲这常用的五种方法。一、正交实验法用语言描述正交实验法会很抽象难懂,简单说,就是在各因素互相独立…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号