当前位置: 首页 > 技术落地

IP 地址的 24-27-32 位掩码有什么区别?

时间:2024-02-28 02:10:13 技术落地

对于互联网初学者来说这是一个非常经典的问题。

万事开头难,所以我们先从最简单的开始。

24/27/32位掩码长度从何而来? 32 位掩码长度 IP 地址 = 127.0.0.1 网络掩码 = 255.255.255.255 网络掩码“255.255.255.255”,为十进制表达式。

之所以这样表述,是为了人类阅读和配置方便。

十进制“255”= 二进制“11111111”。

因此,十进制掩码中的“255.255.255.255”=二进制掩码中的“11111111.11111111.11111111.11111111”。

这个二进制掩码中有多少个 1?总共32位。

全球协议标准管理组织IETF规定掩码长度与二进制掩码中1的个数一样多。

显然,本例中的掩码长度为32。

有时为了表达方便,将IP地址和掩码长度连接在一起,以代替单独的IP地址(127.0.0.1)和网络掩码(255.255.255.255)。

例如127.0.0.1/32,中间的“/”是分隔符。

27位掩码长度大家都知道掩码长度的由来。

10.1.1.200/27 是什么意思? IP 地址 = 10.1.1.200 网络掩码 = 255.255.255.224 如何获取上述网络掩码?由于掩码长度为27,因此二进制表达式为:“11111111.11111111.11111111.11100000”,正好是27个。

将此二进制掩码转换为十进制为“255.255.255.224”。

如果掌握了这个转换公式,那么无论掩码长度是24还是16,都非常容易计算。

最后一个问题是,10.1.1.200/27和10.1.1.20/27可以不经过网关转发而直接通信吗?不能!前者网段为10.1.1.192,后者网段为10.1.1.0。

两者的网段不同,通信必须通过网关转发。

如何计算网段?只要将IP地址和掩码转换成二进制,然后进行按位与计算,就可以得到网段。

这其实就是网络掩码的目的!其实它代表的是一个范围!子网掩码首先是用来区分IP地址中的网络位和主机位的!默认情况下它是一个固定长度的掩码!通过改变掩码的长度,可以增加或减少IP地址的网段范围!这就是可变子网掩码的含义! IP地址一般分为A、B、C、D、E! !并且是由32位二进制数组成,按英文句点按8位组分为四组!这四部分又分为两部分:网络位和主机位!默认情况下,有固定的网络位和主机位(指的是二进制位,不是十进制!)。

其实它们是通过子网掩码来区分的!默认情况下,掩码长度是固定的。

例如,A类的10.0.0.0默认为8位掩码!那是255.0.0.0!换句话说,网络位是8个二进制位,剩下的24位是主机位! C类中常见的192.168.1.1的默认掩码是24位,即255.255.255.0!可见,无论是8位还是24位,都是指网络位! 8位数字中最大的十进制数是255!这27位意味着有27个网络位的二进制位置为1。

一组8位是11111111.111111111.11111111.11100000。

十进制换算就是255.255.255.224!主机位现在只有 32 位 - 27 位 = 5 位!意思是2的5次方是32(十进制),也就是说还有32位主机可用!这将原来的256个IP缩短为32个IP地址! (实际的第一个网络地址和最后一个广播地址不能分配给计算机,实际可用的IP地址必须减去2!)同理,32位是完整的网络位,代表IP地址! (实际的子网掩码只有30位,32位不属于普通掩码范畴,只要记住它代表IP地址即可!)我来回答这个行业的问题。

IPV4中IP地址的掩码实际上代表了二进制中1的个数。

掩码是一个32位二进制数,每8位分为一段,其余位用零填充。

掩码的 24 位表示 11111111.11111111.11111111.00000000,转换为十进制后为 255.255.255.0。

掩码的 27 位表示 11111111.11111111.11111111.11100000,转换为十进制后为 255.255.255.224。

32 位掩码表示全 1,即 255.255.255.255。

掩码告诉我们整个网络可以有多少主机。

掩码中0的数量决定了网络中主机的数量。

例如,如果24位掩码中有8个0,那么整个网络中的地址就是2的8次方减2(因为主机中全0代表网络号,掩码中全0代表网络)数字。

1是广播地址),这意味着24位网络中可以有256-2=254台主机。

同样,具有 27 位掩码的主机数量为 2 的负 2 的五次方,即 30 台主机。

32 位掩码显然意味着该网络上只有一台主机。

它是IP地址本身的主机。

以上只是我个人的看法。

欢迎批评和指正。