前言

这几天在捡计算机网络原理,但是发现很多计算IP的题目都不会计算了,然后百度(谷歌)了很久都找不到比较好的文章,也废了我差不多3-4个小时才解出来,所以就写一篇文章来进行总结吧!

开始

开始之前你要先了解一下IP地址的基本概念

IP地址基本概念

1.IP地址范围,要知道它是什么类型的IP地址

A 0.0.0.0 - 127.255.255.255
B 128.0.0.0 - 191.255.255.255
C 192.0.0.0 - 223.255.255.255
D 224.0.0.0 - 239.255.255.255
E 240.0.0.0 - 255.255.255.255

2.IP地址的组合,要知道它是由什么组合而成的

ps:主要看A、B、C这三类地址

它们由:网络号+主机号 组合而成

3.要知道什么是与(&)运算,什么是或(||)运算

与运算(&):就是双方必须都是1才得1

1 1 = 1、1 0 = 0、0 1 = 0、0 0 = 0

或运算(||):就是双方有一个是1就得1

1 1 = 1、1 0 = 1、0 1 = 1、0 0 = 0

4.要知道11111111代表什么

255.255.255.255   =  11111111 11111111 11111111 11111111

所以8个加起来=255

1     1      1     1    1    1    1    1

128  64  32  16    8    4    2    1

题目一

已知某个子网中的一个主机的IP地址为:203.123.1.135,子网掩码是:255.255.255.192问

(1).该子网的子网地址是什么?

(2).该子网的直接广播地址是什么?

(3).该子网的IP地址数是多少?

(4).可分配的IP地址范围是多少?

(1).子网地址 = IP地址 与(&)运算  子网掩码

203.123.1.135      11001011 01111011 00000001 10000111

255.255.255.192  11111111 11111111 11111111 11000000

203.123.1.128     11001011 01111011 00000001 10000000

子网地址:203.123.1.128

(2).广播地址 = IP地址 或(||)运算  子网掩码的反码

子网掩码的反码:就是把1全部变成0,0变成1

255.255.255.192 11111111 11111111 11111111 11000000

0.0.0.127            00000000 0000000 0000000 00111111

正式计算:P地址 或(||)运算  子网掩码的反码

203.123.1.128   11001011 01111011 00000001 10000000

0.0.0.127           000000 0000000 0000000 00111111

203.123.1.191   11001011 01111011 00000001 10111111

广播地址:203.123.1.191

