iphone 发表于 2020-11-15 09:56:30

子网掩码计算(子网掩码如何计算?)

IP地址是以网络号和主机号来表示网络上的主机的,只有在一个网络号下的计算机之间才能“直接”互通,不同网络号的计算机要通过网关(Gateway)才能互通。但这样的划分在某些情况下显得并不十分灵活。为此IP网络还允许划分成更小的网络,称为子网(Subnet),这样就产生了子网掩码。子网掩码的作用就是用来判断任意两个IP地址是否属于同一子网络,这时只有在同一子网的计算机才能"直接"互通。那么子网掩码如何计算?
前面讲到IP地址分网络号和主机号,要将一个网络划分为多个子网,因此网络号将要占用原来的主机位,如对于一个C类地址,它用24位来标识网络号,要将其划分为2个子网则需要占用1位原来的主机标识位。此时网络号位变为25位,主机标示变为7位。同理借用2个主机位则可以将一个C类网络划分为4个子网……那计算机是怎样才知道这一网络是否划分了子网呢?这就可以从子网掩码中看出。子网掩码和IP地址一样有32bit,确定子网掩码的方法是其与IP地址中标识网络号的所有对应位都用"1",而与主机号对应的位都是"0"。如分为2个子网的C类IP地址用25位来标识网络号,则其子网掩码为:11111111 11111111 11111111 10000000即255.255.255.128。于是我们可以知道,A类地址的缺省子网掩码为255.0.0.0,B类为255.255.0.0,C类为255.255.255.0。下表是C类地址子网划分及相关子网掩码:

https://att.xiawai.com/data/attachment/forum/202011/15/sy3pejixmtq167022.png

子网位数 子网掩码主机数 可用主机数
1 255.255.255.128 128126
2 255.255.255.192 6462
3 255.255.255.224 3230
4 255.255.255.240 16 14
5 255.255.255.248 86
6 255.255.255.252 42
你可能注意到上表分了主机数和可用主机数两项,这是为什么呢?因为当地址的所有主机位都为"0"时,这一地址为子网的网络地址,而当所有主机位都为"1"时为广播地址。
同时我们还可以使用可变长掩码(VLSM)就是指一个网络可以用不同的掩码进行配置。这样做的目的是为了使把一个网络划分成多个子网更加方便。在没有VLSM的情况下,一个网络只能使用一种子网掩码,这就限制了在给定的子网数目条件下主机的数目。例如你被分配了一个C类地址,网络号为192.168.10.0,而你现在需要将其划分为三个子网,其中一个子网有100台主机,其余的两个子网有50台主机。我们知道一个C类地址有254个可用地址,那么你如何选择子网掩码呢?从上表中我们发现,当我们在所有子网中都使用一个子网掩码时这一问题是无法解决的。此时VLSM就派上了用场,我们可以在100个主机的子网使用255.255.255.128这一掩码,它可以使用192.168.10.0到192.168.10.127这128个IP地址,其中可用主机号为126个。我们再把剩下的192.168.10.128到192.168.10.255这128个IP地址分成两个子网,子网掩码为255.255.255.192。其中一个子网的地址从192.168.10.128到192.168.10.191,另一子网的地址从192.168.10.192到192.168.10.255。子网掩码为255.255.255.192每个子网的可用主机地址都为62个,这样就达到了要求。可以看出合理使用子网掩码,可以使IP地址更加便于管理和控制。
、、、、、、、、、、、、、、、、、、、、、、、、、
定义子网掩码
用于子网掩码的位数决定于可能的子网数目和每个子网的主机数目。在定义子网掩码前,必须弄清楚本来使用的子网数和主机数目。
定义子网掩码的步骤为:
A、确定哪些组地址归我们使用。比如我们申请到的网络号为 “210.73.a.b”,该网络地址为c类IP地址,网络标识为“210.73.a”,主机标识为“b”。
B、根据我们所需的子网数以及将来可能扩充到的子网数,用宿主机的一些位来定义子网掩码。比如我们需要12个子网,将来可能需要16个。用第四个字节的前四位确定子网掩码。前四位都置为“1”,即第四个字节为“11110000”,这个数我们暂且称作新的二进制子网掩码。
C、把对应初始网络的各个位都置为“1”,即前三个字节都置为“1”,则子网掩码的间断二进制形式为:“11111111.11111111.11111111.11110000” 。
D、把这个数转化为间断十进制形式为:“255.255.255.240” 。
计算方式
由于子网掩码的位数决定于可能的子网数目和每个子网的主机数目。在定义子网掩码前,必须弄清楚本来使用的子网数和主机数目。
根据子网数
利用子网数来计算
在求子网掩码之前必须先搞清楚要划分的子网数目,以及每个子网内的所需主机数目。
1)将子网数目转化为二进制来表示
2)取得该二进制的位数,为 N
3)取得该IP地址的类子网掩码,将其主机地址部分的前N位置1 即得出该IP地址划分子网的子网掩码。
如欲将B类IP地址168.195.0.0划分成27个子网:
1)27=11011
2)该二进制为五位数,N = 5
3)将B类地址的子网掩码255.255.0.0的主机地址前5位置1(B类地址的主机位包括后两个字节,所以这里要把第三个字节的前5位置1),得到 255.255.248.0
即为划分成27个子网的B类IP地址 168.195.0.0的子网掩码(实际上是划成了32-2=30个子网)。
这一段介绍的是旧标准下计算的方法,关于旧的标准后文在介绍,在新标准中则可以先将27减去1,因为计算机是从0开始计算的,从0到27实际上是有28个,所以说如果需要27个就需要将27减去1。
根据主机数
利用主机数来计算
1)将主机数目转化为二进制来表示
2)如果主机数小于或等于254(注意去掉保留的两个IP地址),则取得该主机的二进制位数,为 N,这里肯定N8,这就是说主机地址将占据不止8位。

