IPv4地址划分的方式
- 标准分类的IP地址
- 划分子网的三级地址结构
- 构成超网的CIDR技术
- 网络地址转换技术
在上篇博客,我已经总结了:标准分类的IP地址,这篇博客我们继续介绍下一种地址划分的方式:划分子网的三级地址结构
什么是子网
子网的基本思想就是:将一个网络号下网络再次划分为多个网络段,而这些网络段的划分由该组织自行决定。子网的结构是:网络号-子网号-主机号。
为什么要引入子网概念
- 提高了IP地址的使用效率。在标准分类的IP地址中,当我们把一个网络号分配给一个组织后,如果该组织给它的内部的主机都分配了IP地址后,还剩余很多闲置的IP地址时,其他组织无法合法利用该资源。但是子网的引入,可以大幅度的解决这个问题
- 提高了路由器的工作效率。IP数据包从网际上的一个网络到达另一个网络时,选择路径可以基于网络而不是主机。在大型的网际中,这一点优势特别明显,因为路由表中只存储网络信息而不是主机信息,这样可以大大简化路由表。
子网地址的结构与划分方法
- 子网号是从主机号中提取前几个位作为“子网号”,剩余的位数继续作为“主机号”,因此子网会形成:网络号-子网号-主机号
- 子网划分可以应用到A、B、C三类IP地址中。同一子网中的子网号相同。
- 子网的具体划分是组织自己内部的事情
如何识别出一个IP地址的网络号、子网号、主机号
首先,我们知道子网是应用于A、B、C三类IP地址的,所以通过IP地址的前三位就可以知道该IP地址的属于哪类IP地址,并且可以知道其网络号所占的位数:
1 | A类:0__ 网络号:8位 |
那么我们该如何从IP地址中提取出该IP地址的子网号了?这个时候,就需要引入子网掩码的概念。
子网掩码作用
将IP地址划分为网络位和主机位。网络位包括了:网络号和子网号,所以可以通过子网掩码判断出IP地址的子网号。另外,A、B、C类地址都可以引入他它们自己的子网掩码,具体表现形式如下:
1 | A类:255.0.0.0 前8位都是1 |
如何表示子网掩码
子网掩码和IP地址一样,都是4个字节的,左边是网络位,用二进制数字“1”表示;右边是主机位,用二进制数字“0”表示。
例如如果一个标准的B类地址,它本来有16位的主机号,现在选择前6位作为子网号,则一个B类地址就可以划分为:64个子网,该子网的掩码可以表示为如下两种形式:
1 | 255.255.252.0 表示前22位都是1. |
例如网络段:192.168.1.1/24的子网可以表示为:
1 | 255.255.255.0 |
如何帮助一个组织划分子网
例如一个组织需要对一个B类地址:156.26.0.0进行划分,其中该组织的子网数数需要100个。
- 考虑到该组织需要100个子网,所以需要的子网号位数为:7位(2^7>100)。
- 子网的掩码为:255.255.254.0/23
- 每个子网可以分配的主机数量为:2^9-2。其中减去的两个分别为主机号全0和全1,全0为子网掩码用于标识一个网络段,全1为该子网内的广播地址。
如何通过子网掩码确定主机号、子网号、两个IP地址是否属于同一子网
- 每个子网只有一个掩码,但需要注意,并不是子网掩码相同就是同一子网
- 子网号 = IP & 子网掩码
- 主机号 = IP & 掩码取反
- 如果子网号相同就是属于同一子网
总结
假设一个网络中的主机为450台,那么分配一个C类地址不够用,分配一个B类地址又显得太浪费,在这种情况下,就提出了子网化的概念,子网的定义就是把主机地址中的一部分主机位借用为网络位。从而可以让一个B类地址被多个组织使用。这也正是子网的奇妙之处。