(3).IP地址数 = 2^主机号(如:2^5

解题思路:你要背上面的A、B、C类地址的 网络号、主机号,然后通过子网掩码有多少个1,然后对比网络号,如果少了就从主机号拿来补充,剩余的主机号就是IP地址数了

从主机IP(203.123.1.135)是C类地址,C类地址 网络号为24位,主机号为8位

子网掩码转二进制:11111111 11111111 11111111 11000000,有26个1所以:子网掩码号为26位

子网掩码号 - 网络号 = 2,所以网络号需要向主机号借2,所以8-2=6,主机号为6位

所以IP地址数 = 2^6 = 2*2*2*2*2*2 = 64

IP地址数:64

(4).可IP分配范围 = 子网地址(+1)  - 广播地址(-1)

可分配IP地址范围:203.123.1.129 - 203.123.1.190

题目二

已知IP网络202.112.14.0/26

(1).写出它的可分配IP地址数

(2).假设将其分为三个子网,第一个子网的可分配IP地址不少于30个,第二个子网的可分配IP地址不少于14个,第三个子网的分配IP地址不少于10个,分别写出它们的子网地址,子网掩码,广播地址

(1).IP地址数 = 2^主机号(如:2^5

先写出子网掩码,由202.112.14.0/26,得知子网掩码号为26位(IP/26:/后面就是子网掩码号)

11111111 11111111 11111111 11000000

子网掩码:255.255.255.192

由IP地址(202.112.14.0),得知是C类地址,网络号为24位,主机号为8位,子网掩码号为26位(看上面),子网掩码号-网络号=2,网络号需要向主机号借2,主机号为8-2=6位

所以IP地址数 = 2^6 = 2*2*2*2*2*2=64

IP地址数为64

(2).

不少于30个解题思路

由上面我们知道这么计算IP地址数,我们举一反三,先计算出最低的IP地址数,然后看看多少位主机号,然后推出子网掩码号,在根据   子网掩码取反 跟 子网地址  进行或运算得出 广播地址

2*2*2*2*2 = 32

2^5

 所以主机号为5位,网络号为24位,子网掩码号计算公式:原网络号+(原主机号 - 现主机号)

24 + (8-5) = 24+3 = 27,所以子网掩码号为27位

11111111 11111111 11111111 11100000

所以得出下面的结果:

子网掩码:255.255.255.224

子网地址:202.112.14.0/27

广播地址 = 子网掩码取反 跟 子网地址  进行或运算

11111111 11111111 11111111 11100000

00000000 00000000 00000000 00011111

子网掩码反码:0.0.0.31

202.112.14.0   11001010 01110000 00001110 00000000

0.0.0.31           00000000 00000000 00000000 00011111

202.112.14.31 11001010 01110000 00001110 00011111

子网掩码:255.255.255.240

子网地址:202.112.14.0/28

广播地址:202.112.14.31

不少于14个解题思路

同上解题逻辑,但是   子网地址 = 上题广播地址+1

2*2*2*2 = 16

2^4

24+(8-4) = 28

11111111 11111111 11111111 11110000

子网掩码:255.255.255.240

子网地址:202.112.14.32/28

子网掩码反码:

11111111 11111111 11111111 11110000

00000000 00000000 00000000 00001111

0.0.0.15

广播地址:

202.112.14.32 11001010 01110000 00001110 00100000

0.0.0.15 00000000 00000000 00000000 00001111

202.112.14.47 11001010 01110000 00001110 00101111

子网掩码:255.255.255.240

子网地址:202.112.14.32/28

广播地址:202.112.14.47

不少于10个解题思路

同上解题逻辑,但是   子网地址 = 上题广播地址+1

2*2*2*2=16

2^4

24+(8-4) = 28

11111111 11111111 11111111 11110000

子网掩码:255.255.255.240

子网地址:202.112.14.48/28

子网掩码反码:

11111111 11111111 11111111 11110000

00000000 00000000 00000000 00001111

0.0.0.15

广播地址:

202.112.14.48 11001010 01110000 00001110 00110000

0.0.0.15 00000000 00000000 00000000 00001111

202.112.14.63 11001010 01110000 00001110 00111111

子网掩码:255.255.255.240

子网地址:202.112.14.48/28

广播地址:202.112.14.63

题目三(2023年4月44大题)

已知网络地址192.168.1.0,对应的子网掩码为255.255.255.128

192.168.1.0是C类地址,24位网络号,8位主机号

子网掩码是25位,255.255.255.128 

子网掩码如何等于25位,11111111 11111111 11111111 100000000,是1的全部加起来等于25

(1).该网络被划分的子网个数

子网个数 =  2 * (子网掩码 - 网络号)

2 * (25-24) = 2*1 = 2,所以它的子网个数是 2

(2).每个子网的主机数

25 - 24 = 1

8 - 1 = 7

_2{7} = 128

主机数 = _2{7} - 2 = 128 - 2 = 126

所以它的主机数为:126

(3).每个子网中主机可用合法IP地址范围

IP地址(网络地址)范围 = 子网地址 + 1 ~ 广播地址 - 1

第一个子网

子网地址:192.168.1.0 & 255.255.255.128  = 192.168.1.0

广播地址:192.168.1.0 || 0.0.0.127 = 192.168.1.127

192.168.1.0 + 1 = 192.168.1.1

192.168.1.127 - 1 = 192.168.1.126

IP地址(网络地址)范围 = 192.168.1.1 ~ 192.168.1.126

第二个子网

IP地址(网络地址) = 上面广播地址 + 1

IP地址(网络地址) = 192.168.1.128

子网地址:192.168.1.128 & 255.255.255.128  = 192.168.1.128

广播地址:192.168.1.128 || 0.0.0.127 = 192.168.1.255

192.168.1.128 + 1 = 192.168.1.129

192.168.1.255 - 1 = 192.168.1.254

IP地址范围 = 192.168.1.129 ~ 192.168.1.254

(4).每个子网的网络地址

第一个子网网络地址:192.168.1.0

第二个子网网络地址:192.168.1.128

(5).每个子网的广播地址

第一个子网广播地址:192.168.1.127

第二个子网广播地址:192.168.1.255

题目四(2022年4月44大题)

设某ISP 拥有一个网络地址块 201.123.16.0/21,现在该ISP 要为A、B、C、D四个组织分配IP 地址,其需要的地址数量分别为985、486、246 以及211,而且要求将低地址段的 IP 地址分配给 IP 地址需求量大的组织。请给出一个合理的分配方案以满足该需求。要求将各组织所获得的子网地址、广播地址、子网掩码、IP 地址总数、可分配IP 地址数和可分配IP 地址范围参照题44 表(样表)绘表填写

201.123.16.0 是 C类IP地址,24位网络号,8位主机号

子网掩码是21位(11111111 11111111 11111000 00000000) 255.255.248.0

21 - 24 = -3,所以要变成 24 - 21 = 3,8 + 3 = 11

IP总数:_2{11} = 2048

所以现在你就应该会做了吧,跟题目二一样

求985做法

985 = _2{10} = 1024

IP总数 = 1024

可分配IP = 1024 - 2 = 1022

子网地址 =  201.123.16.0

子网掩码 = _2{11} - _2{10} = 1,21 + 1 = 22,255.255.252.0

子网掩码反码 255.255.252.0 = 0.0.3.255

广播地址 = 201.123.16.0 或  0.0.3.255 = 201.123.19.255

可分配IP地址范围 =  子网地址 + 1 ~ 广播地址 - 1   =  201.123.16.1 ~ 201.123.19.254

求486做法(IP地址(子网地址) = 上面广播地址 + 1

485 = _2{9} = 512

IP总数 = 512

可分配IP = 512 - 2 = 510

子网地址 =  201.123.19.255 + 1 = 201.123.20.0

子网掩码 = _2{11} - _2{9} = 2,21 + 2 = 23,255.255.254.0

子网掩码反码 255.255.254.0 = 0.0.1.255

广播地址 = 201.123.20.0 或  0.0.1.255 = 201.123.21.255

可分配IP地址范围 =  子网地址 + 1 ~ 广播地址 - 1   =  201.123.20.1 ~ 201.123.21.254

求246做法(IP地址(子网地址) = 上面广播地址 + 1

485 = _2{8} = 256

IP总数 = 256

可分配IP = 256 - 2 = 254

子网地址 =  201.123.21.255 + 1 = 201.123.22.0

子网掩码 = _2{11} - _2{8} = 3,21 + 3 = 24,255.255.255.0

子网掩码反码 255.255.255.0 = 0.0.0.255

广播地址 = 201.123.22.0 或  0.0.0.255 = 201.123.22.255

可分配IP地址范围 =  子网地址 + 1 ~ 广播地址 - 1   =  201.123.22.1 ~ 201.123.22.254

求211做法(IP地址(子网地址) = 上面广播地址 + 1

485 = _2{8} = 256

IP总数 = 256

可分配IP = 256 - 2 = 254

子网地址 =  201.123.21.255 + 1 = 201.123.23.0

子网掩码 = _2{11} - _2{8} = 3,21 + 3 = 24,255.255.255.0

子网掩码反码 255.255.255.0 = 0.0.0.255

广播地址 = 201.123.23.0 或  0.0.0.255 = 201.123.23.255

可分配IP地址范围 =  子网地址 + 1 ~ 广播地址 - 1   =  201.123.23.1 ~ 201.123.23.254

题目五(2021年4月43大题)

43.(12分)某单位的IP 网络211.66.38.0/24 因业务需要欲将其划分为8个逻辑子网且使每个子网可分配的 IP 地址数最大。请回答:

211.66.38.0,是C类地址,24位网络号,8位主机号

255.255.255.0 (24位子网掩码)

(1)子网划分的具体方案及依据
划分8个子网且使每个子网可连接的主机数最大,则需用主机地址中的高3位来划分8个子网。

通俗一点就是,主机号需要减掉3位,因为8 = 2*2*2 = _2{3}
(2)写出子网的子网掩码

8个子网:8 = 2*2*2 = _2{3}

主机号:8 - 3 = 5,_2{5}

子网掩码:24+3 = 27

255.255.255.224(27位)

(3)写出每个子网的子网地址和可分配的IP 地址范围

这题讲实话,上面都写烂了,如果你还不会多看一点上面的题目和解法

1.子网地址211.66.38.0,可分配P地址范围211.66.38.1~211.66.38.30
2.子网地址211.66.38.32,可分配IP地址范围211.66.38.33~211.66.38.62
3.子网地址 211.66.38.64,可分配IP 地址范围201.66.38.65~211.66.38.94
4.子网地址 211.66.38.96,可分配IP 地址范围201.66.38.97~211.66.38.126
5.子网地址211.66.38.128,可分配IP 地址范围201.66.38.129~211.66.38.158

6.子网地址211.66.38.160,可分配P 地址范围201.66.38.161~211.66.38.190

7.子网地址 211.66.38.192,可分配IP 地址范围201.66.38.193~211.66.38.222

8.子网地址 211.66.38.224,可分配P 地址范围201.66.38.225~211.66.38.254

(4)计算因划分子网而新增的不可分配的 IP 地址个数(写出计算过程)

新增不可分配的IP地址个数 =  划分前可用的IP地址个数 - 划分后可用的IP地址个数 * 8

=254-30*8=14个。

通俗一点就是  最后一个广播地址 - 第一个广播地址 * 划分子网个数

总结

是不是看到这里,突然觉得解题很简单了,hhh

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