首页 > 代码库 > 举例如何计算子网掩码,网络地址,广播地址等

举例如何计算子网掩码,网络地址,广播地址等

 

IP地址是由网络地址+主机地址组成那么可以得出网络位+主机位=32位

 

同一网段的概念:

同一网段指的是IP地址和子网掩码相与得到相同的网络地址

想在同一网段,必须做到网络标识相同,即网络地址。如,A类地址:只算第一段(255.0.0.0);B类地址:算第一、二段(255.255.0.0);C类地址:算第一、二、三段(255.255.255.0)。

即:1)IP地址与子网掩码进行“与”运算,得到网络地址。

  2)广播地址:网络地址的主机位全部置为1,网络位不变,即可得到广播地址。

 

 

如何知道一个IP地址里有多少个网络位和主机位呢,那么这个由子网掩码决定。

  • 举例一个iP地址10.158.79.53,子网掩码位255.255.248.0,这里面网络位,主机位是多少?主机数是多少?网络地址和广播地址是多少?说下我个人的思路:因为子网掩码决定网络位和主机位的个数,当然去看子网掩码,化成二进制即:11111111.11111111.11111000.00000000,

    有21个连续的1即网络位21,

    主机位=32-21=11

    那么主机数就是(2的11次方-2)个,为什么要减2呢,因为这串地址里包括一个最小的地址和最大的地址,分别叫做网络地址(也叫网络号)和广播地址,这两个地址是不能分给主机的。

还回到刚刚那个例子里,既然要计算网络地址和广播地址,我们就去看ip地址10.158.79.53,刚才我们计算出网络位是21,那么10.158这个我们就不要去看了,这两个占了16个网络位,根本不需要去化成二进制那么麻烦了。那么还有5个网络位,我们着重计算下79(化成二进制就是1001111,我们数一下只有7位,我们要保证是8位就前面补0即01001111,记住这个是关键,切记不足8位的最前面要补0补成8位),那么我们就取前面5个即01001 那么总共是不是就是这样的10.158.01001xxx.xxxxxxxx,现在我们把x都改成0,这个地址就是网络地址(也叫网络号);现在我们把x都改成1,这个地址就是广播地址,计算一下分别是10.158.72.0和10.158.79.255,可用地址范围就是这两者之间的。

 

  • 假如我们知道ip地址和网络位,举例10.117.205.113/27,怎么去计算主机位,主机数,子网掩码,网络地址和广播地址呢?

主机位是32-27=5

主机数是2的5次方-2

子网掩码是27个连续的1后面补0即11111111.11111111.11111111.11100000计算一下得255.255.255.224

我们看一下网络位是27,那么ip地址10.117.205.113里面的10.117.205占有24个网络位,还有3个肯定是在113里面,化成二进制1110001,一数才7位补足8位为01110001,前3个是网络位,那么总共是不是就是这样10.117.205.011xxxxx,现在我们把x都改成0,这个地址就是网络地址(也叫网络号);现在我们把x都改成1,这个地址就是广播地址,计算一下分别是10.117.205.96和10.117.205.127,可用地址范围就是这两者之间的。

举例如何计算子网掩码,网络地址,广播地址等