1 IP 地址
1.1 分类地址
IP地址分为A、B、C、D、E五类
- A、B、C三类都是由网络标识和主机标识组成
- D类用于多播地址,E类保留为今后使用
类别 | 网络标识 | 主机标识 | 范围 | 首位特点 |
---|---|---|---|---|
A类地址 | 8 | 24 | 0~127 | 首位固定为 0 |
B类地址 | 16 | 16 | 128~191 | 前两位固定为 1 0 |
C类地址 | 24 | 8 | 192~223 | 前三位固定为 1 1 0 |
D类地址 | / | / | 224~239 | 前四位固定为 1 1 1 0 |
E类地址 | / | / | 240~255 | 前四位固定为 1 1 1 1 |
1.2 子网寻址
查看上述的A类地址,它可使用的主机数有 224,那么当分配了A类IP地址后,却发现并没有那么多的主机,这样就造成了剩余可用主机数的浪费;或者说被分配了C类地址后,却发现有上万台主机,而C类地址可用的主机数只有 2 8个,因此只能给其多分配几个C类地址,那么C类地址就很容易被消耗完
为了解决上述办法,又采用了一种叫做子网寻址的方法,即假设当一个站点被分配了B类地址,那么该站点的管理员可以将B类地址的主机号部分继续分成两部分,分别为 子网号 和 主机号,这两者所占的位数可以根据实际需求自由分配,例如分配给子网号8位,分配给主机号8位,即平分,结果如下图:
此时的站点可以支持 2 8=256 个子网,每个子网中最多可支持 2 8 −2=254 台主机(每个子网的第一个地址和最后一个地址不会被使用
)
1.3 子网掩码
子网掩码是由一台主机或路由器使用的分配位,用以确定如何从一台主机对应的IP地址中获得网络和子网信息,更通俗点说,通过它可以确定一个IP地址的网络/子网部分的结束和主机部分的开始
接下来说说子网掩码是如何使用的,其二进制位1对应IP地址的网络/子网部分;相反,0对应IP地址的主机号部分。换个说法就是子网掩码第一个0所对应IP地址的位为主机号的第一位;也可以借用前缀长度来判断,即前缀长度后一位对应的也是IP地址主机号的第一位。
例如刚才举的例子,站点管理员将B类地址 128.32.x.x
的主机位划分位8位的子网号和8位的主机号,那么他就会提前设置好一个长度为 16 + 8 = 24 16+8=24 16+8=24 的子网掩码,即 255.255.255.0
,表示前24位是网络/子网部分,那么路由器在处理图中的IPv4地址 128.32.1.14
时,会先查看一下子网掩码,此时将IP地址和子网掩码对应的位进行与运算即可获得该IP所处的是哪个子网,运算过程如下图:
结果中的 128.32.1.0
就是IP地址 128.32.1.14
所属的子网
但此时有没有发现一个问题?虽然给地址划分了子网号和主机号,但是每个子网号所对应子网的主机数就固定死了,而且每个子网所支持的主机数都是一样的,这一定是不合理的,因为实际应用中,可能这个区域只需要支持10台主机,而另一个区域需要支持100台主机,那么我们此时在划分子网号和主机号的时候,至少要让每个子网支持的主机数大于100台,那只需要支持10台主机的区域分配到了一个子网,岂不是至少浪费了其中的90个空间么?面对这样的问题,我们又该如何解决呢?
1.4 广播地址
在每个IPv4的子网中,都会有一个特殊的地址被保留作为子网的广播地址,那如何获取它呢?我们只需要将子网掩码的所有位都取反,即0变1,1变0,然后将取反后的子网掩码与子网内的IP地址进行或运算即可得到广播地址
仍然延用上面的例子,子网内的IP地址为 128.32.1.14
,子网掩码为 255.255.255.0
,则比较过程如下图:
图中获得的结果 128.32.1.255
即为子网 128.32.1.0
中的广播地址,前面说过,每个子网中的头尾两个地址一般是不被使用的,所以该子网中可用的单播地址范围就是 128.32.1.1 ~ 128.32.1.254
1.5 速记总结
- IP地址分类 由网络标识和主机号组成
- 子网掩码:网络号和子网号全为1,主机号全为0
- 子网IP = IP地址和子网掩码相与
- 广播地址 = IP地址和取反的子网掩码相或