IPV4与IPV6的区别与联系

3 篇文章 1 订阅

引入IPV4

问题:

当公有地址和私有地址使用同一IP地址,那么服务器有可能将公有地址想要的资源错误发送给私有地址,或将私有地址想要的资源错误发送给公有地址。

解决:

使用IPV4对地址进行规划。

原因:

计算机识别的是二进制,而IP地址底层是二进制。平时我们看到的类似192.168.0.1是进制,在计算机中会转换为进制进行识别。


介绍IP地址

IP地址的作用区分地址信息

IP地址的组成网络号+主机号

下面给出三个IP地址:

130.20.11.2

130.20.11.3

130.20.11.4

网络号:IP地址相同的部分为网络号,即130.20.11,代表属于同一网络区域

问题:

同一区域网络可以用网络号识别,不同区域之间怎么实现通信?

解决:

通过路由器来转发-->方式:查看网络号是否是当前区域,不是则将数据转发到对应的网络号代表的区域。

主机号:IP地址不同的部分为主机号,即2,3,4,同一网络区域里的不同地址用主机号来区分

问题:

为什么按顺序(层级)来划分主机号?

解决:

目的:方便管理。

IP地址的划分:

如图1

 图1

注:多与少只是对于这些数字比较而言。


例子:假如分配了一个网络号给一个区域:195.10.10.X(C类地址),那么从195.10.10.0~195.10.10.255,一共有256个主机数可以使用。

问题:

如果需要257个地址数该怎么办?

解决:

分配一个新的C类地址给该区域。

缺点:

浪费了255个地址。

原因:

简单分类导致IP分配不合理

解决:

使用子网掩码


子网掩码的作用划分网络号和主机号

需求:

192.168.0.X(X⊂[0,255]),若某个区域要4个地址,即0,1,2,3

问题:

怎么将这四个地址归为同一个网络

 解决:

子网掩码

如图2:

图2

1.首先将这4个IP地址由十进制转换为二进制

2.因为192.168.0对于这4个IP地址来说是不变的,所以可以锁定前24位二进制数

3.我们将转换后的二进制数里的不变的位数,用二进制里的1表示其不变。

4.对于这4个IP地址,变的是32位里的最后一位比特,因此我们也可以对剩下的六位用二进制1来锁定

5.剩下两位就是该IP地址的主机号了,用0表示对这两位二进制不进行锁定

6.现在将锁定位和不锁定位组合起来转换成十进制,就得到255.255.255.252,这个就是该这4个IP地址的子网掩码

7.CIDR斜线记法可以在IP地址后简单表达子网掩码,用这个例子举例:192.168.0.0/30,表示了前30位是锁定状态,即前面有30个1,后面2位是可变的。规定了将未锁定位从0开始表达子网掩码,当前有2位是可变的,代表了同一区域有2²=4个主机号


例题:

IP地址为192.168.50.10,子网掩码为255.255.192.0,在这里网络号是什么?主机号是什么?

解决:

因为子网掩码前面是255.255,代表前面16位都是锁定了的1,192转换二进制为11000000,也就是前面18位都是不变的1前面18位在二进制中就是网络号剩下的十四位在二进制中就是主机号,而将IP地址的192.168.50.10里的50转换为二进制为00110010,去掉前面的00正好是110010,也就是十进制的50,而去掉00后,加上前面16位,正好对应了是子网掩码中前18位不变的那前18位

所以网络号是:192.168 主机号是50.10


IPV6引入

2019年,欧洲宣布43亿个IPV4地址已分配完毕。这代表已经没有任何一个IPV4地址能分给新制造的电脑了。

其实在2012年,全球IPV6的计划就启动了,截止到2022年,全球已经有79亿人口,IPV6的使用对于网民来说是迫切的。

冷知识:

问题:使用IPV6最多的是哪个国家?

答案:印度,中国排NO.39。


我们先来了解一下IPV4的组成,IPV4地址是由0~255的十进制组成,在计算机二进制中,是有4组8位二进制数组成,一共32位。

核心:计算机底层是二进制,IPV4是二进制,IPV6地址也得由二进制数组成。

如今IPV4地址满了该怎么办?

解决办法:

把32位的比特数增多就可以了,增多到多少?128位

IPV4与IPV6的第一个区别:IPV4-->IPV6

                                            32位      128位


问题:

