子网掩码、前缀长度、IP地址数的换算

子网掩码

子网掩码只有一个功能,就是将IP地址划分为网络地址和主机地址两部分。 如同现实生活中的通讯地址,可以看作省市部分和具体门牌号部分。相同的IP地址,但掩码不一样,则指向的网络部分和主机部分不一样。子网掩码用来判断任意两台计算机的IP地址是否在同一个子网中的根据。如果相同,说明两台计算机在同一个子网中,可以直接通讯;

  1. 按照TCP/IP协议规定,IP地址用二进制来表示,每个IP地址长32bit,比特换算成字节,就是4个字节;
  2. 子网掩码的长度也是32位,左边是网络位,用二进制数字“1”表示;右边是主机位,用二进制数字“0”表示;
  3. 子网掩码常用两种表示形式,一种是 点分十进制表示法,如: 255.255.255.0;另一种是用 前缀长度 表示,如: 24;
  4. 子网掩码不能单独存在,它必须结合IP地址一起使用;
  5. 子网掩码只有一个作用,就是将某个IP地址划分成网络地址和主机地址两部分;

子网掩码计算

子网掩码和前缀长度的换算:

  • case 1

    255.255.255.0 –> 11111111 11111111 11111111 00000000

    1
    2
    3
    网络号: 24
    主机号: 8
    ip个数: 256

    子网掩码“255.255.255.0”的前缀长度为: 24;
    后面一个数字可以在0~255范围内任意变化,因此可以提供256个IP地址。但是实际可用的IP地址数量是256-2,即254个,因为主机号不能全是“0”或全是“1”。

  • case 2

    255.255.0.0 –> 11111111 11111111 00000000 00000000

    1
    2
    3
    网络号: 16
    主机号: 16
    ip个数: 256² = 65536

    子网掩码“255.255.0.0”的前缀长度为: 16;
    后面两个数字可以在0~255范围内任意变化,可以提供 256² 个IP地址。但是实际可用的IP地址数量是256²-2,即65534个。

  • case 3

    255.255.252.0 –> 11111111 11111111 11111100 00000000

    1
    2
    3
    网络号: 22
    主机号: 10
    ip个数: 256 * 2 = 512

    子网掩码“255.255.252.0”的前缀长度为: 22;
    可以提供 512 个IP地址。但是实际可用的IP地址数量是512 -2,即510个。

十进制和二进制的相互转换传送

不想计算的小伙伴可以参考下表

子网掩码与ip个数对照表

来源: https://blog.csdn.net/xbin1981/article/details/79580080

子网掩码网络号/位IP数
255.255.255.255321
255.255.255.254312
255.255.255.252304
255.255.255.248298
255.255.255.2402816
255.255.255.2242732
255.255.255.1922664
255.255.255.12825128
255.255.255.024256
255.255.254.023512
255.255.252.0221024
255.255.248.0212048
255.255.240.0204096
255.255.224.0198192
255.255.192.01816384
255.255.128.01732768
255.255.0.01665536
255.254.0.015131072
255.252.0.014262144
255.248.0.013524288
255.240.0.0121048576
255.224.0.0112097152
255.192.0.0104194304
255.128.0.098388608
255.0.0.0816777216
254.0.0.0733554432
252.0.0.0667108864
248.0.0.05134217728
240.0.0.04268435456
224.0.0.03536870912
192.0.0.021073741824
128.0.0.012147483648
0.0.0.004294967296