【网络基础】通俗易懂的搞明白什么是子网掩码(大白话版)

目录

  • 前言
  • 什么是子网掩码
    • 子网
    • 如何判断是否在同一个子网
    • 子网掩码的功能总结
    • 子网掩码的分类
      • 可变长子网掩码
  • 总结

前言

本次的文章内容均为个人在网络上搜罗知识点并梳理而来,尽量用浅显易懂的方式讲解,但不会讲的很深入,因为只想给刚入行的人理解什么是子网掩码。会不定期的“修缮”文章内容,也欢迎大家指出错误和提出补充。

v-1.1版本

建议看这篇文章之前先了解以下什么是IP地址 ↓

【网络基础】通俗易懂的搞明白什么是IP地址(小白向)


什么是子网掩码

前篇文章的最后我们提到IP地址用过去A-E的分类去划分网络位和主机位,会照成很多资源的浪费,利用效率低下,需要采用新的划分规则,这就是子网掩码诞生的原因之一(注意A-E的分类方式还保留)。

IP地址本身不再记录划分信息,而是通过独立于IP地址的另一串数字来辅组记录,这就是子网掩码。

这串数字也是32位的二进制数,但表示的时候也是通过十进制数展示。比如

11111111 11111111 11111111 00000000  // 连续的1代表网络位,连续的0代表主机位
// 转换
255.255.255.0

转换后的前三组的255就表示一个ip地址中前三组数是网络号,而后一组的0表示一个ip地址中后一组是主机号。比如:

IP192.168.33.112  
子网掩码:255.255.255.0

说明192.168.33是网络位,112 是主机位。这就子网掩码的功能之一。

子网掩码还可以来划分子网!

子网

大致的了解一下什么是子网,其实我们可以简单的理解成在一个局域网中。比如两台笔记本电脑连接同一个wifi,那么他们就在同一个子网中或者说是同一个局域网中,就算路由器连接外网的网线断了,两台电脑之间也能相互通信。

子网的划分需要靠子网掩码来规定。

如何判断是否在同一个子网

前面提到子网的划分需要靠子网掩码来规定,怎么判断两台设备是否在同一个子网呢。假如我们有一台A笔记本,一台B笔记本,连接的是同一个wifi,通过查询我们得知:

A笔记本:
IP:192.168.33.112 | 子网掩码:255.255.255.0
B笔记本:
IP:192.168.33.223 | 子网掩码:255.255.255.0

通过IP地址的二进制格式与子网掩码的二进制格式进行and运算,相等,说明处于同一个子网,可以直接通信;

来来来,我们来算下:

// A
11000000 10101000 00100001 01110000 // IP
11111111 11111111 11111111 00000000 // 子网掩码
// and运算理解位为乘就可以了,两者每一位都相乘得
11000000 10101000 00100001 00000000
// 转成十进制为
192.168.33.0

// 同理B运算完后为
192.168.33.0

A和B笔记本的运算结果相等,说明在同一个子网。

子网掩码的功能总结

通过以上的讲述,我们知道了子网掩码有两个功能

  1. 将一个IP地址划分为网络位和主机位
  2. 判断两个设备是否在同一个子网

子网掩码的分类

Ip地址分类对应的默认子网掩码分为

  • A类:255.0.0.0
  • B类:255.255.0.0
  • C类:255.255.255.0

当然,比之前灵活的地方在于每一类还可以继续划分子网,被称为可变长子网掩码

可变长子网掩码

同过网络位扩展占用主机位,就可继续划分子网,比如C类中,我想再划分出4个子网,那么子网掩码可以为

255.255.255.192
// 转成二进制
11111111 11111111 11111111 11000000 // 连续的1代表网络位,连续的0代表主机位

可以看到网络位占用了2位主机位进行了扩展,这两位可以有00、01、10、11的组合,每个组合配合后六位数从000000到111111就可以把主机位的十进制总数255划分成

  1. 00情况下的00000000-00111111 转为 0-63
  2. 01情况下的01000000-01111111 转为 64-127
  3. 10情况下的10000000-10111111 转为128-191
  4. 11情况下的11000000-11111111 转为192-255

于是就把C类的主机位划分成4个子网。

举例说明

假如有两个IP

IP 192.168.11.30  子网掩码 255.255.255.192
IP 192.168.11.61  子网掩码 255.255.255.192

可以和上面列举的对比,发现这个子网掩码的最后一组为192,对应转成二进制是11000000,说明是C类并借了2位主机位,也就是网络位有8+8+8+2=26位,那么可以这样去简要表示这俩个ip

192.168.11.30/26
192.168.11.61/26

那么这俩ip在一个子网中吗,首先26个网络号必定是C类,前三组都是1,不用算了都乘1直接确定192.168.11,最后一组C类的为0(192先不看,先看大类),那也不用算了都乘0直接确定192.168.11.0,然后最后一组是C类的再次划分192,两个ip的子网掩码都是192,必定同一个子网了。

综上,可变长子网掩码本质就是通过划分主机位来划分出子网,还要注意的是每个子网的一头一尾也是要给网络地址和广播地址的。


总结

有了子网掩码,IP地址的网络位和主机位的划分变得更加灵活,在有限的IP资源的情况下,提高IP地址的利用率,减少IP地址的浪费。

看完来个赞,年年益寿~

你可能感兴趣的:(网络基础,网络,子网掩码)