子网划分及子网掩码计算方法

部分转自:https://blog.csdn.net/wuseyukui/article/details/24306645

子网掩码的概述和作用

  • 子网掩码是一个应用于TCP/IP网络的32位二进制值,每节8位,必须结合IP地址对应使用(常见的 255.255.255.0 等)
  • 子网掩码32位都与IP地址32位对应,如果某位是网络地址,则子网掩码为1,否则为0 (11111111.11111111.11111111.0)
  • 子网掩码通过与IP地址 “与”计算,分离出IP地址中的网络地址和主机地址,判断该IP地址是在局域网,还是在广域网。
  • 子网掩码一般用于将网络进一步划分为若干子网,以避免主机过多而拥堵或过少而IP浪费。

为什么要使用子网掩码

子网掩码不能单独存在,它必须结合IP地址一起使用。子网掩码只有一个作用,就是将某个IP地址划分成网络地址和主机地址两部分

两台计算机要通讯,首先要判断是否处于同一个广播域内,即网络地址是否相同。如果网络地址相同,表明接受方在本网络上,那么可以把数据包直接发送到目标主机,否则就需要路由网关将数据包转发送到目的地。

比如说我们本机ip与子网掩码计算出一个网络地址为 x.x.x.x

另一个ip地址与子网掩码计算出一个网络地址为 y.y.y.y

如果 x.x.x.x 与 y.y.y.y 相等,那么这两个主机可以ping通

子网掩码的分类

缺省子网掩码(未划分子网)

子网掩码32位与IP地址32位对应,如果某位是网络地址,则子网掩码为1,否则为0。例如A类IP地址,第一节为网络地址,其余三节为主机地址,故掩码为“11111111.00000000.00000000.00000000”

  • A类网络缺省子网掩码:255.0.0.0
  • B类网络缺省子网掩码:255.255.0.0
  • C类网络缺省子网掩码:255.255.255.0

自定义子网掩码(用于划分子网)

将一个网络划分为若干子网,希望每个子网拥有不同的网络地址或子网地址。因为IP是有限的,实际上我们是将主机地址分为两个部分:子网网络地址、子网主机地址。

未做子网划分的ip地址:网络地址+主机地址
做子网划分后的ip地址:网络地址+(子网网络地址+子网主机地址)

子网掩码和IP的关系

子网掩码是用来判断任意两台计算机的IP地址是否属于同一子网络的根据。具体说就是两台计算机各自的IP地址与子网掩码进行“与”运算后,如果得出的结果是相同的,则说明这两台计算机是处于同一个子网络上的,可以进行直接的通讯。

例如:设IP地址为192.168.10.2,子网掩码为255.255.255.240,那么子网掩码是怎样来区分网络地址和主机地址的呢。
网络地址为:192.168.10.0(子网掩码通过与IP地址与运算)
主机地址为:192.168.10.2(将掩码取反,然后与运算)

为什么要划分子网

节约IP地址,避免浪费,限定广播的传播,保证网络的安全,有助于覆盖大型地理区域

例如:在A类IP地址中,每个A类网络可能有16,777,214台主机,它们处于同一广播域。在同一广播域中有这么多主机是不可能的,网络会因为广播通信而饱和。另一方面,IP地址资源越来越少。为实现更小的广播域,就需要进一步分成更小的网络。划分子网后,通过使用掩码,把子网隐藏起来,使得从外部看网络没有变化,这就是子网掩码。

子网划分简述

子网划分是通过借用IP地址中若干位主机地址来充当子网的网络地址,从而将原网络划分为若干子网。
划分子网时,随着子网地址借用主机位数的增多,子网的数目随之增加,但每个子网中的可用主机数逐渐减少。

如C类地址,原有8位主机位,2^8​-2即254个主机地址,默认子网掩码255.255.255.0。(全0或全1不可用)
借用1位主机位,产生​=2个子网,每个子网有2^7个主机地址;
借用2位主机位,产生​=4个子网,每个子网有2^6个主机地址;
根据子网ID借用的主机位数,我们可以计算出划分的子网数、掩码、每个子网主机数,列表如下:

  1. C类IP 地址子网划分
借用位数 子网掩码 子网个数 每个子网中主机数
1 255.255.255.128 2^1 = 2 2^(8-1) - 2 = 126
2 255.255.255.192 2^2 = 4 2^(8-2) - 2 = 62
3 255.255.255.224 2^3 = 8 2^(8-3) - 2 = 30
4 255.255.255.240 2^4 = 16 2^(8-4) - 2 = 14
5 255.255.255.248 2^5 = 32 2^(8-5) - 2 = 6
6 255.255.255.252 2^6 = 64 2^(8-6) - 2 = 2
  1. B类IP 地址子网划分
