怎样计算IP地址

怎样计算IP地址,第1张

我们都知道,IP是由四段数字组成,在此,我们先来了解一下3类常用的IP
A类IP段  1000 到127255255255
B类IP段  128000 到191255255255
C类IP段  192000 到223255255255
XP默认分配的子网掩码每段只有255或0
A类的默认子网掩码 255000 一个子网最多可以容纳1677万多台电脑
B类的默认子网掩码 25525500一个子网最多可以容纳6万台电脑
C类的默认子网掩码 2552552550 一个子网最多可以容纳254台电脑
我以前认为,要想把一些电脑搞在同一网段,只要IP的前三段一样就可以了,今天,我才知道我错了。如果照我这说的话,一个子网就只能容纳254台电脑?真是有点笑话。我们来说详细看看吧。
要想在同一网段,只要网络标识相同就可以了,那要怎么看网络标识呢?首先要做的是把每段的IP转换为二进制。(有人说,我不会转换耶,没关系,我们用Windows自带计算器就行。打开计算器,点查看>科学型,输入十进制的数字,再点一下“二进制”这个单选点,就可以切换至二进制了。)
把子网掩码切换至二进制,我们会发现,所有的子网掩码是由一串[red]连续[/red]的1和一串[red]连续[/red]的0组成的(一共4段,每段8位,一共32位数)。
255000 11111111000000000000000000000000
2552550011111111111111110000000000000000
2552552550 11111111111111111111111100000000
这是A/B/C三类默认子网掩码的二进制形式,其实,还有好多种子网掩码,只要是一串连续的1和一串连续的0就可以了(每段都是8位)。如11111111111111111111100000000000,这也是一段合法的子网掩码。子网掩码决定的是一个子网的计算机数目,计算机公式是2的m次方,其中,我们可以把m看到是后面的多少颗0。如2552552550转换成二进制,那就是11111111111111111111111100000000,后面有8颗0,那m就是8,2552552550这个子网掩码可以容纳2的8次方(台)电脑,也就是256台,但是有两个IP是不能用的,那就是最后一段不能为0和255,减去这两台,就是254台。我们再来做一个。
2552552480这个子网掩码可以最多容纳多少台电脑?
计算方法:
把将其转换为二进制的四段数字(每段要是8位,如果是0,可以写成8个0,也就是00000000)
1111111111111111111100000000000
然后,数数后面有几颗0,一共是有11颗,那就是2的11次方,等于2048,这个子网掩码最多可以容纳2048台电脑。
一个子网最多可以容纳多少台电脑你会算了吧,下面我们来个逆向算法的题。
一个公司有530台电脑,组成一个对等局域网,子网掩码设多少最合适?
首先,无疑,530台电脑用B类IP最合适(A类不用说了,太多,C类又不够,肯定是B类),但是B类默认的子网掩码是25525500,可以容纳6万台电脑,显然不太合适,那子网掩码设多少合适呢?我们先来列个公式。
2的m次方=560
首先,我们确定2一定是大于8次方的,因为我们知道2的8次方是256,也就是C类IP的最大容纳电脑的数目,我们从9次方一个一个试2的9次方是512,不到560,2的10次方是1024,看来2的10次方最合适了。子网掩码一共由32位组成,已确定后面10位是0了,那前面的22位就是1,最合适的子网掩码就是:11111111111111111111110000000000,转换成10进制,那就是2552552520。
分配和计算子网掩码你会了吧,下面,我们来看看IP地址的网段。
相信好多人都和偶一样,认为IP只要前三段相同,就是在同一网段了,其实,不是这样的,同样,我样把IP的每一段转换为一个二进制数,这里就拿IP:19216801,子网掩码:2552552550做实验吧。
19216801
11000000101010000000000000000001
(这里说明一下,和子网掩码一样,每段8位,不足8位的,前面加0补齐。)
IP11000000101010000000000000000001
子网掩码11111111111111111111111100000000
在这里,向大家说一下到底怎么样才算同一网段。
要想在同一网段,必需做到网络标识相同,那网络标识怎么算呢?各类IP的网络标识算法都是不一样的。A类的,只算第一段。B类,只算第一、二段。C类,算第一、二、三段。
算法只要把IP和子网掩码的每位数AND就可以了。
AND方法:0和1=0 0和0=0 1和1=1
如:And 19216801,2552552550,先转换为二进制,然后AND每一位
IP11000000101010000000000000000001
子网掩码11111111111111111111111100000000
得出AND结果网络标识  11000000101010000000000000000000
转换为十进制19216800,这就是网络标识,
再将子网掩码反取,也就是00000000000000000000000011111111,与IP AND
得出结果00000000000000000000000000000001,转换为10进制,即0001,
这0001就是主机标识。要想在同一网段,必需做到网络标识一样。
我们再来看看这个改为默认子网掩码的B类IP
如IP:1881880111,1881885222,子网掩码都设为2552552540,在同一网段吗?
先将这些转换成二进制
1881880111 10111100101111000000000001101111
1881885222 10111100101111000000010111011010
2552552540 11111111111111111111111000000000
分别AND,得
10111100101111000000000000000000
10111100101111000000010000000000
网络标识不一样,即不在同一网段。
判断是不是在同一网段,你会了吧,下面,我们来点实际的。
一个公司有530台电脑,组成一个对等局域网,子网掩码和IP设多少最合适?
子网掩码不说了,前面算出结果来了11111111111111111111110000000000,也就是2552552520
我们现在要确定的是IP如何分配,首先,选一个B类IP段,这里就选188188xx吧
这样,IP的前两段确定的,关键是要确定第三段,只要网络标识相同就可以了。我们先来确定网络号。(我们把子网掩码中的1和IP中的对就起来,0和对应起来,如下:)
2552552520 11111111111111111111110000000000
188188xx1011110010111100
网络标识 10111100101111000000000000
由此可知,处随便填(只能用0和1填,不一定全是0和1),我们就用全填0吧,处随便,这样呢,我们的IP就是
1011110010111100000000,一共有530台电脑,IP的最后一段1~254可以分给254台计算机,530/254=2086,采用进1法,得整数3,这样,我们确定了IP的第三段要分成三个不同的数字,也就是说,把000000中的填三次数字,只能填1和0,而且每次的数字都不一样,至于填什么,就随我们便了,如00000001,00000010,00000011,转换成二进制,分别是1,2,3,这样,第三段也确定了,这样,就可以把IP分成1881881y,1881882y,1881883y,y处随便填,只要在1~254范围之内,并且这530台电脑每台和每台的IP不一样,就可以了。
有人也许会说,既然算法这么麻烦,干脆用A类IP和A类默认子网掩码得了,偶要告诉你的是,由于A类IP和A类默认子网掩码的主机数目过大,这样做无疑是大海捞针,如果同时局域网访问量过频繁、过大,会影响效率的,所以,最好设置符合自己的IP和子网掩码

