博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
网络号和主机号等的分析和计算
阅读量:6249 次
发布时间:2019-06-22

本文共 3248 字,大约阅读时间需要 10 分钟。

  当前使用的
IP
地址有
4
个字节(
32bit
)组成,即
IPV4
编码方式。每个
IP
地址包括两部分:网络号和主机号。当分配给主机号的二进制位越多,则能标识的主机数就越多,相应地能标识的网络数就越少,反之同理。
 
  
IP
地址分为五类,
A
类保留给政府机构,
B
类分配给中等规模的公司,
C
类分配给任何需要的人,
D
类用于组播,
E
类用于实验,各类可容纳的地址数目不同。
  
A
B
C
三类
IP
地址的特征:当将
IP
地址写成二进制形式时,
A
类地址的第一位总是
0
B
类地址的前两位总是
10
C
类地址的前三位总是
110
  给出一个
IP
地址,我们可以通过子网掩码确定这个
IP
地址的网络号和主机号。
  子网掩码的作用就是将某个
IP
地址划分成网络地址和主机地址两部分。
例如
有一个
C
类地址为
:  192.9.200.13
 
其缺省的子网掩码为
: 255.255.255.0
 
 
则它的网络号和主机号可按如下方法得到:
 
   
IP
地址
192.9.200.13
              
转换为二进制
11000000
 
00001001
 
11001000
 
00001101
 
   
子网掩码
255.255.255.0  
              
转换为二进制
11111111
 
11111111
 
11111111
 
00000000
 
   
将两个二进制数做按位与(
&
)运算后得出的结果即为网络部分
11000000
 
00001001
 
11001000
 
00001101
 
   &  11111111
 
11111111
 
11111111
 
00000000
-------------------------------------------------------------
 11000000
 
00001001
 
11001000
 
00000000
=    192  .    9     .   200    .   0
即网络号为
192.9.200.0
 
④将子网掩码取反再与
IP
地址按位与(
&
)后得到的结果即为主机部分
11000000
 
00001001
 
11001000
 
00001101
 
&
 
   00000000
 
00000000
 
00000000
 
11111111 --- >
已将掩码取反
------------------------------------------------------------
00000000
 
00000000
 
00000000
 
00001101
 
=       0    .   0     .    0     .   13
即主机号为
13(
或者
0.0.0.13)

 


已知192.168.1.133255.255.255.0,这个子网掩码是C类地址的默认的子网掩码,在使用这个掩码时,这个IP地址并没有划分子网,将其转换为8位二进制数,其中的1所的对应的部分就是网络号,而0所对应的部分就是主机号。根据计算方法,192.168.1.0就是网络号(代表当前网络),0.0.0.133就是主机号。同时根据定义,主机号位全为一的地址为此网段的广播地址可知,此时的广播地址为192.168.1.255此种默认情况是最常见的

    下面看下将网络划分子网后的情况,如:已知192.168.1.133255.255.255.192.判断网络号,主机号和广播地址。

我们来看掩码255.255.255.192,将其转换成二进制后和255.255.255.0对比可发现,前掩码的前24位没有变化,只是在原来表示主机号的部分头两位变成了1

                                         

我们把IP地址中的前24位(192.168.1)不看,因为前24位对应掩码没有变化它们始终表示网络号。

按照子网掩码的定义,

子网掩码1所对应的位为网络号位

 而0所对应的位为主机号位

如图中深蓝色部分所示,主机号中的两位被用来表示网络号了,这就是子网号。(二进制一位用01表示,那么占用了两位就有2*2=4种表示,这里占用了2位,也就是说我们将原有的192.168.1.0这个网络分成了四份,即4个子网)这四段的网络号分别是00000000010000001000000011000000,现在我们将它们转换成10进制就分别是064128192,现在把前24位加进来。

这四段网络分别是192.168.1.0    (~192.168.1.63)

192.168.1.64      (~192.168.1.127)

192.168.1.128    (~192.168.1.191)

