IPv6被越来越的人使用,其中前缀在IPv6里是一个很重要的定义,那么什么是IPv6前缀?这个前缀又是什么意思?这个前缀有什么用?网上大多数都是解释的很专业,比较难懂,今天用一篇通俗易懂的文章来讨论一下。

说到IPv6的前缀,需要涉及到二进制、十进制、十六进制、IPv6的规则、子网划分等概念,下面我们一个一个的讨论。

一, 二进制、十进制、十六进制

我们先看下面这个表格,列出了0-15之间16个数字,分别对应的二进制和十六进制。

十进制二进制十六进制
000000
100011
200102
300113
401004
501015
601106
701117
810008
910019
101010a
111011b
121100c
131101d
141110e
151111f

在计算机的世界里,只有二进制存在,也就是说,电脑只认识0和1两个数字,我们看到的、或者我们用键盘输入的所有内容,都会由电脑的cpu转化为二进制,进行计算处理,再由cpu转换成我们能认识的内容。

二进制就是逢二向前进一位,永远只有0和1出现,比如7=111,那么8=1000,就是在111的基础上,再加上1,三位不够了,向前进一位就是1000。

十六进制同样的道理,逢16向前进一位,永远只会出现0-f之间的16个字符。比如十进制的25,用十六进制表示就是:19,这里的1是16,9没有超过15,所以用本身表示,就是16+9=25。每一位十六进制的数字,都可以用4位二进制来表示,比如6,二进制表示0110。

二,IPv6的规则

IPv6由32个十六进制的数字组成,每组4个,用冒号隔开,一共8组。

abcd:1234:5678:90ab:cdef:2822:3fff:bbbb

上面这组就是一个合法的IPv6地址,我们可以看到,都是由16进制的数字组成的。

由上表得知,每一个16进制的数字,可以转换为4位的二进制。

例如:90ab=1001 0000 1010 1011,二进制一共有16位,那么一组IPv6的地址一共就是128位二进制

三,IPv6的前缀

IPv6的数字太多,多到地球上每粒沙子都能分配一个,这么多的ip怎么来划分一块一块的呢、如何区分呢?所以就有了前缀这个概念。

IPv6的前缀就是把IPv6的地址,转换为二进制,从左向右的个数。

例如:fe80::/10

这个/10就是fe80的前缀,我们把fe80转换为二进制,就是:1111 1110 1000 0000,我们从左向右数,十位二进制分别为1111 1110 10,这十位是不能动的,就意味着,前缀是不能动的,固定的,只有后面的118位是可以变动的。那么这个二进制后面就可以写为: 1111 1110 1011 1111 11111 11111 1111 1111.............

综上,fe80::/10的ip范围就是:fe80::----febf:ffff:ffff:ffff:ffff:ffff:ffff:ffff

比如电信给我家里分配的地址为:240e:fc:b841:700::/56 ,其实就是240e:00fc:b841:0700::,粗体字不能变动,粗体后面的都属于我,想一想,这得有多少个IPv6,多的数不完。

1 对 “IPv6前缀是什么?”的想法;

发表评论

电子邮件地址不会被公开。 必填项已用*标注