摘录整理自《网络是怎样连接的》
互联网和公司内部的局域网都是基于TCP/ IP 的思路来设计的,就是由一些小的子网,通过路由器连接起来组成一个大的网络。这里的子网可以理解为用集线器连接起来的几台计算机 ,我们将它看作一个单位,称为子网。将子网通过路由器连接起来,就形成了一个网络。
在网络中,所有的设备都会被分配一个地址。这个地址就相当于现实中某条路上的“×× 号 ×× 室”。其中“号”对应的号码是分配给整个子网的,而“室”对应的号码是分配给子网中的计算机的,这就是网络中的地址。“号”对应的号码称为网络号,“室”对应的号码称为主机号,这个地址的整体称为 IP 地址。
IP地址由一串32bit(比特)的数字,按照8bit(1byte)为一组分成4组,分别用十进制表示,然后再用圆点隔开。
比如:49.81.105.32
这就是我们平常经常见到的 IP 地址格式,但仅凭这一串数字我们无法区分哪部分是网络号,哪部分是主机号。在 IP 地址的规则中,网络号和主机号连起来总共是 32 bit,但这两部分的具体结构是不固定的。在组建网络时,用户可以自行决定它们之间的分配关系,因此,我们还需要另外的附加信息来表示 IP 地址的内部结构。这一附加信息称为子网掩码。
子网掩码是一串与IP 地址长度相同的 32 bit数字,其左边一半都是 1,右边一半都是 0。其中,子网掩码为 1 的部分表示网络号,子网掩码为 0 的部分表示主机号。
将子网掩码按照和 IP 地址一样的方式以每 8 bit为单位用圆点分组后写在 IP 地址的右侧。这种写法太长,我们也可以把 1 的部分的比特数用十进制表示并写在 IP 地址的右侧。这两种方式只是写法上的区别,含义是完全一样的。
10.11.12.13/255.255.255.0也可以写成10.11.12.13/24,这个24是怎么来的?
是因为255.255.255.0转成二进制表示为11111111.11111111.11111111.00000000,一共有24个为1的比特位。