借用位数 子网掩码 子网个数 每个子网中主机数
1 255.255.128.0 2^1 = 2 2^(16-1) - 2
2 255.255.192.0 2^2 = 4 2^(16-2) - 2
3 255.255.224.0 2^3 = 8 2^(16-3) - 2
4 255.255.240.0 2^4 = 16 2^(16-4) - 2
5 255.255.248.0 2^5 = 32 2^(16-5) - 2
6 255.255.252.0 2^6 = 64 2^(16-6) - 2
7 255.255.254.0 2^7 = 128 2^(16-7) - 2
  1. A类IP地址子网划分
借用位数 子网掩码 子网个数 每个子网中主机数
1 255.128.0.0 2^1 = 2 2^(24-1) - 2
2 255.192.0.0 2^2 - 2 = 2 2^(24-2) - 2
3 255.224.0.0 2^3 - 2 = 8 2^(24-3) - 2
4 255.240.0.0 2^4 - 2 = 16 2^(24-4) - 2
5 255.248.0.0 2^5 - 2 = 32 2^(24-5) - 2
6 255.252.0.0 2^6 - 2 = 64 2^(24-6) - 2
7 255.254.0.0 2^7 - 2 = 128 2^(24-7) - 2
案例一:

网络地址:192.168.10.0
子网掩码:255.255.255.128/25

子网 第一个主机地址 最后一个主机地址 广播地址 主机数
192.16.10.0 192.168.10.1 192.168.10.126 192.168.127 126
192.16.10.128 192.168.10.129 192.168.10.254 192.168.255 126
案例二:

网络地址:192.168.10.0
子网掩码:255.255.255.192/26

子网 第一个主机地址 最后一个主机地址 广播地址 主机数
192.16.10.0 192.168.10.1 192.168.10.62 192.168.63 62
192.16.10.64 192.168.10.65 192.168.10.126 192.168.127 62
192.16.10.128 192.168.10.129 192.168.10.190 192.168.191 62
192.16.10.192 192.168.10.193 192.168.10.254 192.168.255 62

子网掩码的计算

  • 子网数和主机数都可以计算子网掩码
  • 取得子网/主机的二进制位数
  • 网络地址置0,主机地址置1
  • 换成十进制
  1. 利用子网数计算

在求子网掩码之前必须先搞清楚要划分的子网数目,以及每个子网内的所需主机数目。

  • 将子网数目转化为二进制来表示
  • 取得该二进制的位数,为 N
  • 取得该 IP地址的类子网掩码,将其主机地址部分的的前N位置 1 即得出该IP地址划分子网的子网掩码。

如欲将C类IP地址192.168.10.0划分成4个子网:

  • 4=100
  • 该二进制为三位数,N=3
  • 将A类地址的子网掩码255.255.255.0的主机地址前3位置 1,得到子网掩码255.255.255.224。(具体见下图)
1.png

2.利用主机数来计算

  • 将主机数目转化为二进制来表示
  • 如果主机数小于或等于254(注意去掉保留的两个IP地址),则取得该主机的二进制位数。
  • 将该类IP地址的主机地址位数全部置1,然后从后向前的将N位全部置为 0,即为子网掩码值。

如欲将B类IP地址192.168.10.0划分成若干子网,每个子网内有主机25台:

  • 25=11001
  • 该二进制为十位数,N=5
  • 将该B类地址的子网掩码 255.255.255.0的主机地址全部置 1,得到255.255.255.255,然后再从后向前将后5位置0,即为:11111111.11111111.11111111.11100000,即255.255.252.224。
2.png
案例三:

某高校计算机学院要新建3个实验室,每个实验室有25台主机,已申请了一个C类地址192.168.10.0,该C类地址的子网掩码为

  • 3 = 11 ,故最少从地址位借2位,也可以为3位,4位等
  • 25 = 11001,故最少从主机位借5位
  • 综合起来,只能从地址位借2-3位
  • 借2位的话,子网掩码是255.255.255.192,借3位的话,子网掩码是255.255.255.224
案例四:

某公司申请到一个C 类IP 地址,但要连接6 个的子公司,最大的一个子公司有26 台计算机,每个子公司在一个网段中,则子网掩码应设为

  • 6 = 110 ,故最少从地址位借3位
  • 26 = 11010,故最少从主机位借5位
  • 综合起来,只能从地址位借2-3位
  • 子网掩码是255.255.255.224

汇总网段的计算

  • 确定需要汇总的网段的子网地址。
  • 将各网段的子网地址以二进制写出。
  • 比较各网段二进制表示的网络地址,从第1位比特开始进行比较记录连续的相同的比特, 不相同的比特位到第32个比特为填充0。由此得到的地址为汇总后网段的IP地址,其网络位 为连续的相同的比特的位数。

IP路由汇总的优点有:

  • 减小路由表的规模
  • 减轻路由器 的负担
  • 减少数据包寻址时间
案例五

ip地址10.1.8.0/24和10.1.9.0/24

10.1.8.0/24=====>10.1.00001000.0/24
10.1.9.0/24=====>10.1.00001001.0/24

不同比特位出现在第24位,所以24-32位填充0,网络号为前23位
故,汇总网段为 10.1.8.0/23,子网掩码为 255.255.254.0

你可能感兴趣的:(子网划分及子网掩码计算方法)