论坛: 系统集成 标题: 关于子网划分以及掩码的算法 复制本贴地址    
作者: Achieve [achieve]    版主   登录
子网掩码是用来判断任意两台计算机的IP地址是否属于同一子网络的根据。

最为简单的理解就是两台计算机各自的IP地址与子网掩码进行AND运算后,如果得出的结果是相同的,则说明这两台计算机是处于同一个子网络上的,可以进行直接的通讯。就这么简单。

请看以下示例:

运算演示之一:aa
I P 地址  192.168.0.1
子网掩码  255.255.255.0
AND运算

转化为二进制进行运算:
I P 地址 11010000.10101000.00000000.00000001
子网掩码 11111111.11111111.11111111.00000000
AND运算

     11000000.10101000.00000000.00000000
转化为十进制后为:

      192.168.0.0


运算演示之二:
I P 地址  192.168.0.254
子网掩码  255.255.255.0
AND运算

转化为二进制进行运算:
I P 地址 11010000.10101000.00000000.11111110
子网掩码 11111111.11111111.11111111.00000000
AND运算

     11000000.10101000.00000000.00000000
转化为十进制后为:

      192.168.0.0

运算演示之三:
I P 地址  192.168.0.4
子网掩码  255.255.255.0
AND运算

转化为二进制进行运算:
I P 地址 11010000.10101000.00000000.00000100
子网掩码 11111111.11111111.11111111.00000000
AND运算

     11000000.10101000.00000000.00000000
转化为十进制后为:

      192.168.0.0

  通过以上对三组计算机IP地址与子网掩码的AND运算后,我们可以看到它运算结果是一样的。均为192.168.0.0

  所以计算机就会把这三台计算机视为是同一子网络,然后进行通讯的。我现在单位使用的代理服务器,内部网络就是这样规划的。

也许你又要问,这样的子网掩码究竟有多少了IP地址可以用呢?你可以这样算。
根据上面我们可以看出,局域网内部的ip地址是我们自己规定的(当然和其他的ip地址是一样的),这个是由子网掩码决定的通过对255.255.255.0的分析。可得出:
  前三位IP码由分配下来的数字就只能固定为192.168.0  所以就只剩下了最后的一位了,那么显而易见了,ip地址只能有(2的8次方-1),即256-1=255一般末位为0或者是255的都有其特殊的作用。

那么你可能要问了:如果我的子网掩码不是255.255.255.0呢?你也可以这样做啊假设你的子网掩码是255.255.128.0

那么你的局域网内的ip地址的前两位肯定是固定的了(什么,为什么是固定的?你看上边不就明白了吗?·#¥)

这样,你就可以按照下边的计算来看看同一个子网内到底能有多少台机器

1、十进制128 = 二进制1000 0000

2、IP码要和子网掩码进行AND运算

3、
I P 地址 00010000.01001001.1*******.********
子网掩码 11111111.11111111.10000000.00000000
AND运算

     00010000.01001001.10000000.00000000
转化为十进制后为:

      16 . 73 . 128 . 0

4、可知我们内部网可用的IP地址为:

00010000.01001001.10000000.00000000
       到
00010000.01001001.11111111.11111111

5、转化为十进制:

16.73.128.0 到 16.73.255.255

6、0和255通常作为网络的内部特殊用途。通常不使用。

7、于是最后的结果如下:我们单位所有可用的IP地址为:
192.168.128.1-192.168.128.254
192.168.129.1-192.168.129.254
192.168.130.1-192.168.130.254
192.168.131.1-192.168.131.254
. . . . . . . . . . . . .
192.168.139.1-192.168.139.254
192.168.140.1-192.168.140.254
192.168.141.1-192.168.141.254
192.168.142.1-192.168.142.254
192.168.143.1-192.168.143.254
. . . . . . . . . . . . .
192.168.254.1-192.168.254.254
192.168.255.1-192.168.255.254

8、总数为(255-128+1)*(254-1+1) =128 * 254 = 32512

FAINT!!!!@#!@把我们公司都买了还买不了这么多的机器呢!·¥!·#

9、看看的结果是否正确

  (1)、设定IP地址为192.168.128.1

    Ping 192.168.129.233通过测试

    访问http://192.168.129.233可以显示出主页

  (2)、设定IP地址为192.168.255.254

    Ping 192.168.129.233通过测试

    访问http://192.168.129.233可以显示出主页

10、结论

  以上证明我们的结论是对的。现在你就可以看你的子网中能有多少台机器了

255.255.255.128
分解:
11111111.11111111.11111111.1000000
所以你的内部网络的ip地址只能是xxxxxxxx.xxxxxxxx.xxxxxxxx.0???????

xxxxxxxx.xxxxxxxx.xxxxxxxx.01111111

怎么样,这下你知道多少了吧?

地主 发表时间: 08/10 00:44

回复: 俊华 [trueboy_cn]   论坛用户   登录
网络划分基本知识。好。

B1层 发表时间: 08/11 10:36

回复: TecZm [teczm]   版主   登录
复习

B2层 发表时间: 05-10-28 16:27

回复: 带脚镣跳舞 [tuzi]   版主   登录
基础不好的朋友可以看看

不知道大家要不要超网的构建规则

如果需要的话 我把它发上来

B3层 发表时间: 05-10-28 23:10

回复: 零下一度 [xiaoshi]   论坛用户   登录
需要!!!
另外问一下,问什么有时候地址是10.10.*的,但子网掩码好象也是255的啊?

B4层 发表时间: 05-10-29 17:42

回复: 嘶风 [yimarong]   版主   登录
呵呵~算法部分早忘的差不多了,现在有需要了一般是通过工具解决~

B5层 发表时间: 05-10-29 17:58

回复: 零下一度 [xiaoshi]   论坛用户   登录
发现个问题!!!!!!!!!!!!!!!1
192=>11000000
好象楼主给的2进制的192有点问题哦?
我还以为我把除2取余法都还给老师了呢!
哈哈
后来用计算器算和我自己算的一样,你算错了哦?

B6层 发表时间: 05-10-31 20:18

回复: 晓风残月 [xfcy800]   论坛用户   登录
11000000<>192?
请问你是怎么算的?我倒真想学学!

B7层 发表时间: 05-11-01 10:59

回复: 零下一度 [xiaoshi]   论坛用户   登录
我是说192等于哪个啊,楼主错了啊!
多打个东西,呵呵!

B8层 发表时间: 05-11-10 20:02

回复: benet [benet]   论坛用户   登录
    版主不是要传超网的构建规则吗
    我还等着看呢,传上来吧

B9层 发表时间: 05-11-11 11:02

回复: 零下一度 [xiaoshi]   论坛用户   登录

多点,好好学习学习..

B10层 发表时间: 05-11-11 18:28

回复: fox7skin [fox7skin]   论坛用户   登录
能不能通过获得IP算出联接是网内还是网外的?

B11层 发表时间: 05-11-21 17:58

回复: 零下一度 [xiaoshi]   论坛用户   登录
这个好象不行,最多可以算出网络有多大吧

B12层 发表时间: 05-11-23 18:31

论坛: 系统集成

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号