计算机网络 —— 网络层(子网掩码和子网划分)
- 网络地址转换NAT
- 子网掩码和子网划分
- 举个例子
- 第一步:看类型
- 第二步:从主机号开始比对
- 第三步:去头去尾
我们今天来看子网掩码和子网划分:
网络地址转换NAT
网络地址转换(Network Address Translation, NAT)是一种在IP网络中修改数据包的网络地址信息的技术,主要用于将私有(内部)IP地址转换为公有(外部)IP地址,或者反之,从而实现私有网络与公共互联网之间的通信。NAT技术对于缓解IPv4地址短缺问题起到了关键作用,同时也增加了网络的安全性,因为它隐藏了内部网络的真实IP配置。
子网掩码和子网划分
假设我们现在有一片网络:
现在我们想把这片网络拆分成三个子网:
我们子网1用原来的IP地址:
现在我有一个投机取巧的方法,我可以把原来的IPv4中的一些位数拿出来作为子网的IP:
现在有一个问题:分类地址中有多少位来作为子网号了呢?
这就是子网掩码的功能了:
子网掩码(Subnet Mask)是一个32位的二进制序列,通常以点分十进制的形式表示,与IP地址一起使用来确定网络地址和主机地址的部分。它的主要功能是将IP地址划分为两部分:网络部分(Network ID)和主机部分(Host ID)。这样做可以将大的网络划分为更小的子网,提高IP地址的使用效率,并且便于网络的管理和路由。
子网掩码中的每一个位与IP地址中的对应位进行逻辑与运算(AND operation)。子网掩码中的“1”表示对应的IP地址位是网络部分,“0”表示主机部分。例如,一个常见的子网掩码255.255.255.0
(或其二进制形式11111111.11111111.11111111.00000000
)意味着前24位用于网络部分,后8位用于主机部分。
通过改变子网掩码,网络管理员可以灵活地创建不同大小的子网,适应不同规模的网络需求。例如,使用子网掩码255.255.255.128
可以将一个C类网络进一步划分为两个较小的子网。
此外,子网掩码还帮助设备识别哪些设备位于同一个子网内,哪些不在。对于同一子网内的设备间通信,可以直接通过局域网进行,而不需要通过路由器;对于跨子网的通信,则需要通过路由器来完成。
举个例子
第一步:看类型
以218开头,说明是一个C类的IP地址,C类IP地址前24位为网络号,后面8位为主机号:
第二步:从主机号开始比对
然后我们看对应的子网掩码:
有3个255,说明前24位都是网络号,我们看最后一个128,展开为8位:
第三步:去头去尾
这里注意一下,主机号全为0为网络地址,全为1为广播地址,不参与统计的个数:
这里有一道练习题,大家可以做一下:
还有一道考研真题: