IP,网络地址,主机地址,网络号,子网号,主机号定义、相互关系及其计算
1.IP定义
IP地址由32个bit组成
每隔8位作为一个整体,得到IP地址
例如192.168.129.10
2.IP,网络地址,主机地址,网络号,子网号,主机号的关系
网络地址通常指的是标识一个特定网络的IP地址。在子网划分的情况下,网络地址通常是子网掩码与子网中第一个可用IP地址的按位与运算结果。这个地址在子网中通常是不可分配给主机的,因为它代表了整个子网。
IP地址由网络号和主机号组成。在没有划分子网的情况下,IP地址的前半部分代表网络号,后半部分代表主机号。但是,当网络被划分子网后,IP地址的组成变为网络号、子网网络号和子网主机号。
IP=网络地址+主机地址
IP=网络号+主机号
划分子网后
IP地址组成变为网络号,子网网络号,子网主机号
经常看到IP/数字
的样式,例如192.168.129.10/24
这是说明
- IP的32位的子网掩码的前24位都是1,其余都是0
- IP的前24位为网络地址也为网络号,剩余的8位是主机号
3.子网号的定义和子网划分
例如IP地址195.169.20.50
和子网掩码255.255.255.224
所代表的子网进一步划分子网,我们可以按照以下步骤计算新的子网号:
- 理解当前子网
- 当前子网掩码
255.255.255.224
转换为二进制是11111111.11111111.11111111.11100000
,这意味着前27位是网络部分(包括子网部分),后5位是主机部分。 - 当前子网可以容纳的主机数量是2^5 - 2 = 30台(减去网络地址和广播地址)。
- 当前子网掩码
- 确定进一步划分的子网数
- 假设我们想要将当前子网划分为4个子网。这意味着我们需要从当前的主机部分中借用2位来作为新的子网部分。
- 借用2位后,新的子网掩码将是
255.255.255.240
(二进制为11111111.11111111.11111111.11110000
),前29位是网络部分(包括子网部分),后3位是主机部分。
- 计算新的子网号
- 新的子网号将基于原始的网络号(或称为“超级网”的网络号)和新的子网部分。
- 由于原始网络号是
195.169.20.32
(二进制为11000011.10101001.00010100.00100000
),当我们从主机部分借用2位作为新的子网部分时,可以得到4个不同的子网号。
- 列出新的子网号
- 对于每个新的子网,我们将原始网络号的主机部分的前两位设置为00、01、10或11,以表示4个不同的子网。
- 子网1:
195.169.20.32
(二进制...000000
,即不变) - 子网2:
195.169.20.48
(二进制...010000
) - 子网3:
195.169.20.64
(二进制...100000
) - 子网4:
195.169.20.80
(二进制...110000
)
- 验证和归纳
- 每个新的子网现在都有一个新的子网掩码
255.255.255.240
,并且每个子网可以容纳的主机数量是2^3 - 2 = 6台(减去网络地址和广播地址)。 - 当我们从主机部分借用位来创建新的子网时,每个新的子网中的可用主机数量会减少(广播地址和网络地址),但我们可以获得更多的子网。
- 每个新的子网现在都有一个新的子网掩码
4.IP常见计算
1、网络号
公式:将IP地址的二进制和子网掩码的二进制进行“&”(and)运算,得到的结果就是网络号。“&运算”的规则是1&1=1,0&1=0,1&0=0,0&0=0。
ip: 10101100.00011111.10000000.11111111
子网掩码: 11111111.11111111.11000000.00000000
----------------------------------------------------
网络号: 10101100.00011111.10000000.00000000 &
网络号点分法表示: 172.31.128.0
2、主机号
公式:用IP地址的二进制和(子网掩码的二进制的反码)进行“&”运算,得到的结果就是主机号。反码就是将原本是0的变为1,原本是1的变为0。
ip: 10101100.00011111.10000000.11111111
子网掩码取反: 00000000.00000000.00111111.11111111
----------------------------------------------------
主机号: 00000000.00000000.00000000.11111111 &
主机号点分法表示: 0.0.0.255
3、广播地址
公式:在得到网络号的基础上,将网络号右边的表示IP地址的主机部分的二进制位全部填上1,再将得到的二进制数转换为十进制数就可以得到广播地址。因为本题中子网掩码是11111111.11111111.11000000.00000000, 0有14个,主机位是14,我们将网络号172.31.128.0,转换为二进制是 10101100.00011111.10000000.00000000,从右边数起,将14个0全部替换为1, 即:10101100.00011111.10111111.11111111,这就是这个子网的广播地址的二进制表示法。将这个二进制广播地址转换为十进制就是
172.31.191.255
网络号: 10101100.00011111.10000000.00000000
子网掩码: 11111111.11111111.11000000.00000000
----------------------------------------------------
广播地址: 10101100.00011111.10111111.11111111 网络号从右向左0填为1,个数为掩码中的0
广播地址点分法表示: 172.31.191.255
4、可用IP地址范围
因为网络号是172.31.128.0,广播地址是172.31.191.255,所以子网中可用的IP地址范围就是从网络号+1 ~广播地址-1,所以子网中的可用IP地址范围就是从172.31.128.1-172.31.191.254。
5、子网数目
首先将/18换成为我们习惯的表示法:11111111.11111111.11000000.000000转为十进制就是255.255.192.0,可以看到这个掩码的左边两节和B类默认掩码是一致的,所以这个掩码是在B类默认掩码的范围内,意味着我们将对B类大网进行子网划分。B类掩码默类是用16位(16个0)来表示可分配的IP 地址,这里的掩码在B类默认掩码的基础上多出了两个表示网络号的1,也就是向主机位借了两个1这就是说是将B类大网划分为2的2次方个子网(2^n,n表示所借1的个数),所以最终的子网数目是4
6、如何根据IP和子网掩码判断两个IP是否属于同一子网
- 获取设备的IP地址和子网掩码:首先,我们需要知道两个设备的IP地址和它们各自的子网掩码。
- 转换为二进制表示:将两个IP地址和它们的子网掩码都转换为二进制形式。
- 执行按位与操作:将每个IP地址与其对应的子网掩码进行按位与操作。按位与运算的规则是:两个相应位都为1时,结果为1;否则为0。
- 比较结果:如果两个设备的按位与结果相同,则它们属于同一子网。
7、如何通过IP和子网掩码确定这个IP所属于的子网的寻址范围
- 确定子网地址:将IP地址和子网掩码进行按位与操作,得到的结果就是子网地址。子网地址是子网中所有IP地址的公共部分。
- 计算子网内主机数量:子网掩码中的0位代表主机位。通过计算子网掩码中0的位数,可以确定子网内可以分配的主机数量(注意要减去网络地址和广播地址)。
- 确定子网范围:基于子网地址和子网内主机数量,可以确定子网的IP范围。通常,子网范围的起始地址是子网地址,结束地址是子网地址加上子网内主机数量减1(因为要减去广播地址)。
以IP地址192.168.210.181和子网掩码255.255.224.0为例:
- 确定子网地址:将IP地址和子网掩码转换为二进制并执行按位与操作,得到子网地址192.168.192.0。
- 计算子网内主机数量:子网掩码中有9位是0(即2^9=512),但由于要减去网络地址和广播地址,所以实际可用主机数为510。
- 确定子网范围:子网范围是192.168.192.0到192.168.223.255。
IP常见计算部分转载自:
https://blog.csdn.net/qq_41207757/article/details/107839099
在此基础上加了一点补充