IP地址后的斜杠-CIDR表示法


Answers:


189

一个简单的解释:

/<number>是计算机可以快速计算其网络组成部分和不组成部分的方法。如上所述,它代表子网掩码的位长。子网掩码就像绘画时的掩码。您在不想画的东西上放了一个面具。子网掩码是一种计算地址空间和主机地址空间的网络部分的方法。网络地址空间是分配给您的,主机地址空间是您定义的,哪个设备在主机空间中接收什么地址。

计算机执行对IP地址和网络掩码进行“与”运算的二进制数学运算。

IP地址10.10.15.10/16

步骤1)将IP地址的4个八位位组转换为二进制:00001010.00001010.00001111.00001010

步骤2)将子网掩码4个八位位组转换为二进制,这很容易使用CIDR:11111111.11111111.00000000.00000000

步骤3)对两个地址执行ANDing操作。这将为您提供子网的网络地址。

ANDing规则如下:

  • 1和1 = 1
  • 0 AND 1 = 0
  • 0 AND 0 = 0
  • 1 AND 0 = 0
         00001010.00001010.00001111.00001010
     AND 11111111.11111111.00000000.00000000
         ————————————————————————————————————
         00001010.00001010.00000000.00000000

步骤4)将其转换回十进制:10.10.0.0

因此,现在计算机知道从10.10.0.0到10.10.255.255的任何地址都是其网络的一部分,而其他地址则不是。

就像一个二进制网络帮派一样,您是否在。


6
我喜欢绘画胶带的可视化效果
El Guapo

“成为其网络的一部分”是什么意思?当您将一段IP称为内部,其余称为外部时,会完成什么工作?
科里·克莱恩

@CoryKlein,它用于确定传输节点是否将1)ARP作为目标地址,或2)ARP作为其默认网关的地址,以便将数据包发送到该地址。1假定目标地址是本地地址或“内部”-2假定目标地址是非本地地址或“外部”。
约翰·詹森

156

斜杠及其后的数字只是编写子网掩码的一种简便方法。这称为CIDR(无类域间路由)表示法。通常也称为前缀长度

斜线后的数字表示子网掩码中连续的1。例如,192.168.10.0/24等于192.168.10.0带有255.255.255.0子网掩码的网络。如果转换255.255.255.0为二进制,则最终会出现24个连续1的:

11111111.11111111.11111111.00000000

另一个例子可能是10.0.0.0/81子网掩码中的8个连续的数字给您11111111.00000000.00000000.00000000255.0.0.0

有关更多信息,请参见RFC 4632第3.1节


4
这是对第一个答案的完美补充。我终于明白了那个数字实际上代表什么。
user3417583 18/12/18

尽管票数最高的答案不一定很糟糕,但OP并没有询问子网掩码的工作方式或节点如何确定目标地址是否在其本地子网上,因此IMO票数最高的答案是过度解释的。
约翰·詹森

25

IP地址后面的斜杠是子网掩码的缩写。

子网掩码的二进制版本将由1和0组成,就像IP地址的二进制版本一样,但是,子网掩码中的1都是连续的。子网掩码中的1的数量等于缩写的数量。

例如,您询问的/ 16子网掩码将连续有16个,其余数字为零。11111111.11111111.00000000.00000000。从二进制的以2为底的数字系统转换为IP地址十进制版本的以10为底的数字系统时,它等于255.255.0.0。

/ 9子网掩码为11111111.10000000.00000000.00000000或255.128.0.0。

/ 30子网掩码是11111111.11111111.11111111.11111100或255.255.255.252,这对于创建仅占2个路由器或第3层交换机的网络非常有用,因为总IP地址只有4个,而其中只有2个可用的主机IP地址。

子网划分可以完成很多工作,但是如果您刚刚开始,子网划分是一个全新的难题。


4
请注意,此页面仍在谈论有类地址,该类地址已在1993
Sander Steffann 2013年

我有错 我抓到了第一张图,发现它以最简单的方式准确地阐明了每个图的含义。
MooseBalm 2013年

3
@ 4m1nh4j1漂亮图片有些短,但是请查看Server Fault上子网划分说明。该/x风格有关讨论中途下,“更多的术语”下
voretaq7

4

192.168.0.0是专用IP地址的起始范围地址(192.168.0.0到192.168.255.255小型网络)。这意味着您已经在32位中使用了16位作为网络地址,其余的位用于主机寻址。根据您的网络设计,这些剩余的十六位可用于子网划分,以及以上帖子中说明的其他子网划分步骤。


因此,如果我正确理解,它是这样的:192.168.0.0/24表示IP地址在192.168.0.1和192.168.0.254范围内的主机;另一个示例是:192.168.0.0/16表示IP地址在192.168.0.1到192.168.254.254范围内的主机
Fernando Gabrieli

对。您明白了这一点。
加特·辛格·布拉

4

另一个简单的解释是,一个范围内可以有多少个地址。

例如:您有一个IP abcd / x。因此,a,b,c,d的值分别为0-255,这样我们得到2 ^ 3(最大长度为3)=8。所以ip的一部分可以有8位。

所以现在,如果我们将ip像10.10.0.0/x这样写,那么现在x / 8 =我们拥有的固定块总数。

例如:如果我们有/ 16,那么16/8 = 2,这意味着我们有2个空闲块,所以现在ip为10.10.0.0,因此这里的前两个块是固定的,后两个块中每个块可以有0-255,所以256 * 256 = 65536(我们可以拥有的地址),并且在网络掩码中为255.255.0.0

现在让我们说/ 18不能被8整除,所以18/8 = 2(固定块),剩下2,所以现在将256除以两次,即256/2 = 128,128 / 2 = 64 64现在256-64 =192。所以现在我们的网络掩码为255.255.192.0,这意味着我们可以拥有64 * 256地址。

此外,如果是/ 24,则表示24/8 = 3,三个块是固定的,一个是可变的。网络掩码是255.255.255.0,如果我们有/ 8,则意味着8/8 = 1一个块是固定的。所以255.0.0.0


2

它代表子网(子网)掩码。

1)在计算机读取IP地址时将其重写。

192.168.0.0转换为binary / base2 /'bits'为11000000.10101000.00000000.00000000

2)表示子网地址的位数(从左到右)指定为16('/ 16')。

16位或11000000.10101000(192.168)是网络地址,0.0或00000000.00000000是主机地址-在这种情况下为广播地址。

之所以称其为掩码,是因为您要告诉计算机在计算主机地址时忽略该位数,或者可能是网络将这些位数用作标识符或掩码。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.