计算机网络如何计算子网掩码

作者&投稿:戏类 (若有异议请与网页底部的电邮联系)
~ 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类地址 子网划分 及相关子网掩码:

子网位数  子网掩码 主机 数 可用主机数

1  255.255.255.128  128   126

2  255.255.255.192  64   62

3  255.255.255.224  32   30

4  255.255.255.240  16  14

5  255.255.255.248  8   6

6  255.255.255.252  4    2

你可能注意到上表分了 主机 数和可用主机数两项,这是为什么呢?因为当地址的所有主机位都为"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,这里肯定N<8。如果大于254,则 N>8,这就是说 主机地址 将占据不止8位。

3)使用255.255.255.255来将该类IP地址的 主机地址 位数全部置1,然后从后向前的将N位全部置为 0,即为子网掩码值。

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

1) 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上。

问题扩展:

一:上边的例子中子网掩码为255.255.255.0,那么能不能把子网掩码给修改呢,完全可以。

在上边A和C的例子中,如果把子网掩码改成255.255.0.0,再看一下

A的IP地址:11000000,10101000,00000000,00000101

子网掩码:11111111,11111111,00000000,00000000

C的IP地址:11000000,10101000,00111000,00010101

这样A和C就在同一个网段内了

二:扩展子网

在一个公司或者学校内部,已经分配好了网络号,按照内部行政结构的不同,再将网络分配成子网络号。

举例:如果一个公司主机已经分配好的网络按照255.255.0.0的子网掩码来区分主机号,现在由于公司有两个部门,想要按照部门来划分成两个子网络来,那么可以简单的用子网掩码来划分。现在来考虑,有两个部门,按照二进制的做饭,那么只要有一位的数字0和1来区分就可以了。

按照255.255.0.0(11111111,11111111,00000000,00000000)来划分,前边了16位是网络号,按照子网掩码是按照最长1来匹配,那么现在就在17位划分位0和1来区分成两个。那么可以给一个部门的子网掩码划分为255.255.128.0,另一个划分为255.255.0.0,用二进制来比较一下

255.255.0.0:11111111,11111111,00000000,00000000

255.255.128.0:11111111,11111111,10000000,00000000

这样就简单的将两个部门来划分开了

三:路由的时候选择最长1来匹配

路由的时候为什么选择最长1来匹配,理由是这样的:如果是在好几个可以匹配的网段内(还是按照子网掩码)选择最长的那个,可以很快的找到匹配。如果是按照最短的,那么需要匹配的主机就多,还有一种可能是一个路由器转发不了,还要换另一个路由,很可能造成包在网络内循环,最后直至包被丢弃。

四:网关的概念

在开始的例子中提到默认网关的概念,先来看网关的概念。

网关实质上是一个网络通向其他网络的IP地址,网关的IP地址是具有路由功能的设备的IP地址,按照上边的192.168.0.1网关的例子,网关就是有那么一台机子或者是PC机或者是服务器它的IP地址是192.168.0.0,这个设备有路由功能。按照这个理论,一个设备的IP必须和自己的网关在同一个网段内,这是必须的。

说完网关,再说默认网关,默认二字就没有太多解释的了,这里举例说明:网关可能不止一个,有网关一、网关二等等,默认网关就是选择其中之一做为默认值。


