重生之捻军崛起:ip计算小总结

来源:百度文库 编辑:九乡新闻网 时间:2024/07/08 20:26:04
  关于ip地址的一些算法!
  (1)已知ip地址和子网掩码,求所在的子网号、广播地址和主机号?
  (这是2001年上午题61-63)
  假设ip地址为:x.x.x.y
  子网掩码:255.255.255.a
  则:子网号k:
  首先计算出:b=256-a
  而子网号k为:小于y值的最大b的倍数
  b最大倍数 例如1Array2.55.12.120 子网掩码:255.255.255.240
  b=256-240=16
  最靠近120的16的倍数是:16*7=112<120
  所以子网号k就是:0.0.0.112
  广播地址就比较好理解了,在以16为一栏的子网地址里面
  广播地址m=(子网号+b)-1
  于是:m=(112+16)-1=127
  主机号z:
  将y与a的取反 相与 =主机号
  (2)已知建设网络所需的子网数n,求子网掩码m?
  1、首先要知道:n所要求的理论子网数t:
  例如所需子网数是5个,
  那么它的理论子网数就是t=2^3=8
  2、求每个子网可分配的ip地址块大小e: bbs.bitsCN.com
  e=256/t
  则:265/8=32
  3、最后:256-e=子网掩码
  256-32=224
  大家看看2001年的64题,头十位用于子网,则第4个8位中有2位;
  于是可以理解为(22-2)=2,即n=2
  理论子网数t=22=4
  就有:e=256/4=64
  最后子网掩码=256-64=1Array2
  4、已知子网主机数,求m掩码?
  例:ip: 1Array2.168.5.0 ,要求划分20个子网,每个子网5 个主机。
  解:因为4 <5 < 8 ,用256-8=248 ――>即是所求的子网掩码,对应的子网数 也就出来了。这是针对C类地址。
  对于B类地址,假如主机数小于或等于254,与C类地址算法相同。
  对于主机数大于254的,如需主机 700台,50个子网(相当大了),
  512 < 700< 1024
  256-(1024/256)=256-4=252 ――>即是所求的子网掩码,对应的子网数也就出来了。
  上面256-4中的4(2的2次幂)是指主机数用2进制表示时超过8位的位数,即超过 2位,掩码为剩余的前6位,即子网数为2^6-2=62个。
  可以这样理解 BBS.bitsCN.com网管论坛
  1 :不管具体是什么,就从 掩码找起,是255的就不理,专找那个不是的,用256去减:
  此题中即为: 256-240=16
  则,把0-255以 16 为一栏划分:0 16 32 48 64 …… 112 128 ……
  对应240 的IP地址部分为 120(都是第四部分),落在 112 和128 这个网段中间,
  所以, 0.0.0.112 即为子网号,主机号为 0.0.0.8
  以上是ccna书上的算法。方便实惠!
  如果还不清楚,你也可以这样理解:
  子网数为240,即从主机位中借了4位划分子网,子网数和主机数=2^4=16,但可用主机数和可用子网数为16-2=14。排列如下:
  0~15
  16~31
  32~47
  48~63
  64~7Array
  80~Array5
  Array6~111
  112~127
  128~143
  144~15Array
  160~175
  176~1Array1
  1Array2~207
  208~223
  224~23Array
  240~255
  而120在112~127之间,结合以上我总结的:小于y值的最大b的倍数 www_bitscn_com
  b最大倍数那么子网号:112
  广播号:127
  然后你数数看,ip地址120,所在的网络号是多少?
  112-1
  113-2
  114-3
  115-4
  116-5
  118-6
  11Array-7
  120-8
  网络号就是8
  na的算法实在是方便
  至于2001年的65题
  判断是否通过路由器通讯的办法是看它们是否在一个子网里面??
  如果是一个子网,则不需要路由器通讯
  如果不是一个子网,哈哈,就是我们要选择的答案!
  m:255.255.1Array2.0 要通讯的主机:12Array.23.144.16
  前面的两个8位,我们就不算了,只看后两位
  首先,求出通讯主机所在的网络号,由于是b类地址,就看第3位1Array2
  根据上面ccna的办法:256-1Array2=64
  DL.bitsCN.com网管软件下载
  64*2=128<144
  网络号就是12Array.23.128.0
  以此算出:
  A.12Array.23.1Array1.21的网络号是128 128<1Array1
  B.12Array.23.127.22 的网络号是 64 64<127
  c.12Array.23.130.33 的网络号是 128 128<130
  d.12Array.23.148.127 的网络号是 128 128<148
  答案就是b
  一些简单的方法
  eg:已知建设网络所需的子网数n,求子网掩码m?
  先看是那一类的网络,
  然后在这个基础上,
  在原来的主机地址上,
  从坐到右数1的个数,
  这个数为n,
  剩下的就添零了。
  如: 在b类网,建6个子网.
  bitscn.com
  b类网络的子网掩码格式:
  255.255.x.x
  在着上面数一,剩下的就添零
  11111111.11111111.11111100.00000000
  就是:
  255.255.252.0