可利用工具快速灵活地规划局域网IP地址。
以路由器工具包 Wildcard为例进行讲解:

单击“子网掩码计算器”;

输入任意一个想用的私有IP地址;

如:A类私有地址:10001

调整掩码位数;

注意观察主机最多数;

建议取最接近规划主机数的大值;

如:规划相应子网容纳500个主机,则取掩码位数:23;主机最多510;

可查看到符合要求的最多子网数;

任取一个或多个子网使用即可;

可查看到当前网络地址;

子网掩码;

可用IP地址范围;

单击“下一个子网”,可查看下一个子网的信息;

单击“前一个子网”,可查看前一个子网的信息;

单击“显示下20个子网”;

可以记事本方式查看下20个子网的信息;

看了一下资料 你就会了 自己掌握了才是知识
一、IP地址概念
IP地址是一个32位的二进制数,它由网络ID和主机ID两部份组成,用来在网络中唯一的标识的一台计算机。网络ID用来标识计算机所处的网段;主机ID用来标识计算机在网段中的位置。IP地址通常用4组3位十进制数表示,中间用“”分隔。比如,19216801。
补充[IPv6]:前面所讲的32位IP地址称之为IPv4,随着信息技术的发展,IPv4可用IP地址数目已经不能满足人们日常的需要,据权威机构预测到2010年要充分应用信息技术,每个人至少需要10个IP地址,比如:计算机、笔记本、手机和智能化冰箱等。为了解决该问题开发了IPv6规范,IPv6用128位表示IP地址,其表示为8组4位16进制数,中间为“:”分隔。比如,AB32:33ea:89dc:cc47:abcd:ef12:abcd:ef12。
二、IP地址分类
为了方便IP寻址将IP地址划分为A、B、C、D和E五类,每类IP地址对各个IP地址中用来表示网络ID和主机ID的位数作了明确的规定。当主机ID的位数确定之后,一个网络中是多能够包含的计算机数目也就确定,用户可根据企业需要灵活选择一类IP地址构建网络结构。
A类A类地址用IP地址前8位表示网络ID,用IP地址后24位表示主机ID。A类地址用来表示网络ID的第一位必须以0开始,其他7位可以是任意值,当其他7位全为0是网络ID最小,即为0;当其他7位全为1时网络ID最大,即为127。网络ID不能为0,它有特殊的用途,用来表示所有网段,所以网络ID最小为1;网络ID也不能为127;127用来作为网络回路测试用。所以A类网络网络ID的有效范围是1-126共126个网络,每个网络可以包含224-2台主机。
B类B类地址用IP地址前16位表示网络ID,用IP地址后16位表示主机ID。B类地址用来表示网络ID的前两位必须以10开始,其他14位可以是任意值,当其他14位全为0是网络ID最小,即为128;当其他14位全为1时网络ID最大,第一个字节数最大,即为191。B类IP地址第一个字节的有效范围为128-191,共16384个B类网络;每个B类网络可以包含216-2台主机(即65534台主机)。
C类C类地址用IP地址前24位表示网络ID,用IP地址后8位表示主机ID。C类地址用来表示网络ID的前三位必须以110开始,其他22位可以是任意值,当其他22位全为0是网络ID最小,IP地址的第一个字节为192;当其他22位全为1时网络ID最大,第一个字节数最大,即为223。C类IP地址第一个字节的有效范围为192-223,共2097152个C类网络;每个C类网络可以包含28-2台主机(即254台主机)。
D类D类地址用来多播使用,没有网络ID和主机ID之分,D类IP地址的第一个字节前四位必须以1110开始,其他28位可以是任何值,则D类IP地址的有效范围为224000到239255255255。
E类E类地址保留实验用,没有网络ID和主机ID之分,E类IP地址的第一字节前四位必须以1111开始,其它28位可以是任何值,则E类IP地址的有效范围为240000至255255255254。其中2552552552555表示广播地址。
在实际应用中,只有A、B和C三类IP地址能够直接分配给主机,D类和E类不能直接分配给计算机。
三、网络ID、主机ID和子网掩码
网络ID用来表示计算机属于哪一个网络,网络ID相同的计算机不需要通过路由器连接就能够直接通信,我们把网络ID相同的计算机组成一个网络称之为本地网络(网段);网络ID不相同的计算机之间通信必须通过路由器连接,我们把网络ID不相同的计算机称之为远程计算机。
当为一台计算机分配IP地址后,该计算机的IP地址哪部份表示网络ID,哪部份表示主机ID,并不由IP地址所属的类来确定,而是由子网掩码确定。子网确定一个IP地址属于哪一个子网。
子网掩码的格式是以连续的255后面跟连续的0表示,其中连续的255这部份表示网络ID;连续0部份表示主机ID。比如,子网掩码25525500和2552552550。
根据子网掩码的格式可以发现,子网掩码有0000、255000、25525500、2552552550和255255255255共五种。采用这种格式的子网掩码每个网络中主机的数目相差至少为256倍,不利于灵活根据企业需要分配IP地址。比如,一个企业有2000台计算机,用户要么为其分配子网掩为25525500,那么该网络可包含65534台计算机,将造成63534个IP地址的浪费;要么用户为其分配8个2552552550网络,那么必须用路由器连接这个8个网络,造成网络管理和维护的负担。
网络ID是IP地址与子网掩码进行与运算获得,即将IP地址中表示主机ID的部份全部变为0,表示网络ID的部份保持不变,则网络ID的格式与IP地址相同都是32位的二进制数;主机ID就是表示主机ID的部份。
例题1:IP地址:1921682335 子网掩码:25525500
网络ID:19216800 主机ID:2335
例题2:IP地址:1921682335 子网掩码:2552552550
网络ID:192168230 主机ID:35
四、子网和CIDR
将常规的子网掩码转换为二进制,将发现子网掩格式为连续的二进制1跟连续0,其中子网掩码中为1的部份表示网络ID,子网掩中为0的表示主机ID。比如25525500转换为二进制为11111111 11111111 00000000 00000000。
在前面所举的例子中为什么不用连续的1部份表示网络ID,连续的0部份表示主机ID呢?答案是肯定的,采用这种方案的IP寻址技术称之为无类域间路由(CIDR)。CIDR技术用子网掩码中连续的1部份表示网络ID,连续的0部份表示主机ID。比如,网络中包含2000台计算机,只需要用11位表示主机ID,用21位表网络ID,则子网掩码表示为11111111111111111110000000000000,转换为十进制则为2552552240。此时,该网络将包含2046台计算机,既不会造成IP地址的浪费,也不会利用路由器连接网络,增加额外的管理维护量。
CIDR表示方法:IP地址/网络ID的位数,比如1921682335/21,其中用21位表示网络ID。
例题1:1921682335/21
子网掩码:11111111 11111111 11111000 00000000则为2552552480
网络ID:192168000101110(其中第三个字节红色部分表示网络ID,其他表示主机ID,网络ID是表示网络ID部份保持不变主机ID全部变为0)则网络ID为192168160
起始IP地址:192168161(主机ID不能全为0,全为0表示网络ID最后一位为1)
结束IP地址:1921680001011111111110(主机ID不能全为1,全为1表示本地广播)则结束IP地址为:19216823254。
例题2:将16313500划分为16个子网,计算前两个子网的网络ID、子网掩码、起止IP地址。
第1步:用CIDR表示16313500/20,则子网掩码为255255240(11110000)0。
第2步:第一网络ID(子网掩码与IP地址与运算):16313500
第一个IP地址:16313501 结束IP地址:16313515254;
第3步:第二网络ID:163135160
第一个IP地址:163135161 结束IP地址:16313531254。
五、子网掩码和网络ID的快速计算方法
CIDR的子网掩码都是连续的1跟连接的0表示,则子网掩码有以下几种表示方法:
0000 0000 0
1000 0000 128
1100 0000 128+64=192
1110 0000 128+64+32=224
1111 0000 255-15=240
1111 1000 255-7=248
1111 1100 255-3=252
1111 1110 255-1=254
1111 1111 255
大家都知道11111111的十进制数为255,那么我们怎么来快速计算子网掩码呢?二进制的1=1,11=3,111=7,1111=15;那么1111 1110=255-1,1111 1100=255-3,1111 1000=255-8,1111 0000=255-15这样是不是就很快呢?只要我们一旦确定子网掩码中有多少位表示网络ID,那么我们马上就可以写出子网掩码了。那么,对于1000 0000,1100 0000和1110 0000 我们又该怎么计算呢?27=8则1000 0000=128,1100 0000=128+64,1110 0000=128+64+32,所以我们不需要去记住每一个为多少,只需要做做简单的加减法就搞定子网掩码的计算。
网络ID的结果大家都知道网络ID部份不变,主机ID部分全部变为0,那么在计算网络ID时,首先看子网掩码中有多少位用来表示网络,相应在将IP地址转换为二进制时就只转换前面几位,比如19216817615/19,网络ID一共19位,则网络ID前两个字节为192168X0发生变化的为第三个字节。那么怎样快速计算出这个变化的X的值呢?我们知道第三字节只有三位表示网络ID,转换时176>128,第1位为1,176-128=48<64,第2位为0,48>32第3位为1,剩下的计算就没有意义了,全都要转换为0,则网络ID为10100000,则网络ID为1921681600,这样计算反而出错的可能性很小。
六、本地和远程网络概念
网络ID相同的计算机称之为本地网络,本地网络中的计算机相互通信不需要路由器连接;网络ID不相同的计算机称之为远程网络,远程网络中的计算机要相互通信必须通过路由器连接。
例题:1921681014/28,1921681015/28,1921681016/28,1921681031/28哪些是合法IP,哪些是非法IP地址?
主机ID全为0和主机ID全为1的为非法IP地址:1921681015/28、1921581016/28、1921681031/28都是非法IP地址。
例题:1921681014/28,1921681015/28,1921681016/28哪个不是同一网段?
网络ID相同的就属于同一网段,则1921681016/28不属于同一网段。
七、子网数和主机数的计算方法
例题:1721683456/20,一共划分为了多少个子网,各子网可以包含多少台主机。
1721683456是一个B类地址,B类地址用16位表示网络ID,题目中20位表示网络ID,则子网位数为4位,那么子网就有24次个(即从0000、0001到1111的16种变化)。
由于IP地址是32位,用20位表示网络ID,则主机ID的位数为12位,则每个子网可以包含212-2个IP地址,即可以包含4096个IP地址。
注意:为什么计算IP地址时要减2,而计算子网数目时不减2呢?IP地址减2的原因是主机ID不能全为0也不能全为1;子网就不存在这个问题。
八、公共IP和私有IP地址
IP地址由IANA(Internet地址分配机构)管理和分配,任何一个IP地址要能够在Internet上使用就必须由IANA分配,IANA分配的能够在Internet上正常使用的IP地址称之为公共IP地址;IANA保留了一部份IP地址没有分配给任何机构和个人,这部份IP地址不能在Internet上使用,此类IP地址就称之为私有IP地址。为什么私有IP地址不能在Internet上使用呢?因为Internet上没有私有IP地址的路由。私有IP地址范围包括:
A类:10000/8
B类:1721600/12 即1721601-17231255254共16个B类网络
C类:19216800/16即19216801-192168255254共256个C类网络
九、路由概念、Ping、Ipconfig、Route和Tracert命令
通过路由器将数据从一个网络传输到另一个网络称之为路由。路由选择负责在网络中选择一段最优先的路径将数据传输到目的网络,路由选择的基础和依据是路由表,路由表由目的网络ID、子网掩码、网关、接口和计费组成,通过route print可查看计算机的路由表。
Ping命令三种结果 Ipconfig命令 Tracert命令
目的地不可到达:路由表无目的地记录
超时:网关设置错有路由表记录
Ping通过:正常
更多资料请访问:>

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/10453437.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-08
下一篇 2023-05-08

发表评论

登录后才能评论

评论列表(0条)

保存