192.168.1.192    (~192.168.1.255)

现在我们来看广播地址,既然我们把一个网段分成了四份,它就应该有4个广播地址。     广播地址的定义是主机号位全位1的地址就是广播地址。所以这四个网段的广播地址末八位就是00111111011111111011111111111111,转换成10进制分别为63127191255。加上原来的网络号位,广播地址就是

192.168.1.63

192.168.1.127

192.168.1.191

192.168.1.255

       四个网段中刨除网络地址和广播地址中间的部分就是可用的主机IP地址了。

       通过以上分析方法可知192.168.1.133这个IP地址的网络号是192.168.1.128,其主机号是0.0.0.5,广播地址是192.168.1.191


 

根据以上分析和计算方法,子网划分建议按以下步骤和实例计算子网掩码。
  1. 将要划分的子网数目转换为
    2
    m
    次方。如要分
    8
    个子网,
    8=23
  2. 取上述要划分子网数的
    2m
    的幂
    m
    。如
    23
    ,即
    m=3
  3. 将上一步确定的幂
    m 按高序占用主机地址
    m 位后转换为十进制。
  4. m
    3 则是
    11100000 ,转换为十进制为
    224 ,即为最终确定的子网 掩码。如果是
    C 类网,则子网掩码为
    255.255.255.224 ;如果是
    B 类网, 则子网掩码为
    255.255.224.0 ;如果是
    A 类网,则子网掩码为
    255.224.0.0 。 在这里,子网个数
    n 与占用主机地址位数
    m 有如下等式成立:
    2m=n
根据这些原则,将一个
C
类网络分成
4
个子网。若我们用的网络号为
192.9.200.0
,则该
C
类网内的主机
IP
地址就是
192.9.200.1
192.9.200.254
(
因为全
“0”
和全
“1”
的主机地址有特殊含义,不作为有效的
IP
地址
)
 

例:学校新建5个机房,每个房间有30台机器,如果给定一C类网络地址:192.168.1.0,问如何将其划分为5个子网,子网掩码该如何设置?

答:23 =8(大于5的最小的2的整幂次数),取23的幂,即3,即占用了主机号中的高3位即为11100000,转换为十进制为224,所以该地址为C类地址的子网掩码应该设置为255.255.255.224。各机房IP和子网掩码配置如下(已经去掉广播地址和主机地址):

机房号      子网掩码          IP地址范围

机房1     255.255.255.224    192.168.1.1~192.168.1.30

机房2    255.255.255.224    192.168.1.33~192.168.1.62

机房3     255.255.255.224   192.168.1.65~192.168.1.94

机房4    255.255.255.224   192.168.1.97~192.168.1.126

机房5     255.255.255.224    192.168.1.129~192.168.1.158

转载于:https://www.cnblogs.com/gylei/archive/2012/12/17/2822480.html

你可能感兴趣的文章
经历无数次失败,终于把kamailio装上了
查看>>
Tsung 1.5.0 增加对 WebSocket 和 BOSH 的支持
查看>>
NYOJ-613 免费馅饼
查看>>
概率论07 联合分布
查看>>
虚拟机中克隆系统后网卡无法识别的解决办法
查看>>
Spring bean中的properties元素内的name 和 ref都代表什么意思啊?
查看>>
跟我一起云计算(4)——lucene
查看>>
Subversion服务器搭建
查看>>
PourOver – 快速筛选和排序大的数据集合
查看>>
swift学习第五章-字典的使用
查看>>
我的编程之路(十五) 需求的变更
查看>>
关于递归方法的实现
查看>>
js中的with语句
查看>>
crontab用法
查看>>
【转】基于LDA的Topic Model变形
查看>>
wordpress之备份与恢复数据
查看>>
[LeetCode] Combination Sum
查看>>
Android中Menu的基本使用方法
查看>>
微信公众平台开发(107) 分享到朋友圈和发送给好友
查看>>
推荐系统
查看>>