目录
计算机网络基础,子网掩码,子网划分,网络号,子网号,主机号主机数量计算方式
网上有很多计算方式,很多计算方式不同,且子网,子网掩码混为一谈,乱七八糟,希望此片能为你解决困惑。
子网理论知识与划分
- 子网是把一个单一网络划分为多个物理网络,并使用路由器将其互联,划分子网带来的好处有:提高IP地址使用率,隔离广播域带来的影响,提高一个网络的灵活性。
- 子网掩码
等于子网 ,IP地址在未做子网划分时,称之为默认掩码,IP地址叫有类IP地址。 - ABC类网络都有默认的子网掩码称为有类域间路由,定长子网掩码(FLSM) 就是子网掩码地址固定不变 无法更改,A类 255.0.0.0 B类 255.255.0.0 C类 255.255.255.0 ,划分子网就是打破默认的子网掩码,灵活划分IP数量,称为无类域间路由。
- IP地址每一段的作用及名称都是由子网掩码标识而来,划分子网就要从子网掩码中借位,借位是从主机最高位开始借,只能连续,不能断续借位
如何划分子网
- 确定需要多少个子网:子网数 <= 2的n次方 -2(个),n为向主机借位数量
- 确定每个子网内最大主机数:< = 2的n次方-2 (台)
例子
一个 IP 192.168.10.1/27,是一个C类IP地址,但子网掩码不是默认的24,所以它是一个划分过的子网,展开。
11000000.10101000.00001010.00000001 //主机地址
11111111.11111111.11111111.11100000 //子网掩码
借了三位,其中前面的24位是网络地址,25,26,27是子网地址,后五位是主机地址。
256/(2^5) = 8 (个子网)
依次列出就是:
注意:全0 和 全 1 的子网 在某些网络中不可用,因为在全0的子网中 这个ip为网络地址,全1的子网中为广播地址,所以在某些环境下是要减2的,所以说 这个IP共有 8 个 子网, 只有 6 个为可用子网。
网络号 | 子网号 | 主机号 | 子网地址 |
---|---|---|---|
11000000 . 10101000 . 00001010 . | 000 | 00000 | 192.168.10.0 |
11000000 . 10101000 . 00001010 . | 001 | 00000 | 192.168.10.32 |
11000000 . 10101000 . 00001010 . | 010 | 00000 | 192.168.10.64 |
11000000 . 10101000 . 00001010 . | 011 | 00000 | 192.168.10.96 |
11000000 . 10101000 . 00001010 . | 100 | 00000 | 192.168.10.128 |
11000000 . 10101000 . 00001010 . | 101 | 00000 | 192.168.10.160 |
11000000 . 10101000 . 00001010 . | 110 | 00000 | 192.168.10.192 |
11000000 . 10101000 . 00001010 . | 111 | 00000 | 192.168.10.224 |
其实在上图中就可用看出一个子网的地址是 0 - 32 减去这个子网的网络地址和广播地址 等于 30(个主机)
快速算法:
11000000 . 10101000 . 00001010 . 00000001 . 000/00000 //前27位为网络地址和子网地址
2 ^ 5 - 2 = 30 //5 就是后面的主机地址数 不减2就是一个子网的IP数量,减2就是可用的IP数量
计算原理:
当然全0 全 1 不能用。
主机总数计算方法:子网内主机数量 * 子网的数量
前面我们得到 子网 数量是8,每个子网内有32台主机(可用为30台)
8 * 32 = 256(台主机)
广播地址的特点是 主机号全1 即为这个子网的广播地址
192.168.10.1/27
11000000 . 10101000 . 00001010 . 00000001 . 000/00000 // 斜杠前为网络地址,后面5个0置为1
11000000 . 10101000 . 00001010 . 00000001 . 000/11111 // 192.168.10.1/27 这个IP 所在子网地址 的广播地址就是 192.168.10.31
计算方法是:16 + 8 + 4 + 2 + 1 = 31
IP地址利用率 = 使用状况 / 地址总数
例:
一个子网有14个主机,这个子网共有32个IP地址。
14 / 32 = 0.437 //四舍五入 等于 44%
即使是划分子网后IP地址利用率也达不到 100%
例题 一
默认子网掩码:255.255.255.0
计算该ip地址的网络号(网络地址)
需要将ip地址与子网掩码进行与运算
11得1,10得0,00得0
子网掩码的作用是用力区分网络号和主机号的
168.1.88.10/20
转二进制:
10101000.00000001.01011000.00001010 //ip地址
11111111.11111111.11110000.00000000 //子网掩码
将上面的二进制与运算得到
10101000.00000001.01010000.00000000 //十进制 168.1.80.0
网络号 : 168.1.80.0
这就是 168.1.80.10/20 这个ip的网络号
计算子网数量
子网掩码:
11111111.11111111.11110000.00000000
舍去后面的 8 个 0 只看前面有几个0 ,也就是看网络地址借了多少。
这个ip为4个0 前面4个1 为网络地址
计算公式为:
- 256 / (2^4) = 16
所以这个 ip 有 16个子网号
计算子网内的主机总数(最大主机数量):
- 2 * 主机地址位数
- 2 ^ 12 - 2 = 4094(台主机)
主机总数(所有子网的主机总数):
- 子网内主机数量 * 子网的数量
- 4096 * 16 = 65536(台主机)
例题 二
某单位现有两个部门70台计算机需要联网,要求每个子网内的主机数量不少于40台,问使用一个C类网络地址192.168.1.0/24如何进行子网划分。
分析:需求70台主机,每个子网主机数>=40台,两个部门两个子网。
考虑到最优的子网划分应该向主机号借两位(借一位也可以满足需求,但某些网络环境中不兼容全0 全 1 网络的使用)
192.168.1.1
11111111.11111111.11111111.11/000000 //借两位
- 2^6=64(台主机/一个子网) //64为主机范围,可用为62台
- 256 / (2^6) = 4(个子网) //全0全1 子网不用就是2 个子网
- 2*64 = 128(台总主机数)
网络号 | 子网号 | 主机号 | 子网地址 |
---|---|---|---|
11000000.10101000.00000001 | 00 | 000000 | 192.168.1.0 |
11000000.10101000.00000001 | 01 | 000000 | 192.168.1.64 |
11000000.10101000.00000001 | 10 | 000000 | 192.168.1.128 |
11000000.10101000.00000001 | 11 | 000000 | 192.168.1.192 |
减去全 0 和 全 1 子网号 不用 刚好两个子网且每个子网不少与40台,总共也大于70台主机。
变长子网掩码(VLSM)
什么是变长子网掩码
网络中不同子网中的主机数量是不固定的,采用定长子网掩码回造成IP地址的浪费与低效率,变长子网掩码根据不同子网中使用主机数来划分子网,尽可能在划分子网的情况下在次优化子网使用效率。
定长子网掩码不可用 全0 全1 子网,变长可用全0 全1 子网
例子
某公司 申请到一个 ip 192.168.10.0/24 这个IP 按照 30,24,14,12,7,2台主机需求分配给各个部门,请划分变长子网。
计算公式:主机数 = 2 ^ n - 2 // n 代表主机位个数 ,可以用的主机数需-2
30台主机
2 ^ 5 - 2 >= 30 //计算得出 2 的 5 次方 刚好30
所以我们要分出5位主机位
子网掩码 = 32 - 5 = 27
192.168.10.0/27
广播地址 192.168.10.31
铺开二进制
第一位 | 第二位 | 第三位 | 第四位 | 类型 |
---|---|---|---|---|
11000000 | 10101000 | 00001010 | 00000000 | IP地址 |
11111111 | 11111111 | 11111111 | 11100000 | 子网掩码 |
11000000 | 10101000 | 00001010 | 00011111 | 广播地址 |
14个主机
2 ^ 4 >= 14
子网掩码 = 32 - 4 = 28
192.168.10.64/28
广播地址 192.168.10.79
铺开二进制
第一位 | 第二位 | 第三位 | 第四位 | 类型 |
---|---|---|---|---|
11000000 | 10101000 | 00001010 | 01000000 | IP地址 |
11111111 | 11111111 | 11111111 | 11110000 | 子网掩码 |
11000000 | 10101000 | 00001010 | 01001111 | 广播地址 |
7台主机
2 ^ 4 >= 7
子网掩码 = 32 - 4 = 28
192.168.10.96/28 //7台主机使用
192.168.10.112/28 //其他网络使用
广播地址 192.168.10.111
铺开二进制
第一位 | 第二位 | 第三位 | 第四位 | 类型 |
---|---|---|---|---|
11000000 | 10101000 | 00001010 | 01100000 | IP地址 |
11111111 | 11111111 | 11111111 | 11110000 | 子网掩码 |
11000000 | 10101000 | 00001010 | 01101111 | 广播地址 |
2台主机
2 ^ 2 - 2 >= 2
子网掩码 = 32 - 2 = 30
192.168.10.112/30 //2台主机使用
广播地址 192.168.10.127
铺开二进制
第一位 | 第二位 | 第三位 | 第四位 | 类型 |
---|---|---|---|---|
11000000 | 10101000 | 00001010 | 01110000 | IP地址 |
11111111 | 11111111 | 11111111 | 11111100 | 子网掩码 |
11000000 | 10101000 | 00001010 | 01110011 | 广播地址 |
变长子网掩码IP地址使用率
总共浪费的IP数量为:2+8+2+4+9+2+2+2+2+4*2=39
利用率 = (256-39)/256=85%,比FLSM的划分子网提高不少利用率。