|
|
51CTO旗下网站
|
|
移动端

IP地址和子网掩码的计算

连接在网络中的每一个设备都需要唯一的IP地址,但是由于我们目前主流在使用的IPv4版本的IP 地址其实是不够现在的互联网使用者分的,所以IP地址被分为了公网IP地址和私网IP地址,并且使用了NAT技术来缓解IP不够的问题。

作者:风科技来源:今日头条|2020-07-02 16:14

连接在网络中的每一个设备都需要唯一的IP地址,但是由于我们目前主流在使用的IPv4版本的IP 地址其实是不够现在的互联网使用者分的,所以IP地址被分为了公网IP地址和私网IP地址,并且使用了NAT技术来缓解IP不够的问题。在IP地址和子网掩码中简单了说了WINDOWS系统怎么查看IP地址并且谈到了用子网掩码来判断两个IP地址是不是同一网段来决定数据的转发。

IP地址和子网掩码的计算
私有IP地址段

IP地址是由32位的二进制表示的有层次的地址,也就是32个0和1中间用英文的句号分隔,每8位一组一共四组,但显示一堆的0和1并不容易阅读,于是我们使用了最常用的10进制来表示IP地址,由于8位二进制数最大的十进制是二的8次方等于256,于是每组最大的数就是255(从0开始表示0到255刚好是256个数)所以IP地址最大的取值是255.255.255.255。每个组可以有256个IP地址。比如我们常用的192.168.1.*,最后的*号就可以取值0到255,IP地址配合子网掩码来决定自己哪些是网络位,哪些是主机位,网络号一致的就是同一网段也可以说是同一组,主机位决定整个组里可以容纳多少个主机。

IP地址和子网掩码的计算
默人网络号

子网掩码也是四组用点分隔和IP地址很像,但是他有明确的特征那就是二进制下他的1总是从左边开始连续的,无一例外,对应于子网掩码二进制下的1的就是网络位,0的就是主机位。比如192.168.1.1的默认子网掩码是255.255.255.0转换成二进制就是11111111.11111111.11111111.00000000,根据子网掩码左边连续1的特点,255.0.0.255决不是一个正确的子网掩码。计算的方式就是把IP地址和子网掩码都转换成二进制,然后做与运算,1和1得1,0和0得0,1和0或0和1得0,得到的结果一样就是同一网段,不同就不是。比如192.168.1.1和192.168.1.200在默认的子网掩码255.255.255.0下是不是同一组?

IP地址和子网掩码的计算
255.255.255.0

从以上图看到计算结果是一样的,对应于255.255.255的是网络位,对应于0的则是主机位。如果我们改变子网掩码,那么192.168.1.1和192.168.1.200还是一组的吗?比如子网掩码是255.255.255.128。让我们用以上的方式计算,可以看到结果并不一样,它可以把一个大的地址块划分成小的地址块,这就是子网掩码的作用,子网掩码可以加长1的数量也可以减少1的数量,所以如果想让192.168.1.1和192.168.2.1在同一个网段内,可以通过减少子网掩码二进制1的数量比如255.255.0.0。自己可以算下他们的结果是不是一样的。

IP地址和子网掩码的计算
255.255.255.128

在图片中计算出的192.168.1.0就是网段号,也可以理解成组号或者微信群,里面有成员,那么有多少个成员呢?显然不同的子网掩码不同,对于默认的255.255.255.0来说那就是256,但对于我们改变后的255.255.255.128来说就是128个,因为最大取值是256,减去128得128。那就是128个成员,两个组。他们192.168.1.0到192.168.1.127和192.168.1.128到192.168.1.255。所以255.255.255.192的子网掩码就是256-192=64。每组64个成员一共4组。192.168.1.0到192.168.1.63,192.168.1.64到192.168.1.127,192.168.1.128到192.168.1.191,192.168.1.192到192.168.1.255。

IP地址和子网掩码的计算
IP和子网络掩码

你会发现IP地址通常从1开始,其实二进制下的主机位全0代表着网段号,主机位全1代表着广播号,所以一组里最前面和最后面的都不会分配给主机使用。如果你在WINDOWS系统中给网卡指定IP地址写了192.168.1.0和255.255.255.0是会报错的。因为他的主机位是最后一组全0,所以是网段号不能分配给主机,同样192.168.1.255子网掩码是255.255.255.0也不能分配给主机,因为是广播号。那192.168.1.128和子网掩码255.255.255.128可以分配给电脑不?

IP地址和子网掩码的计算
IP地址

是同一组的成员就直接通讯,如果不是同一组的成员那么就需要网关来向外转发。所以在电脑中当你要访问一个IP地址时,那么首先会经过计算,如果和网卡所有的IP地址的结果一致那就意味着在同一网段,直接可以交给交换机利于二层MAC地址来通讯,如果不同那就需要交给网关来继续向外部转发。这里所说的网关其实也是同一网段的一个IP地址,很多家用路由器的网关都是路由器本身的管理地址。和网卡获取到的IP地址是同一组的可以直接通讯。这样路由器收到不是同网段的地址就通过WAN口发送到了互联网了。如果是目的IP是同网段的,则会发送到对应的LAN口而不会向WAN发送。

【编辑推荐】

  1. 一文看懂IP地址:含义、分类、子网划分、查与改、路由器与IP地址
  2. 从这五个问题,来彻底了解IP地址的计算
  3. 对于IP地址管理系统,我应该知道什么?
  4. 动态地址分配DHCP,IP地址管理方式及分配原则,一分钟了解下
  5. MySQL如何有效的存储IP地址?
【责任编辑:未丽燕 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

订阅专栏+更多

大数据安全运维实战

大数据安全运维实战

CDH+Ambari
共20章 | 大数据陈浩

82人订阅学习

实操案例:Jenkins持续交付和持续部署

实操案例:Jenkins持续交付和持续部署

微服务架构下的自动化部署
共18章 | freshman411

174人订阅学习

思科交换网络安全指南

思科交换网络安全指南

安全才能无忧
共5章 | 思科小牛

104人订阅学习

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊

51CTO服务号

51CTO官微