IP地址后面的/16是什么意思

IP地址后面的/16是什么意思

前几天我遇到了这样的ip255.255.255.1/16

我认为/16指的是IP可以生成的子网地址的数量。然而,我怀疑我可能大错特错,并认为这个论坛上的 Linux/Unix 专家可以提供帮助。

答案1

斜杠后面的值,即24您的示例中的192.168.1.0/24,使用CIDR 表示法指示可用于与主机寻址不同的网络寻址的位数。对于 IPv4,每个 IP 地址为 32 位,网络的网络地址/24为 24 位,因此此类网络的主机寻址将为 32 - 24 = 8 位。

让我们更仔细地看看这个问题。

举个地址例子192.168.1.0/24。这表示 32 位中的 24 位用于网络地址。每个八位字节都是 8 位,因此很容易看出这意味着这192.168.1是网络地址,其余部分是主机地址。 8 位给出 2 8 个地址,即 256 个。最低的 ( 0) 不可用,最高的 ( 255) 保留用于本地网络广播,这样就为 254 个主机地址留下了空间,所有地址都以 开头192.168.1

现在再举一个例子地址192.168.0.0/16。这里我们有 32 位中的 16 位用于网络寻址,剩下 16 位用于网络上的主机。我们有 2 16 = 65536 个主机地址,但和以前一样,有两个被保留(192.168.0.0192.168.255.255),因此该网络上的主机有 65534 个可用地址,全部从 开始192.168

这一切都很容易;令人兴奋的是当子网字段不是八的倍数时。例如,您可以有一个网络192.168.1.128/26。但同样的规则也适用; 26 位用于网络地址,6 位用于该网络上的主机。 2 6是 64,并且保留了两个,因此您可以在这样的网络上拥有 62 台主机。使用该ipcalc工具,您可以看到该网络上的有效 IP 地址192.168.1.129192.168.1.190

ipcalc 192.168.1.128/26
Address:   192.168.1.128        11000000.10101000.00000001.10 000000
Netmask:   255.255.255.192 = 26 11111111.11111111.11111111.11 000000
Wildcard:  0.0.0.63             00000000.00000000.00000000.00 111111
=>
Network:   192.168.1.128/26     11000000.10101000.00000001.10 000000
HostMin:   192.168.1.129        11000000.10101000.00000001.10 000001
HostMax:   192.168.1.190        11000000.10101000.00000001.10 111110
Broadcast: 192.168.1.191        11000000.10101000.00000001.10 111111
Hosts/Net: 62                    Class C, Private Internet

答案2

An /16 is usually used to indicate the number of bits that are fixed (would not change) in a range of addresses of a network. That is a simpler syntax to express the CIDR

IP 号为 1.2.255.1/16 意味着从 1.2.0.0 到 1.2.255.255 的任何地址都是该地址范围或网络的一部分。

但是,以 255 开头的 IP 号码,相似的通常使用您写的 255.255.255.1/16仅有的为了网络掩码表示前 16 位是固定的,其余的可能会改变。

掩码 255.255.0.0 和 abcd/16 具有完全相同的掩码位(或使用的位)。

IP 255.255.255.255 是由 IANA 保留以供将来使用叫做“有限广播”目的地址对于 0.0.0.0 网络。或者,用外行的话来说广播地址

完整的解释有点长,但这就是要点。

答案3

IP地址后面的减号是子网掩码的缩写。 ...子网掩码中的个数等于缩写的范围。例如,您询问的 /16 子网掩码将连续有十六个,数字的松弛为零。 11111111.11111111。 00000000.00000000。

相关内容