IP 地址大解密,都2024年了,还不会Redis

通过合理设置网络号和主机号,就可以保证在相互连接的网络中,每台主机的IP地址都是唯一的。

有一种DHCP技术,可以自动为网段内新增结点主机分配IP地址。一般的路由器都带有DHCP功能,因此路由器可以看做一个DHCP服务器。

通过将IP地址划分为网络号和主机号来标识,可以有如下特点:

  1. IP地址管理机构在分配IP地址时只分配网络号。剩下的主机号由得到该网络号的单位自行分配,这样就方便了管理就够的管理;

  2. 路由器在寻找目的主机的IP地址时,只需找到目的主机所在的局域网,再在该局域网内寻找目的主机。

  3. 具有不同网络号的局域网必须有路由器进行连接,所以路由器总是有两个或两个以上网络号不同的IP地址

那么该如何划分网络号和主机号呢?

二、IP地址分类

IP地址可以分为五类:A~E类。各类别的网络号和主机号分别对应如下:

各类地址的表示范围是:

A类:0.0.0.0~127.255.255.255

B类:128.0.0.0~191.255.255.255

C类:192.0.0.0~223.255.255.255

D类:224.0.0.0~239.255.255.255

E类:240.0.0.0~247.255.255.255

A类地址的网络号占1个字节,只有7位可以使用。可以指派的A类网络号为126(27-2)个。A类IP地址中网络字段全0表示的是“本网络(A类网络)”的意思,不用于分配给具体的主机。IP地址中网络号全1表示的是本地环回地址,用于测试本主机的进程之间的通信,即网络号为127的IP地址。A类地址的主机号占3个字节,所以一个A类网络中可以连接的最大主机数为:224-2。主机号全0表示该主机连接的单个网络地址(某个A类网络),主机号全1表示该网络中的所有主机。

B类地址的网络号占2个字节,只有14位可以使用。可以指派的B类网络号为214-1(128.0.0.0)不用,最小的网络号为:128.1.0.0。每一个B类网路可以连接的最大主机数为:216-2=65534。(扣除主机号全0和全1的IP地址)。

C类地址的网络号占3个字节,只有21位可以使用。可以指派的C类网络号为221(192.0.0.0不用),最小的网络号为:192.0.1.0。每一个C类主机可以连接的最大主机数为:28-2=254(扣除主机号为全0和全1的IP地址)。

在上述的分类中,存在以下问题:

  1. IP地址空间的利用率降低:一个B类网络中最多可以表示的IP地址为65534个,而某些种类网络由于链路的特点能够连接的结点个数有限,所以就会造成大量的IP地址浪费;由于C类网络能连接的结点个数有限。所以,单位会申请B类网络,但一般又用不了这么多的IP地址,所以会造成IP地址的浪费。同理,A类网络的IP地址也会造成大量的浪费;

  2. 如果给每一个物理网络都分配一个网络号,就会导致路由表过大。此时就会造成路由表的管理成本增加,同时查询的效率也会增加。

  3. 当一个单位申请了一个网络号。他想将该网络能表示的IP地址再分给它下属的几个小单位时。如果在申请新的网络就会造成浪费。

为了解决上述的问题,引入子网划分的概念。

三、子网划分和子网掩码

子网划分

子网划分实际是在将原A类,B类,C类网络中的主机号的部分作为子网号,将原来的ABC类网络细化的过程,将原来的一个网络分为多个网络,但是在对外表现上,还是表现为原来的一个网络。

所以,此时,IP地址组成为:网络号+子网号+主机号。

在数据进行通信的过程中,首先根据目的IP地址找到目标主机所在的网络(路由器),再根据目的IP地址的子网号找到目标主机所在的子网,最后找到目标主机。

比如,一个B类IP地址为:192.168.0.0。先将该网络划分多个子网,假定子网号占用了8位。由于原B类网络中主机号一共占用了16位,子网络拿走8位之后,一个子网中的主机号所占的位数就变成了8位。假定其中一个子网为192.168.5.0。在数据通信时,目的主机为该子网中的IP地址为192.168.5.8的主机。因此,在数据传输过程中,首先会根据目的IP地址找到该主机所在的网络192.168.0.0(其实是找到该网络上的路由器),再通过IP地址找到目的主机所在的子网192.168.5.0。最后在该子网内找到目的主机。

此时,可以将网络号和子网号统一为网络标识。

子网掩码

当数据报到达目的主机所在网络的路由器时,如何将它转发到子网上呢?

为了使目的主机所在网路的路由器能够很方便的找到目的子网,引入“子网掩码”的概念。子网掩码也是一个32位的整数,它是由一串1和一串0构成,1对应于目的主机所在的网络号和子网号,0对应于目的主机所在的主机号。对于没有划分子网的网络号,也有子网掩码,此时子网掩码中的1对应于网络号,0对应于主机号。将网络号和子网号统称为网络号后,子网掩码中的1就对应于网络号,0对应于主机号。

将目的主机的IP地址与子网掩码进行按位与操作,便可以确定目的主机所在的网络号。

如下图:

此时,将目的主机IP与子网掩码按位与之后得到就是该目的主机所在的网络地址IP。在本例中,该子网的主机IP的表示范围是:145.13.3.0~145.13.3.255。能够连接的主机个数为254台(去除主机号为全0和全1的IP地址)。

上述中,子网掩码与主机IP按位与之后得到网络地址,然后主机号由全0到全1即表示该子网的地址范围。

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

img
img

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V:vip1024b 备注Java获取(资料价值较高,非无偿)
img

最后

小编利用空余时间整理了一份《MySQL性能调优手册》,初衷也很简单,就是希望能够帮助到大家,减轻大家的负担和节省时间。

关于这个,给大家看一份学习大纲(PDF)文件,每一个分支里面会有详细的介绍。

image

这里都是以图片形式展示介绍,如要下载原文件以及更多的性能调优笔记(MySQL+Tomcat+JVM)!
《MySQL性能调优手册》,初衷也很简单,就是希望能够帮助到大家,减轻大家的负担和节省时间。

关于这个,给大家看一份学习大纲(PDF)文件,每一个分支里面会有详细的介绍。

[外链图片转存中…(img-kXEXOQjS-1711550857685)]

这里都是以图片形式展示介绍,如要下载原文件以及更多的性能调优笔记(MySQL+Tomcat+JVM)!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值