一个IPv4地址可以这样表示
192.168.1.1
它被点号分成4个部分,每个部分都是一个在0-255之间的整数
下面这些IP地址都是不合法的
233.333.333.333 114.514.114.514
因为它们中的某些部分不在0-255之间
一个IP区间该如何表示呢?
192.168.1.1 - 192.168.1.255
这是比较直观的表示方法,一眼就可以看出来表示了哪些地址
但是在计算机中,我们有一种更加适合计算机的表示方法
它叫做:子网掩码
子网掩码可以表示扩展的IP数量
最常见的掩码是长这样的
255.255.255.0
它表示扩展了255个地址
这个255是怎么来的呢
你可以把它理解成是255.255.255.255(最大子网掩码)和它相减得到的差
知道了扩展的IP数量之后,我们还需要一个IP地址作为起点
我们如果以192.168.1.0为起点,这个区间就是(不会包含起点)
192.168.1.1 - 192.168.1.255
这个区间里一共有255个IP地址
再举个例子
255.255.128.0
它表示扩展了32767个地址
需要转换成二进制计算
如果我们把起点设为192.168.1.0
那它将会表示下面这个IP区间
192.168.0.1 - 192.168.127.255
一共有32767个地址
我们一般把起点放在子网掩码前,写成下面这个形式
192.168.1.0 255.255.255.0
我们可以随意指定子网掩码来限制扩展的IP数量吗
不可以
合法的子网掩码转换成二进制都是一串从左到右连续的1
11111111.11110000.00000000.00000000(合法) 11111111.11111111.11100000.00000000(合法) 00111111.11111111.11111111.00000000(不合法) 11111111.11111111.11111111.00001011(不合法)
世界上只有33个不同的子网掩码
0-32个1
于是子网掩码有一种简便写法
192.168.1.0/24
斜杠后面的数字叫做掩码位
表示子网掩码二进制1的数量
它等价于
192.168.1.0 255.255.255.0
表示
192.168.1.1 - 192.168.1.255
有两个子网掩码比较特殊
0.0.0.0
它的长度为0,只能以0.0.0.0作为起点,表示所有IP地址
因此我们一般用0.0.0.0/0来表示所有IP地址
255.255.255.255
它的长度为32,表示起点
192.168.1.2/32只表示192.168.1.2这一个IP地址
需要注意的是
子网掩码在使用时必须保证表示的网段中的IP都是合法的
如果255.255.255.0以192.168.1.1为起点
它就会表示一个不合法的网段
192.168.1.2 - 192.168.1.256
在线换算工具
发表评论