IP地址与子网划分

IP地址

        IP地址(IPV4)分为A类、B类、C类、D类组播、E类保留五类,其中A、B、C三类为常用地址,D类组播、E类保留两类为特殊用途地址。

         IP地址二进制形式表现为4段8位合32位二进制,主机号全0表示网络号,主机号全1表示广播号不是有效地址。

A类

       最高位(标红)始终是0;最左端1组1段8位(下划线)为网络号,后3段24位为主机号;1个A类地址包含的地址数量是2^{24}-2=16777214个,减掉的2个是后3段24位主机号全为0和全为1的地址。

类别点分十进制二进制
A类0.0.0.0最低00000000 00000000 00000000 00000000
127.255.255.255最高01111111 11111111 11111111 11111111

B类

        最高2位(标红)始终是10;左端2组8段16位(下划线)为网络号,后2段16位为主机号;1个B类地址包含的地址数量是2^{16}-2=65534个,减掉的2个是后2段16位主机号全为0和全为1的地址。

类别点分十进制二进制
B类128.0.0.0最低10000000 00000000 00000000 00000000
191.255.255.255最高10111111 11111111 11111111 11111111

C类

        最高3位(标红)始终是110;左端3组8段24位(下划线)为网络号,后1段8位为主机号;1个C类地址包含的地址数量是2^{8}-2=254个,减掉的2个是后1段8位主机号全为0和全为1的地址。

类别点分十进制二进制
C类192.0.0.0最低11000000 00000000 00000000 00000000
223.255.255.255最高11011111 11111111 11111111 11111111

D类组播和E类保留 

类别点分十进制二进制
D类组播224.0.0.0最低11100000 00000000 00000000 00000000
239.255.255.255最高11101111 11111111 11111111 11111111
E类保留224.0.0.0最低11110000 00000000 00000000 00000000
239.255.255.255最高11111111 11111111 11111111 11111111

        由上可知A、B、C3类地址中,每个地址所包含的地址数量都是固定的,固定数量的地址在实际应用中存在问题,例如此时为一个公司分配IP地址,该公司有500台主机,此时若分配C类地址,因为1个C类地址只包含254个地址,所以不够用,若分配B类地址,1个B类地址包含65534个地址,太过浪费,所以此时提出子网划分。

子网划分

在子网划分中:

需要将给定的十进制点分IP地址划分为二进制;

将一个网络划分成多个子网需要取部分主机号当子网号,将多个网络合并成一个大的网络需要取部分网络号当主机号;

子网掩码就是存在于子网号与主机号之间;

在二进制IP地址中,子网掩码为1对应的是网络号,子网掩码为0对应的是主机号;

判断出子网掩码之后,将子网掩码左侧全部化为1,将右侧全部化为0;

最后将二进制IP地址化为十进制点分IP地址得到子网掩码。

例题一:

将B类IP地址168.195.0.0划分成27个子网,子网掩码为多少?

十进制点分IP地址二进制IP地址
168.195.0.010101000  11000011  00000000  00000000

          B类地址中,前2段8位合16位二进制数是网络号,后2段8位合16位是主机号;

网络号主机号
10101000  11000011  00000000  00000000

        而子网号存在于网络号和主机号中间,因为题中要求将大的网络划分为子网,那么就需要根据子网需求划定部分主机号为子网号。 

         二进制数有0和1两种状态,因此一位二进制数可以确定2个子网,3位二进制数可以确定8个子网,由此可知2^{1}=2;2^{3}=8;得公式2^{k}=N;k表示二进制位数,N表示子网个数,(大多数是一种2^{k}≥N的状态)2^{k}≥27可知k=5即需要将5位主机号划定为子网号,根据子网掩码的定义(在二进制IP地址中,子网掩码为1对应的是网络号,子网掩码为0对应的是主机号;)将主机号最左侧5位划为子网号将0改为1 

网络号子网号主机号
10101000  1100001111111  000  00000000

注:

        确切来讲应该是使用2^{k}-2=N作为公式,因为前面提到要抛除主机号全为0和主机号全为1的地址,但是随着设备的更新,现在这两个被抛除的地址已经逐渐被接受并可以正常使用,所以目前采取公式2^{k}=N

 判断出子网号之后,将子网号左侧全部化为1,将右侧全部化为0得二进制子网掩码

子网掩码
11111111 11111111 11111000 00000000

 最后将二进制子网掩码化为十进制点分IP地址得到子网掩码

二进制子网掩码十进制点分子网掩码
11111111 11111111 11111000 00000000255.255.248.0

 例题二:

将B类IP地址168.195.0.0划分成60个子网,子网掩码为多少?

十进制点分IP地址二进制IP地址
168.195.0.010101000  11000011  00000000  00000000

          B类地址中,前2段8位合16位二进制数是网络号,后2段8位合16位是主机号;

网络号主机号
10101000  11000011  00000000  00000000

         2^{k}=N,2^{k}≥60可知k=6即需要将6位主机号划定为子网号,根据子网掩码的定义(在二进制IP地址中,子网掩码为1对应的是网络号,子网掩码为0对应的是主机号;)将主机号最左侧6位划为子网号将0改为1 

网络号子网号主机号
10101000  11000011111111  00  00000000

         判断出子网号之后,将子网号左侧全部化为1,将右侧全部化为0得二进制子网掩码

子网掩码
11111111 11111111 11111100 00000000

          最后将二进制子网掩码化为十进制点分IP地址得到子网掩码

二进制子网掩码十进制点分子网掩码
11111111 11111111 11111000 00000000255.255.252.0

 例题三:

将B类IP地址168.195.0.0划分为若干个子网,每个子网内有主机700台,子网掩码为多少?

十进制点分IP地址二进制IP地址
168.195.0.010101000  11000011  00000000  00000000

        首先计算700台电脑对应700个主机号,700个主机号需要多少二进制位实现,2^{9}=512小于700;2^{10}=1024大于700可以用;因此满足700个主机号需要10位二进制数;

由上分析可知,在二进制的IP地址中能确定右边10位用作主机号,那么中间6位划做子网号

二进制IP地址二进制子网掩码
10101000  11000011  00000000  0000000011111111 11111111 11111100  00000000

 将二进制子网掩码转化为十进制点分子网掩码

二进制子网掩码十进制点分子网掩码
11111111 11111111 11111100  00000000255.255.252.0

 无分类编址(无类域间路由)

打破原有的IP分类,在主机号之后加/n,n表示将IP地址转化成二进制之后前面n位是网络号;

例如:

十进制点分IP地址二进制IP地址
128.14.32.0/2010000000 00001110 00100000 00000000

 表示十进制点分IP地址转化为二进制之后前20位是网络号,共包含2^{12}个地址;

网络号主机号
10000000 00001110 00100000 00000000

 但是主机号全为0和主机号全为1得地址一般不使用,一般使用的地址个数是2^{12}-2个

最大地址主机号全为110000000 00001110 00101111 11111111
最小地址主机号全为010000000 00001110 00100000 00000000

 例题:

分配给某公司网络的地址块是210.115.192.0/20,该网络可以被划分为多少个C类子网?

        地址块210.115.192.0/20转化为二进制之后前20位是网络号,而C类地址前24位是网络号,将此地址转化为C类子网还可以将此IP地址的4位主机号划为子网号,而4位主机号可以决定2^{4}=16个子网,所以可以划分为16个C类子网。

十进制点分IP地址二进制IP地址
210.115.192.0/2011010010 01110011 11000000 00000000

 

  • 28
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值