如何计算子网掩码?
IP地址的网络地址是通过32位的IP和32位的掩码进行与运算得到的。首先要把IP地址和子网掩码都换算为32位的二进制。与运算的特点是有0就为0,全1才为1.具体计算如下:11000000 192 (IP地址第一段)11111111 255 (子网掩码的第一段)11000000 192 (与运算的结果)--- 10101000 168 (IP地址第二...

子网数怎么算
子网数可以通过划分IP地址范围的方法来计算。如果一个网络中有n个主机,那么它的子网数为(n+1)的2次方。这是因为一个主机至少需要一个子网,最多可以有2^n个子网(n为网络中的主机数量)。如果使用二进制表示法,那么一个网络的主机数量在2^m至2^(m+1)-2之间(m为子网位数),最多可以有2^(...

如何计算子网掩码?
2、要将网络划分为4个子网,先套用子网的计算公式:子网数=2的n次方,即4=2的n次方,n为2。3、由上述步骤可知,n为2,即需要在主机位上借2位进行子网的划分,主机位还剩6+8=14位。4、由主机位可以知道网络掩码位数为32-14=18位,即子网掩码为255.255.192.0 5、由上述可知,每个子网的地址...

怎样计算子网?
计算子网数方法如下:1、确定该IP是属于A,B,C三类中的哪一类。就可知它们的网络号A类前8位,B类前16位,C类前24位。2、把子网掩码化成2进制看有多少个1,把该进制中1的个数减去第一步所得出的位数,即为子网位数。3、如果子网位数为n,则从理论是讲可以划分出2n个子网。

计算机网络中子网掩码怎么算主机数呢?
1. 了解子网掩码的作用 首先,我们需要了解子网掩码的作用。子网掩码用于将IP地址划分为网络地址和主机地址。通过与IP地址进行按位与运算,子网掩码可以帮助我们确定网络地址和主机地址的界限。2. 计算主机数的方法 要计算一个子网内的主机数,我们可以使用以下公式:2的N次方减2,其中N是子网掩码中二...

如何计算子网掩码?
IP地址的网络地址是通过32位的IP和32位的掩码进行与运算得到的。首先要把IP地址和子网掩码都换算为32位的二进制。与运算的特点是有0就为0,全1才为1.具体计算如下:11000000 192 (IP地址第一段)11111111 255 (子网掩码的第一段)11000000 192 (与运算的结果)---10101000 168 (IP地址第二段)1111...

如何计算出网络子网掩码?
子网掩码计算方法有两种:方法一:利用子网数来计算:1.首先,将子网数目从十进制数转化为二进制数;2.接着,统计得到的二进制数的位数,设为N;3.最后,先求出此IP地址对应的地址类别的子网掩码。再将求出的子网掩码的主机地址部分(也就是“主机号”)的前N位全部置1,这样即可得出该IP地址划分...

子网划分及子网掩码计算方法
如果希望在一个网络中建立子网,就要在这个默认的子网掩码中加入一些位,它减少了用于主机地址的位数。加入到掩码中的位数决定了可以配置的子网。因而,在一个划分了子网的网络中,每个地址包含一个网络地址、一个子网位数和一个主机地址。确定子网掩码:利用主机数来计算 将主机数目转化为二进制来表示,...

怎么计算子网地址
请问子网的网络地址怎么算?计算子网地址的:可以使用主机的IP地址和子网掩码相与得到该IP地址所处的子网的地址。子网地址也可以说是网络地址,网络地址则是互联网上的节点在网络中具有的逻辑地址,可对节点进行寻址。计算子网地址的方法:将IP地址和子网掩码都换算成二进制,然后进行与运算,结果就是网络...

怎么计算子网掩码?
计算过程是这样的,将IP地址和子网掩码都换算成二进制,然后进行与运算,结果就是网络地址。与运算如下所示,上下对齐,1位1位的算,1与1=1,其余组合都为0。例如:计算IP地址为:202.99.160.50子网掩码是255.255.255.0的网络地址步骤如下:1)将IP地址和子网掩码分别换算成二进制 202.99.160....

策勒县15317234334: 子网掩码如何计算? -
子丰查托吡: 现假如要将一B类IP地址168.195.0.0划分成27个子网,则它的子网掩码的计算机方法如下(对应以上各基本步骤): 第1步,首先要划分成27个子网,“27”的二进制为“11011”; 第2步,该子网数二进制为五位数,即n = 5; 第3步,将该B类地址的子网掩码255.255.0.0的主机号前5位全部置“1”,即可得到 255.255.248.0,这就是划分成 27个子网的B类IP地址 168.195.0.0的子网掩码.

策勒县15317234334: 有关子网掩码的疑问.三、快速计算子网掩码的方法 最后介绍三种快速计算机子网掩码的方法. 1. 利用子网数来计算 在求子网掩码之前必须先搞清楚要划... -
子丰查托吡:[答案] 你没犯错,而是你看到的是错的.他这个很难让人看懂.

策勒县15317234334: 怎么计算子网掩码呢?
子丰查托吡: 三种快速计算机子网掩码的方法: 1. 利用子网数来计算 2. 利用主机数来计算 3. 子网ID增量计算法 详见 http://hi.baidu.com/ngdao/blog/item/ab223c2aa440ad3b5343c1f6.html

策勒县15317234334: 如何计算子网掩码 -
子丰查托吡: 大家都应该知道2的0次方到10次方是多少把?也给大家说一下,分别是:1 2 4 8 16 32 64 128 256 512 1024.如果你希望每个子网中只有5个ip地址可以给机器用,那么你就最少需要准备给每个子网7个ip地址,因为需要加上两头的不可用的网...

策勒县15317234334: 子网掩码的计算 -
子丰查托吡: 如果子网掩码的二进制位数为n,则可分配的设备数量为2^(32-n)-2(二进制全0子网地址为网络地址、全1子网地址为广播地址,这两个不能用于设备)这样就是要求 2^(32-n)-2≥3091,n的最小取值为20,即最长需要20位二进制掩码才能满足要求

策勒县15317234334: 如何计算子网掩码?请举例说明…… -
子丰查托吡: 计算子网掩码,首先知道子网掩码是干什么的,他的作用是获取主机IP地址的网络地址信息,用于区分主机通信的不同情况,由此选择不同的路径.IP地址(4个8位2进制,点分十进制表示)有5类.分别为A,B,C,D,E类.A类地址,第一个八位...

策勒县15317234334: 子网掩码的计算如何计算?? -
子丰查托吡: 将网络号和子网号全置1,其余置0,如C类地址的子网掩码为255.255.255.0.

策勒县15317234334: 子网掩码怎么算的?本人计算机网络正在学习中. -
子丰查托吡: 你看的翻译书籍吧? 1、“假如没有对原始的12位本地地址空间划分子网”很难理解,估计翻译的不好,本地地址空间一般就是指一个网段的所有连续ip地址构成的地址块,12位就是说这个地址块起始地址是0~0(12个0),结束地址是1~1(12个1)...

策勒县15317234334: 网络地址怎么算 - 目的IP地址与子网掩码相与怎么?目的IP地址与子网掩码相与怎么算
子丰查托吡: 这个计算过程是这样的:假设 IP 地址为 192.168.1.1(通常为无线路由器的 IP 地址),子网掩码为 255.255.255.0,首先将 IP 地址换算成十六进制数为 C0.A8.01.01、子网掩码换算成十六进制数为 FF.FF.FF.00,再分别转换成二进制数字如下如下:11000000.10101000.00000001.0000000111111111.11111111.11111111.00000000再分别进行按位“与”运算,所得结果为:11000000.10101000.00000001.00000000,其对应的十六进制数字为:C0.A8.01.00,十进制数字为 192.168.1.0 为最终结果.

策勒县15317234334: 求子网掩码最简单,最有效的计算方法. -
子丰查托吡: 子网掩码 (1)子网TCP/IP网间网技术产生于大型主流机环境中,它能发展到今天的规模是当初的设计者们始料未及的.网间网规模的迅速扩展对IP地址模式的威胁并不是它不能保证主机地址的唯一性,而是会带来两方面的负担:第一,巨大的...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网