以上内容就是子网掩码计算(子网掩码如何计算?)的相关内容介绍,喜欢侠外游戏论坛的朋友可以关注我们。
              12下一页

iphone 发表于 2020-11-15 09:57:19

3)使用255.255.255.255来将该类IP地址的主机地址位数全部置1,然后从后向前的将N位全部置为 0,即为子网掩码值。
如欲将B类IP地址168.195.0.0划分成若干子网,每个子网内有主机700台:
700=1010111100
2)该二进制为十位数,N = 10
3)将该B类地址的子网掩码255.255.0.0的主机地址全部置1,得到255.255.255.255
然后再从后向前将后10位置0,即为: 11111111.11111111.11111100.00000000
即255.255.252.0。这就是该欲划分成主机为700台的B类IP地址168.195.0.0的子网掩码。
子网掩码最直接的作用是判断IP地址与另一个IP地址是否在同一个网段内。
下面先简单看一个电脑上IP的基本配置
IP地址:192.168.0.5
子网掩码:255.255.255.0
默认网关:192.168.0.1
如上的例子,IP地址、子网掩码、默认网关。假如现在上边的电脑A(IP地址192.168.0.5)要给电脑B(IP地址为192.168.0.22)发送数据,首先A将数据发到路由器,路由器经过判断B的地址和A的地址在同一个网段内,然后路由器就将数据直接发送给B。
路由器具体使用子网掩码来判断IP地址是先将这些IP地址和子网掩码都换成二进制,然后按照子网掩码的最长位数的1来比较。
第一步:转换为二进制
A的IP地址:11000000,10101000,00000000,00000101
子网掩码:11111111,11111111,11111111,00000000
B的IP地址:11000000,10101000,00000000,00010110
第二步:按照子网掩码最长1来比较
看上边的内容,子网掩码在左边一共有24位为1,那这样的意思就是如果两个IP地址的前24位都相同的话子网掩码计算,那这两个IP地址就是在同一个网段内,看到我红色标记的A和B的地址都相同,那这就说明A和B在同一个网段内。
再看一个例子子网掩码计算,如果还是A地址的数据发到C地址,C的IP地址为192.168.56.21
第一步:转换为二进制
A的IP地址:11000000,10101000,00000000,00000101
子网掩码:11111111,11111111,11111111,00000000
C的IP地址:11000000,10101000,00111000,00010101
第二步:按照子网掩码最长1来比较
看上边的A和C,按照子网掩码的要求,如果C的前24位和A的前24位都相同的话,那么A和C才是同一网段的,看上边C的地址,我用蓝色来标注不同的位数,这样A 和C就不在同一个网段内,路由器就不能直接把A要发给C的数据直接经过一个路由器给发送过去,这样路由器就要先将A的数据转发到另外一个路由器(一个不行就继续往下发),然后再发到C上。

以上内容就是子网掩码计算(子网掩码如何计算?)的相关内容介绍,喜欢侠外游戏论坛的朋友可以关注我们。
              上一页12
页: [1]
查看完整版本: 子网掩码计算(子网掩码如何计算?)