32位变为128位,如果把IPV6转换成十进制,那么地址会非常不方便书写和计算,该怎么办?

解决:

将IPV6的二进制转换为十六进制

十进制对应的16进制:

如图3:

图3 

十六进制转换二进制表格:

如图4:

图4 

IPV4与IPV6的第二个区别: IPV4:192.168.1.1,用.分割数字;IPV6:2001:0db8:85a3:0042:1000:8a2e:0370:7334,用:分割数字


需求:

对二进制数:0010000000000001转换为十六进制

解决:

1.首先对二进制数进行四位一组分组:0010/0000/0000/0001

2.每4位就是1个十六进制数,转换为十六进制就是2/0/0/1


对一组十六进制数观察:0000:0000:0000:0000:0000:0000:0000:0001

看到这么多的0,会不会很头疼?

IPV6可以对0进行缩写:0:0:0:0:0:0:0:1

遇到连续的0还可以再缩写-->::1

注意!

在IPV6里有这样一个规律:编头不编尾  双冒号(::)只能使用一次,如果从左边开始遇到两组0(0000 0000)),那么就可以使用双冒号,但后面遇到两组0需要写成0:0

需求:对下列IPV6地址进行缩写

2001:8000:0000:0000:0456:0000:0000:0000

解决:

2001:8000::0456:0:0


IPV4与IPV6的相同点与不同点:

如图5:

                                                                          图5

相同点:版本,源地址,目的地址

更名(作用和之前类似,只是换了个名):区分服务——通信量类;总长度——有效载荷长度;TTL——跳数显示;协议——下一个首部

IPV6取消:首部长度、标识、标志、片偏移、首部检验和、可选字段、填充

IPV6新增:流标号

IPV4组成:网络号+主机号  弊端:例如一个IPV4地址227.82.157.176,很难确定网络号和主机号

IPV6组成:前64位是网络号,后64位由主机号改为接口ID,一台主机有一个接口,每个接口有独立的IP地址。

IPV6前64位为网络部分,但64位里又有另外的划分:前48位是互联网服务商给的,自己不能改变剩下的16位是子网公司对每个部分划分子网,然后每个子网再分配接口ID

相同的地方在于:IPV4和IPV6都可以被路由器转发,地址为全球单播地址。

IPV4与IPV6的第三个区别IPV6没有子网掩码!同时,IPV4有ABC类,IPV6没有

为什么?

因为IPV6的地址足够多,子网掩码存在的意义就是在同一片网络下,区分主机,只要地址足够多,就不会有任何问题。

需求:

IPV6地址:2001:0db8:85a3:00042:1000:8a2e:0370:7334/64,区分网络号和接口ID

步骤:

1.先将十六进制转换为二进制。

2.根据/64可以得出,前64位为网络号,后64位为接口ID,并且这个/64是十进制的,而/64前是十六进制的。


IPV4与IPV6的第四个区别

IPV4可以进行单播、组播、广播、任播(未正式支持,可以通过BGP来实现)

IPV6可以进行单播、组播、任播,可以通过组播来实现广播,可以节省带宽,IPV6没有广播,代表IPV6不需要ARP

IPV6类型:

如图6:

                                                                              图6 

其中:

全球单播地址:

类似公有地址,可以被路由器转发,以2,3开头,这个地址规定前3个比特要为001,因此就会有0010(16)-->2(16),0011(2)-->3(10),因此用2,3表示全球单播地址(16进制)。

链路本地地址:

FE80::/10开头,支持IPV6的电脑一定有链路本地地址,用于单个链路上寻址,路由器不转发,不能用ping命令,类似于单机。

环回地址:IPV4与IPV6的第五个区别

IPV4环回地址:127.0.0.1

IPV6环回地址:     ::1/128

未指明地址:

相当于IPV4的0.0.0.0

IPV6的未指明地址:::/128  全0地址

唯一本地地址:

FC00::/7开头类似于IPV4的私有地址

内嵌IPV4:

将IPV4转换为IPV6:以前80位比特都是0的格式内嵌

有人说,IPV6比IPV4更安全,这种说法是不对的,安全只是相对于某个环境或者条件而言,目前不能断定哪一个更安全;虽然IPV4结合CIDR和NAT可以解决大量地址不够的问题,但也不是长久之计,所以还是得通过IPV6来解决分配地址不够的问题。

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

旧时梦浮沉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值