2019-04-18 如何计算同一网段的ip地址范围

如题所述

第1个回答  2022-07-04
比如知道ip地址为172.19.0.3/20,怎么计算出同一网段的ip地址范围
先将ip地址转化为二进制
172=128+32+8+4
转化为二进制为
10101100
所以将172.19.0.3转化为二进制为
10101100.00010011.00000000.00000011
因为子网掩码为20,所以前20位为网络id,网络id的子网掩码为1,主机id的子网掩码为0
所以子网掩码为11111111.11111111.11110000.00000000
如何获得网络id,网络id相同的ip地址就在同一个网段,就像电话号码的区号一样
网络id等于ip地址和子网掩码相与,子网掩码为1时ip地址保留原值,子网掩码为0是,ip地址为0
这样计算得到的主机id为
10101100.00010011.00000000.00000000
转化为10进制为172.19.0.0/20为网络id,要想得到相同的网络id,则ip地址的最小为
10101100.00010011.00000000.00000001
最大为
10101100.00010011.00001111.11111110
转化为十进制
172.19.0.1-172.19.15.254
同一网段的主机数为2^(32-20)-2=4094个