子网掩码(subnet mask)又叫网络掩码、地址掩码、子网络遮罩。
它是一种用来指明一个IP地址的哪些位标识的是主机所在的子网,以及哪些位标识的是主机的位掩码。
子网掩码不能单独存在,它必须结合IP地址一起使用。子网掩码只有一个作用,就是将某个IP地址划分成网络地址和主机地址两部分。
子网掩码是一个32位地址,用于屏蔽IP地址的一部分以区别网络标识和主机标识,并说明该IP地址是在局域网上,还是在广域网上。
扩展资料:
子网掩码的作用:
一、分割网络
由于计算机数量不断增加,人们发展IP地址数量很快要不够用了,而有类IP的IP分类方法会造成许多IP地址的浪费,如某公司申请到一个A类IP地址范围,其有效IP数量可达2^24-2,即1600万之多,而公司中不可能有什么多电脑。于是人们想把着能不能把一个大的网络分割为若干个小网络。
那如何来区别不同IP地址是否在同一网络呢?这里就需要使用子网掩码了,子网掩码与IP地址一样也是一个32位的二进制数,每个IP都规定一定子网掩码,把IP地址与子网掩码进行二进位的或,得到的就是网络号,如果网络号相同就表示二台电脑在同一网段,可以直接通讯,不需要路由器帮忙。
二 、 计算网络号
1、每台电脑事先会把自己IP和自己的子网掩码进行“与”操作,得到自己的网段号,如A电脑处在192.168.1.0网段,B电脑处在192.168.0.0网段。
2、B电脑向A电脑发数据包时,会把A电脑的IP与B电脑的子网掩码进行“与”操作,得到网络号是192.168.0.0,B电脑会认为A电脑与自己在同一网段,所以数据包会顺利发出。
参考资料来源:百度百科-子网掩码
在TCP/IP协议中,SUBNET MASKS(子网掩码)的作用是用来区分网络上的主机是否在同一网络取段内。在大型网络中,CLASS A的SUBNET MASKS为255.0.0.0, CLASS B的SUBNET MASKS为255.255.0.0,CLASS C的SUBNET MASKS为255.255.255.0。
假如某台主机的SUBNET MASKS为IP地址为202.119.115.78,它的SUBNET MASKS为255.255.255.0。将这两个数据作AND运算后,所得出的值中的非0的BYTE部分即为NETWORK ID 。运算步骤如下:
202.119.115.78的二进制值为:
11001010.01110111.01110011.01001110
255.255.255.0的二进制值为:
11111111.11111111.11111111.00000000
AND后的结果为:
11001010.01110111.01110011.00000000
转为二进制后即为:
202.119.115.0
它就是NETWORK ID,在IP地址中剩下的即为HOST ID,即为78,这样当有另一台主机 的IP 地址为202.119.115.83,它的SUBNET MASKS也是255.255.255.0,则其NETWORK ID 为202.119.115,HOST ID为83,因为这两台主机的NETWORK ID都是202.119.115,因此,这两台主机在同一网段内。
但是,在实际应用中,可能会有多个分布与各地的网络,而且,每个网络的主机数量并不很多,如果申请多个NETWORK ID,会造成IP资源的浪费,而且很不经济,如果我们在SUBNET MASKS上动一下手脚,可以在只申请一个NETWORK ID的基础上解决这个问题。
比如,我们有三个不同的子网,每个网络的HOST数量各为20、25和50,下面依次称为甲、乙和丙网,但只申请了一个NETWORK ID 就是202.119.115。首先我们把甲和乙网的SUBNET MASKS改为255.255.255.224,224的二进制为11100000,即它的SUBNET MASKS为:
11111111.11111111.11111111.11100000
这样,我们把HOST ID的高三位用来分割子网,这三位共有000、001、010、011、100、 101、110、111八种组合,除去000(代表本身)和111(代表广播),还有六个组合,也就是可提供六个子网,它们的IP地址分别为:(前三个字节还是202.119.115)
00100001~00111110 即33~62为第一个子网
01000001~01011110 即65~94为第二个子网
01100001~01111110 即97~126为第三个子网
10000001~10011110 即129~158为第四个子网
10100001~10111110 即161~190为第五个子网
11000001~11011110 即193~222为第六个子网
选用161~190段给甲网,193~222段给乙网,因为各个子网都支持30台主机,足以应付甲网和乙网20台和25台的需求。
再来看丙网,由于丙网有50台主机,按上述分割方法无法满足它的IP需求,我们 可以将它的SUBNET MASKS设为255.255.255.192, 由于192的二进制值为11000000,按上述方法,它可以划分为两个子网,IP地址为:
01000001~01111110 即65~126为第一个子网
10000001~10111110 即129~190为第二个子网
这样每个子网有62个IP可用,将65~126分配丙网,多个子网用一个NETWORK ID 即告实现。
如果将子网掩码设置过大,也就是说子网范围扩大。那么根据子网寻径规则,很可能发往和本地机不在同一子网内的目的机的数据,会因为错误的相与结果而认为是在同一子网内,那么,数据包将在本子网内循环,直到超时并抛弃。数据不能正确到达目的机,导致网络传输错误。如果将子网掩码设置得过小,那么就会将本来属于同一子网内的机器之间的通信当做是跨子网传输,数据包都交给缺省网关处理,这样势必增加缺省网关的负担,造成网络效率下降。因此,任意设置子网掩码是不对的,应该根据网络管理部门的规定进行设置。
随着IP地址资源的日趋枯竭,可供分配的IP地址越来越少,往往一个拥 有几百台计算机规模的网络只能得到区区几个IP地址,于是,许多人开始采用其他技术来扩展IP空间。
1.子网掩码设置
如果你所分配的IP地址仅能满足对主机的需求,但远不能满足你欲在局 域网中再建若干子网的需要,设置子网掩码就是你不得不采取的措施了。
子网掩码同样也以四个字节来表示,用来区分IP地址的网络号和主机号, 默认子网掩码如下表所示:
子网掩码(以十进制表示)
A类 255.0.0.0
B类 255.255.0.0
C类 255.255.255.0
当IP地址与子网掩码相与时,非零部分即被确认为网络号。
假如我们将子网掩码中第四字节最高位起的某些位由0修改成1,使本来应当属于主机号的 部分改变成为网络号,这样就实现了我们划分子网的目的。例如你得到了一个C类网络地址198.189.98,按常规,你所有的设备从198.189.98.0到198.189.98.254都将处于同一网络之中,但如果你需要将自己 的网络划分成5个子网以便管理,那就必须修改子网掩码255.255.255.0,将此 掩码的第四个字节中的前三位再拿出来充当子网掩码,即将第四字节的00000000 修改成11100000(十进制数为224),故应当将子网掩码设置为255.255.255.224。这样我们有001、010、011、100、101、110六种方式与之相与得到不同的网络号(除去000和111作为保留地址不能使用),各子网的前三个字节仍然是198.189.98。可以知道:如子网掩码的位数越多,能划分的子网数也就越多,但 是每个子网的主机数就会越少。子网掩码的划分设置也有一个缺点:划分的子网越多,损失的IP地址也会越多。因为每个子网都会保留全0或全1的两个地址而不能使用。
2.动态IP地址设置
DHCP(DynamicHostConfigurationProtocol)动态主机配置协议是一种 多个工作站共享IP地址的方法。当我们分配到的IP地址数目远小于一个网络工作站的数目时,如果为每个设备都分配一个固定的IP地址,则显然有一部分计 算机将不能连入网络。DHCP为我们提供了一个较好的解决方法,其前提条件是其中每一个设备都不是随时都需要连接入网,并且同一时刻上网的设备不会很多。动态IP地址,顾名思义就是每一个设备所取得的IP地址是非固定的,即计算机连入网络时自动申请取得一个合法的IP地址,断开网络时自动归还,以便其他计算机使用。这样,我们可以用较少的IP地址构建较大的网络,也可以 增加网络工作站的可移性,如果一台主机从一个子网移动到另一个子网时,由于网络号的不同将修改该计算机的IP地址,否则无法与其他主机通信,而如果我 们采用动态IP地址,就会减少网络管理的复杂性。现在DHCP已非常流行,所支持的软件很多,且可以运行于不同机器和平台。目前拨号上Internet的用户就基本上采用这种方法。
3.非路由地址
在IP地址范围内,IANA(InternetAssignedNumbersAuthority)将一部 分地址保留作为私人IP地址空间,专门用于内部局域网使用,这些地址如下表:
类 IP地址范围 网络数
A 10.0.0.0---10.255.255.255 1
B 172.16.0.0---172.31.255.255 16
C 192.168.0.0---192.168.255.255 255
这些地址是不会被Internet分配的,因此它们在Internet上也从来不会被路由,虽然它们不能直接和Internet网连接,但仍旧可以被用来和Internet通讯,我们可以根据需要来选用适当的地址类,在内部局域网中大胆地将这些地址当作公用IP地址一样地使用。在Internet上,那些不需要与Internet通讯的设备,如打印机、可管理集线器等也可以使用这些地址,以节省IP地址资源。
4.代理服务器
代理服务器其实是Internet上的一台主机设备,它有一个固定的IP地址,当你需要上Internet时,就向该服务器提出请求,代理服务器接受请求并为你 建立连接,然后将你所需要的服务返回信息通知你,所有的数据信息和通讯处理 都是通过代理服务器的IP地址来完成。这种情况下,我们局域网内部的主机就应使用非路由地址,这样,即能保证内部主机之间的通讯,又能拒绝外来网络的 直接访问请求。
代理服务器具有以下两个优点:一是如果你请求的数据已被同一网段上的其他人请求过了,那么大多数代理服务器都能从Cache中调用这些数据直接传给你,避免重新连接的时间和带宽;二是代理服务器可以保护你的内部网络不受入侵,也可以设置对某些主机的访问能力进行必要限制,这实际上起着代理防火墙 的作用。
支持代理服务器的软件也非常多,WinGate、MsProxy等都是非常流行的代理服务器软件。在中国,代理服务器的使用也越来越广泛,中国公众多媒体通讯网(169)其实就是一个巨大的使用代理服务器的例子。
5.地址翻译
所谓地址翻译实际上是路由器中的一个数据包处理过程。当数据包通过路由器时,地址翻译过程将其中的内部私有IP地址解析出来,将其翻译为一个合法的IP地址。地址翻译过程可以按预先定义好的地址表一一映射翻译,也可以将多个内部私有地址翻译为一个外部合法IP地址。由于网络内每个设备都有一个内部稳定的IP地址,所以这种方法具有较 强的网络安全控制性能。
什么是子网掩码
子网掩码不能单独存在,它必须结合IP地址一起使用。子网掩码只有一个作用,就是将某个IP地址划分成网络地址和主机地址两部分。
子网掩码的设定必须遵循一定的规则。与IP地址相同,子网掩码的长度也是32位,左边是网络位,用二进制数字“1”表示;右边是主机位,用二进制数字“0”表示。附图所示的就是IP地址为“192.168.1.1”和子网掩码为“255.255.255.0”的二进制对照。其中,“1”有24个,代表与此相对应的IP地址左边24位是网络号;“0”有8个,代表与此相对应的IP地址右边8位是主机号。这样,子网掩码就确定了一个IP地址的32位二进制数字中哪些是网络号、哪些是主机号。这对于采用TCP/IP协议的网络来说非常重要,只有通过子网掩码,才能表明一台主机所在的子网与其他子网的关系,使网络正常工作。
常用的子网掩码
子网掩码有数百种,这里只介绍最常用的两种子网掩码,它们分别是“255.255.255.0”和“255.255.0.0”。
1.子网掩码是“255.255.255.0”的网络:最后面一个数字可以在0~255范围内任意变化,因此可以提供256个IP地址。但是实际可用的IP地址数量是256-2,即254个,因为主机号不能全是“0”或全是“1”。
2.子网掩码是“255.255.0.0”的网络:后面两个数字可以在0~255范围内任意变化,可以提供2552个IP地址。但是实际可用的IP地址数量是2552-2,即65023个。
IP地址的子网掩码设置不是任意的。如果将子网掩码设置过大,也就是说子网范围扩大,那么,根据子网寻径规则,很可能发往和本地机不在同一子网内的目的机的数据,会因为错误的判断而认为目的机是在同一子网内,那么,数据包将在本子网内循环,直到超时并抛弃,使数据不能正确到达目的机,导致网络传输错误;如果将子网掩码设置得过小,那么就会将本来属于同一子网内的机器之间的通信当做是跨子网传输,数据包都交给缺省网关处理,这样势必增加缺省网关的负担,造成网络效率下降。因此,子网掩码应该根据网络的规模进行设置。
如果一个网络的规模不超过254台电脑,采用“255.255.255.0”作为子网掩码就可以了,现在大多数局域网都不会超过这个数字,因此“255.255.255.0”是最常用的IP地址子网掩码;笔者见到的最大规模的中小学校园网具有1500多台电脑,这种规模的局域网可以使用“255.255.0.0”。
默认子网掩码
在Windows 2000 Server中,如果给一个网卡指定IP地址,系统会自动填入一个默认的子网掩码。这是Windows 2000 Server为了节省用户输入时间自动产生的子网掩码。比如,局域网最常使用的IP地址“192.168.x.x”默认的子网掩码是“255.255.255.0”。一般情况下,IP地址使用默认子网掩码就可以了。
什么是子网掩码?子网掩码又叫网络掩码、地址掩码、子网络遮罩,它是一种用来指明一个IP地址的哪些位标识的是主机所在的子网以及哪些位标识的是主机的位掩码。子网掩码不能单独存在,它必须结合IP地址一起使用。子网掩码只有一个作用,就是将某个IP地址划分成网络地址和主机地址两部分。子网掩码(subnet mask)是每个使用互联网的人必须要掌握的基础知识,只有掌握它,才能够真正理解TCP/IP协议的设置。以下我们就来深入浅出地讲解什么是子网掩码。
如何划分子网?首先要熟记2 的幂:2 的0 次方到9 次方的值分别为:1,2,4,8,16,32,64,128,256和512。还有要明白的是:子网划分是借助于取走主机位,把这个取走的部分作为子网位。因此这个意味划分越多的子网,主机将越少。
子网掩码用于辨别IP 地址中哪部分为网络地址,哪部分为主机地址,有1 和0 组成,长32 位,全为1 的位代表网络号.不是所有的网络都需要子网,因此就引入1 个概念:默认子网掩码(default subnet mask).A 类IP 地址的默认子网掩码为255.0.0.0;B 类的为255.255.0.0;C 类的为255.255.255.0。
CIDR 叫做无类域间路由,ISP 常用这样的方法给客户分配地址,ISP 提供给客户1 个块(block size),类似这样:192.168.10.32/28,这排数字告诉你你的子网掩码是多少,/28 代表多少位为1,最大/32.但是你必须知道的一点是:不管是A类还是B类还是其他类地址,最大可用的只能为/30,即保留2 位给主机位。
划分子网的几个捷径:
1. 你所选择的子网掩码将会产生多少个子网?:2 的x 次方-2(x 代表子网位,即2 进制为1 的部分) PS:这里的x是指除去默认掩码后的子网位,例如网络地址192.168.1.1,掩码255.255.255.192,因为是C类地址,掩码为 255.255.255.0。那么255.255.255.192(x.x.x.11000000)使用了两个1来作为子网位。
2.每个子网能有多少主机?: 2 的y 次方-2(y 代表主机位,即2 进制为0 的部分)
3.有效子网是?:有效子网号=256-10 进制的子网掩码(结果叫做block size 或base number)
4.每个子网的广播地址是?:广播地址=下个子网号-1
5.每个子网的有效主机分别是?:忽略子网内全为0 和全为1 的地址剩下的就是有效主机地址.
最后有效1 个主机地址=下个子网号-2(即广播地址-1)
子网掩码(Subnet Mask)是一种用于指明网络地址和子网划分的32位二进制数。在IPv4地址中,子网掩码用于区分网络地址和主机地址,以实现网络地址的管理和划分。
子网掩码的主要作用是将某个IP地址划分成网络地址和主机地址两部分。在子网掩码中,将网络部分的位都设为1,将主机部分的位都设为0,这样在子网掩码和IP地址进行逻辑AND运算后,就可以得到网络地址。例如,IP地址为192.168.1.1,子网掩码为255.255.255.0,那么网络地址就是192.168.1.0。
子网掩码的常见表示方法是使用四个八位二进制数,每个八位二进制数用点分隔,例如255.255.255.0。另外,子网掩码也可以使用CIDR(Classless Inter-Domain Routing)记法表示,例如/24,表示前24位为网络部分,剩下8位为主机部分。
子网掩码的应用场景包括:
网络划分:通过子网掩码可以将一个大网络划分为多个小网络,每个小网络具有自己的子网掩码。
路由选择:在路由器中,子网掩码用于判断数据包的目的地是否在本地网络中,从而决定是否需要进行路由转发。
网络地址转换(NAT):在进行网络地址转换时,子网掩码用于判断哪些地址是公共网络地址,哪些地址是私有网络地址。
防止广播风暴:通过子网掩码可以限制广播域的范围,防止广播风暴的产生。