将IP地址分成了网络号和主机号两部分,设计者就必须决定每部分包含多少位。网络号的位数直接决定了可以分配的网络数(计算方法2^网络号位数);主机号的位数则决定了网络中最大的主机数(计算方法2^主机号位数-2)。然而,由于整个互联网所包含的网络规模可能比较大,也可能比较小,设计者最后聪明的选择了一种灵活的方案:将IP地址空间划分成不同的类别,每一类具有不同的网络号位数和主机号位数。
例如:
192.168.1.120 /255.255.255.0
如何算出它的网络号.主机号
这个从二进制角度说比较方便。
首先把地址和掩码转换为二进制(熟了就不用了)
IP地址:11000000.10101000.00000001.01111000
掩 码:11111111.11111111.11111111.00000000
(掩码24个1,就是说这个地址是24位掩码的)
掩码为1的部分表示网络号,为0的部分表示主机号。
IP地址与掩码相与得出网络地址,
换个算法就是地址的前24位(掩码1的个数)后面补0是网络地址
2. 网络号是如何计算的
1、标准的网络号是,
A类是前8位
B类是前16位
C类是前24位
举一个例子
如172.16.10.2,因为172.16.10.2是B类地址,所以172.16所代表的位就是网络号的位,后面10.2代表的位是主机位,A类C类和例子结构相同,就是位数不同。
2、如果不是标准的,就是要划子网的,就不一样了。要看后面的位数来确定
如192.168.15.2/26,后面的26代表网络号位数是26位,剩下的6位是主机号;前24位是标准的网络号,后俩位是为划分子网从主机号分出来的,也划分到网络号里。
这个是别人的例子:
将子网掩码化为2进数得11111111.11111111.11111111.11111000 那么可看出主机编号部分转化为子网掩码部分的位数m=5 (这个5就是248转化为2进数所得的11111000中1的个数)。。。。m=5就可算出这个LAN里可化的每个子网的主机数:就是2的5次方。。。。算得32台(主机)。。。。
继续:一号子网是192.168.5.1~192.168.5.31 / 二号子网是192.168.5.33~192.168.5.62 / 三号子网是192.168.5.65~192.168.5.94 / 四号子网是192.168.5.97~192.168.5.126 / 五号子网是192.168.5.129~192.168.5.158 / 六号子网是192.168.5.161~192.168.5.190 / 七号子网是192.168.5.193~192.168.5.222 / 八号子网是192.168.5.225~192.168.5.254
这下你看,你的主机192.168.5.121 在哪个子网号里? 答案得出:4号!!!
3. 子网掩码的网络号、主机号怎么计算
为了确切地标识Internet中的主机和路由器,TCP/IP建立了一套编址方案,为每台主机和路由器分配一个全网唯一的地址。这个地址的名字就是IP地址。
值得注意的是,一台主机至少拥有一个IP地址,允许一台主机拥有多个IP地址。(计算机可以有几个身份证但是人只能有一个),类似于居民身份证号,主机的身份证号也有一定的规律。
在人少的时候,身份证号的位数就要求少一些;当居民变多,以前的位数号码所能表示的最大人口数量超过这个国家的人口数量时,身份证就要升级,将身份证号码增长一点点,IP地址也是,因此机器数量少的时候用的是IPv4;
目前仍在使用的IP地址是IPv4版本的,由四个字节组成,每个字节8位二进制数,就是说目前的IP地址由32位二进制数组成,32个000011111等,用点分十进制法,将这32位二进制数字每八位划分一次,每8位数对应一个十进制数,这样32位地址就变成了四个用点隔开的十进制数字了;
IP地址由几个信息一起组成的,由网络号和主机号四个字段组成,如果把网络号比作小区,主机号就相当于小区里面的各个房子的门牌号。有些网络拥有很多主机,而有些网络上的主机很少,类似于小区一样,IP地址分为五类,A类到E类,大量使用的是A,B,C类。
A类地址:8位网络号(0开头)+24位主机号、B类地址:16位网络号(10开头)+16位主机号、C类地址:24位网络号(110开头)+8位主机/号、D类:组播地址、E类:保留以后再用。(注意,网络号不能全部为0或者全部为1.IP地址也不能全部为0或者全部为1);
由此得到A类网络地址范围为00000001~01111111.用点分十进制记法,把他们分别换算成十进制,就是1~127;
同理,B类网络地址的范围为10000000 00000001-10111111 11111111为128.1~191.255,C类:11000000 00000000~11011111 11111111.即192.0~223.255;
子网掩码:当一个小区越修越大,可能就会将本小区划分为几个分区或者几期工程。当一个单位的主机很多而且分布在较大地理位置时,可以将本单位所属主机划分为若干个子网,然后各个子网之间用路由器互联。
由于网络号已经分好了,内部再划分的子网号的字段就不能加到网络号中了。我们将子网号的字段加到主机号字段中,规定用一个32位的子网掩码来表示子网号字段的长度。
子网掩码由一连串的1和一连串的0构成,1对应于网络号和子网号字段,0对应于主机号。比如:某单位要分配一个C类IP地址为202.114.16.0.加入这个单位的主机要划分5个子网,5转换为二进制为101,所以要用3个二进制表示子网字段。
若这个主机要划分为2个子网,2转换为二进制为10,所以要用2个二进制表示子网字段。若要划分为9个,9转化为二进制是1001,就需要4个二进制表示子网字段了,这里以划分为5个子网,用3个二进制子网字段为例:
C类的网络号为3个字节,24个二进制长度,主机号为1个字节,8个二进制长度,C类IP地址为110XXXXX XXXXXXXX XXXXXXXX+子网号(这里为101)+主机号,网络号对应到子网掩码是1;
因此110XXXXX XXXXXXXX XXXXXXXX→11111111 11111111 11111111,子网号对应到子网掩码也是1,这里子网号为101,对应过去就是111;主机号对应到0,因此,这个C类地址对应的完整的子网掩码就是:11111111 11111111 11111111 11100000;
当外界访问这个单位的主机时,路由器用子网掩码和目的地址相“与”(1+1=1,0+1=0,1+0=0,0+0=0),得到的结果中最后一个字节由子网号和主机号构成。
(3)网络号怎么求扩展阅读:
当然,单位也可以不划分子网,此时子网掩码为默认值,此时1的长度就是网络号的长度;A类地址默认的子网掩码是11111111 00000000 00000000 00000000(255.0.0.0);
B类地址的是11111111 11111111 00000000 00000000(255.255.0.0),C类的是11111111 11111111 11111111 00000000(255.255.255.0)。
子网划分与实例根据以上分析,建议按以下步骤和实例定义子网掩码。
1、将要划分的子网数目转换为2的m次方。如要分8个子网,8=2³。
2、取上述要划分子网数的2的m次方的幂。如2³,即m=3。
3、将上一步确定的幂m按高序占用主机地址m位后转换为十进制。
4. 已知一个IP地址,怎么求网络ID号
将IP和子网掩码都化成二进制..原后按位一一相与.1与1=1.1与0=0 得到的就是网络号.
如.192.168.0.1 255.255.255.0 其中,255.255.255.0化成二进制就是11111111.11111111.11111111.0与IP想与后就是192.168.0.0..192.168.0.0就是他的网络号
5. 如何计算网络号和主机号
IP地址的网络号和主机号是通过子网掩码来计算的。具体计算方法如下:
例如:
有一个C类地址为:192.9.200.13其缺省的子网掩码为: 255.255.255.0
IP地址192.9.200.13,转换为二进制,
子网掩码255.255.255.0,转换为二进制,
它的网络号计算方法:将两个二进制数做按位与(&)运算后得出的结果即为网络号,
&
-------------------------------------------------------------
=192.9.200. 0即网络号为192.9.200.0。
它的主机号计算方法:将子网掩码取反再与IP地址按位与(&)后得到的结果即为主机号,
&
------------------------------------------------------------
=0.0.0.13即主机号为13(或者0.0.0.13)。
(5)网络号怎么求扩展阅读:
主机地址
IP地址是TCP/IP网络中用来唯一标识每台主机或设备的地址,IP地址由32位(共四个八位组)的二进制组成。IP地址分为两部分,左边网络编号部分用来标识主机所在的网络;右边部分用来标识主机本身,这部分称为主机地址。连接到同一网络的主机必须拥有相同的网络编号。
一个IP地址的网络部分被称为网络号或者网络地址,主机可以与具有相同的网络号的设备直接通讯,在没有连接设备的情况下,即使共享相同的物理网段,网络号不同则无法进行通讯,IP 地址的网络地址使路由器可以将分组置于正确的网段上 。
IP 地址网络号后的主机号可以使路由器能够二层帧封装的分组传送到网络上的一台特定的主机,使主机号与 MAC 地址进行正确的映射中的关键问题在于使用子网掩码来确定或者获取远程主机的网络地址信息。网络地址之后的部分为主机地址。
6. 已知IP地址和子网掩码怎么求网络号、子网号
每一位最大是255,就是0-255,一共是256 其实就是16进制的FF,掩码就是1不能变,0可以随便变,所以最后是0就表示 最后的8位都是0 ,一共是2的8次方=256. 简单算就是256-0=256
256-0 = 256 此子网是包括 162.9.20.18在内的有256个地址的子网
子网号是 162.9.20.0 主机号就是(本身就是) 162.9.20.18
162是 B类地址(这个是规定的) 所以 网络号是 162.9.0.0
7. 已知IP地址和子网掩码如何求网络号
要看子网掩码变长在第几节,255.255.255.224是在第四节借了位
把224转换为2进制,windows的计算器科学型能帮你计算。是11100000,借了三位
借了三位,子网个数为2的三次方等于8
即八个子网
其实书上说得挺复杂,我感觉,计算网络号最简单的方法...
8. 网络号位数怎么计算的
标准的网络号是,A类是前8位 ,B类是前16位 ,C类是前24位 ,举一个例子 ,如172.16.10.2,因为172.16.10.2是B类地址,所以172.16所代表的位就是网络号的位,后面10.2代表的位是主机位,A类C类和例子结构相同,就是位数不同。
如果不是标准的,就是要划子网的,就不一样了。要看后面的位数来确定 ,如192.168.15.2/26,后面的26代表网络号位数是26位,剩下的6位是主机号;前24位是标准的网络号,后俩位是为划分子网从主机号分出来的,也划分到网络号里。
9. 已知网络号如何求子网掩码
类范围:IP地址常采用点分十进制表示方法:X.Y.Y.Y,在这里,X=1--126时称为A类地址;X=128--191时成为B类地址;X=192--223时称为C类地址;如10.202.52.130,因为X=10在1--126范围内所以称为A类地址,默认子网掩码:A类为255.0.0.0;B类为255.255.0.0;C类为255.255.255.0
当我们要划分子网用到子网掩码M时,类子网掩码的格式应为:A类为255.M.0.0;B类为255.255.M.0;C类为255.255.255.M. M是相应的子网掩码,如255.255.255.240
十进制计算基数:256.等一下我们所有的十进制计算都要用256来进行
几个公式变量的说明:
Subnet_block:可分配子网块的大小,指在某一子网掩码下的子网的块数.
Subnet_num:实际可分配子网数,指可分配子网块中要剔除首,尾两块,这是某一子网掩码下可分配的实际子网数量,它等于Subnet_block-2
IP_block:每个子网可分配的IP地址块大小
IP_num:每个子网实际可分配的IP地址数,因为每个子网的首,尾IP地址必须保留(一个为网络地址,一个为广播地址),所以它等于IP_block-2.IP_num也用于计算主机段
M:子网掩码(net mask)
他们之间的公式如下:
M=256-IP_block
IP_block=256/Subnet_block,反之Subnet_block=256/IP_block
IP_num=IP_block-2
Subnet_num=Subnet_block-2
2的冥数:要熟练掌握2^8(256)以内的2的冥数的十进制数,如128=2^7,64=2^6....,这可使我们立即推算出Subnet_block和IP_block数.
现在我们举一些例子:
一,已知所需子网数12,求实际子网数
解:这里实际子网数指Subnet_num,由于12最接近2的冥数为16(2^4),既Subnet_block=16,那么Subnet_num=16-2=14,故实际子网数为14.
二,已知一个B类子网每个子网主机数要达到60X255(约相当于X.Y.0.1--X.Y.59.254的数量)个,求子网掩码
解:1. 60接近2的冥数为64(2^6),即IP_block=64
2. 子网掩码M=256-IP_block=256-64=192
3. 子网掩码格式B类是:255.255.M.0,所以子网掩码为:255.255.192.0
三.如果所需子网数为7,求子网掩码
解:1. 7最接近2的冥为8,但8个Subnet_block因为要保留首,尾2个子网块,即8-2=6<7,并不能达到所需子网数,所以应该取2的冥为16,即Subnet_block=16
2. IP_block=256/Subnet_block=256/16=16
3. 子网掩码M=256-IP_block=256-16=240
四.已知网络地址为211.134.12.0,要有4个子网,求子网掩码及主机段
解:1. 211.Y.Y.Y是一个C类网,子网掩码格式为255.255.255.M
2. 4个子网,4接近2的冥是8(2^3),所以Subnet_block=8,Subnet_num=8-2=6
3. IP_block=256/Subnet_block=256/8=32
4. 子网掩码M=256-IP_block=256-32=224
5. 所以子网掩码表示为255.255.255.224
6. 因为子网块中的可分配主机又有首,尾两个不能使用,所以可分配6个子网块(Subnet_num),每块32个可分配主机块(IP_block) 即:32-63,64-95,96-127,128-159,160-191,192-223
首块(0-31)和尾块(224-255)不能使用
7. 每个子网块中的可分配主机块又有首,尾两个不能使用(一个是子网网络地址,一个是子网广播地址),所以主机段分别为:33-62,65-94,97-126,129-158,161-190,193-222
8. 所以子网掩码为255.255.255.224 主机段共6段为:211.134.12.33--211.134.12.62;
211.134.12.65--311.134.12.94;211.134.12.97--211.134.12.126;211.134.12.129--211.134.12.158;
211.134.12.161--211.134.12.190;211.134.12.193--211.134.12.222 可以任选其中的4段作为4个子网.
介绍子网掩码的两种简便算法
IP地址是32位的二进制数值,用于在TCP/IP通讯协议中标记每台计算机的地址。通常我们使用点式十进制来表示,如192.168.0.5等等。
每个IP地址又可分为两部分。即网络号部分和主机号部分:网络号表示其所属的网络段编号,主机号则表示该网段中该主机的地址编号。按照网络规模的大小,IP地址可以分为A、B、C、D、E五类,其中A、B、C类是三种主要的类型地址,D类专供多目传送用的多目地址,E类用于扩展备用地址。A、B、C三类IP地址有效范围如下表:
类别 网络号 /占位数 主机号 /占位数 用途
A 1~126 / 8 0~255 0~255 1~254 / 24 国家级
B 128~191 0~255 / 16 0~255 1~254 / 16 跨过组织
C 192~223 0~255 0~255 / 24 1~254 / 8 企业组织
随着互连网应用的不断扩大,原先的IPv4的弊端也逐渐暴露出来,即网络号占位太多,而主机号位太少,所以其能提供的主机地址也越来越稀缺,目前除了使用NAT在企业内部利用保留地址自行分配以外,通常都对一个高类别的IP地址进行再划分,以形成多个子网,提供给不同规模的用户群使用。
这里主要是为了在网络分段情况下有效地利用IP地址,通过对主机号的高位部分取作为子网号,从通常的网络位界限中扩展或压缩子网掩码,用来创建某类地址的更多子网。但创建更多的子网时,在每个子网上的可用主机地址数目会比原先减少。
子网掩码是标志两个IP地址是否同属于一个子网的,也是32位二进制地址,其每一个为1代表该位是网络位,为0代表主机位。它和IP地址一样也是使用点式十进制来表示的。如果两个IP地址在子网掩码的按位与的计算下所得结果相同,即表明它们共属于同一子网中。
在计算子网掩码时,我们要注意IP地址中的保留地址,即“ 0”地址和广播地址,它们是指主机地址或网络地址全为“ 0”或“ 1”时的IP地址,它们代表着本网络地址和广播地址,一般是不能被计算在内的。
下面就来以实例来说明子网掩码的算法:
对于无须再划分成子网的IP地址来说,其子网掩码非常简单,即按照其定义即可写出:如某B类IP地址为 10.12.3.0,无须再分割子网,则该IP地址的子网掩码为255.255.0.0。如果它是一个C类地址,则其子网掩码为 255.255.255.0。其它类推,不再详述。下面我们关键要介绍的是一个IP地址,还需要将其高位主机位再作为划分出的子网网络号,剩下的是每个子网的主机号,这时该如何进行每个子网的掩码计算。
一、利用子网数来计算
在求子网掩码之前必须先搞清楚要划分的子网数目,以及每个子网内的所需主机数目。
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,得到 255.255.248.0
即为划分成 27个子网的B类IP地址 168.195.0.0的子网掩码。
二、利用主机数来计算
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的子网掩码。
转载