标准的划分方法的缺点:
-
IP 地址空间的利用率有时很低。
-
给每一个物理网络分配一个网络号会使路由表变得太大因而使网络性能变坏。
-
两级的 IP 地址不够灵活
最终提出解决的办法:划分子网,两级地址变为三级地址
1.1 划分子网的基本思路
-
划分子网纯属一个单位内部的事情。单位对外仍然表现为没有划分子网的网络。
-
从主机号借用若干个位作为子网号 subnet-id,而主机号 host-id 也就相应减少了若干个位。
-
凡是从其他网络发送给本单位某个主机的 IP 数据报,仍然是根据 IP 数据报的目的网络号 net-id,先找到连接在本单位网络上的路由器。
-
然后此路由器在收到 IP 数据报后,再按目的网络号 net-id 和子网号 subnet-id 找到目的子网。
-
最后就将 IP 数据报直接交付目的主机。
IP地址 ::= {<网络号>, <子网号>, <主机号>}
1.1.1划分子网后变成了三级结构
-
当没有划分子网时,IP 地址是两级结构。
-
划分子网后 IP 地址就变成了三级结构。
-
划分子网只是把 IP 地址的主机号 host-id 这部分进行再划分,而不改变 IP 地址原来的网络号 net-id。
1.2子网掩码
1.2.1问题引出
202.196.32.3
11010100 11001000 00100000 00000011
-
划分子网了吗?
-
如果划分了,子网号几位?
-
对于两个IP地址,如何判断是否属于同一个子网?
1.2.2字码掩码规则
-
子网掩码长度=32位
-
某位=1:IP地址中的对应位为网络号和子网号
-
某位=0:IP地址中的对应位为主机号
-
从一个 IP 数据报的首部并无法判断源主机或目的主机所连接的网络是否进行了子网划分。
-
使用子网掩码(subnet mask)可以找出 IP 地址中的子网部分。
-
一个网络中子网掩码是指他的网络号和子网号对应的位数全为一,然后对应的主机号位置为0
-
而这个子网掩码和给定的IP地址做逐位与运算或AND运算
-
运算完成后得到的网络地址就是子网的网络地址
子网掩码就相当于把IP地址中的主机号给过滤掉 ,剩下的就是网络号和子网号。
1.2.3 子网掩码是一个重要属性
-
子网掩码是一个网络或一个子网的重要属性。
-
路由器在和相邻路由器交换路由信息时,必须把自己所在网络(或子网)的子网掩码告诉相邻路由器。
-
路由器的路由表中的每一个项目,除了要给出目的网络地址外,还必须同时给出该网络的子网掩码。
-
若一个路由器连接在两个子网上就拥有两个网络地址和两个子网掩码。
不同的子网掩码得出相同的网络地址。但不同的掩码的效果是不同的。
1.3使用子网时分组的转发
-
在不划分子网的两级 IP 地址下,从 IP 地址得出网络地址是个很简单的事。
-
划分子网的情况下,从 IP 地址却不能唯一地得出网络地址来, 这是因为网络地址取决于那个网络所采用的子网掩码,但数据报的首 部并没有提供子网掩码的信息。
-
因此分组转发的算法也必须做相应的 改动。
(1) 从收到的分组的首部提取目的 IP 地址 D。
(2) 先用各网络的子网掩码和 D 逐位相“与”,看是否和 相应的网络地址匹配。若匹配,则将分组直接交付。 否则就是间接交付,执行(3)。
(3) 若路由表中有目的地址为 D 的特定主机路由,则将分组传送给指明的下一跳路由器;否则,执行(4)。
(4) 对路由表中的每一行的子网掩码和 D 逐位相“与”,若其结果与该行的目的网络地址匹配,则将分组传送 给该行指明的下一跳路由器;否则,执行(5)。
(5) 若路由表中有一个默认路由,则将分组传送给路由表 中所指明的默认路由器;否则,执行(6)。
(6) 报告转发分组出错。
判断是否直接交付
判断目的的IP和我源主机是不是在同一个网络上。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wHVhoP2M-1590216924215)(http://q783x3y6t.bkt.clouddn.com/mxs/image-20200331163639816.png)]
1.4划分子网实例
问题1:已分配了一个C类地址:192.168.5.0,假设需要20个子 网,每个子网有5台主机,试确定各子网地址和子网掩码。
- 对C类地址,要从最后8位中分出几位作为子网地址:
∵ 24<20<25
∴ 选择5位作为子网地址,共可提供30个子网地址。
- 检查剩余的位数能否满足每个子网中主机台数的要求:
∵ 23>5+2
∴ 可以满足每子网5台主机的要求。
- 选择5位作为子网地址
∵ 11111000 = 248
∴ 子网掩码为255.255.255.248。
- 子网地址可在8、16、24、32、……、240共30个地址中任意 选择20个。
问题2:一个大型跨国公司的管理者从网络管理中心获得一个 A类IP地址121.0.0.0;需要划分1000个子网,请给出该所有子网 的IP地址范围。
分析:
该公司需要有1000个物理网络,加上主机号全 0和全1的两 种特殊地址,子网数量至少为1002。 选择子网号的位长为10,可以用来分配的子网最多为1010个, 也就是1024个,满足用户要求 。
问题3:
主机1的IP地址为156.26.27.71
主机2的IP地址为156.26.27.110
子网掩码为255.255.255.192
判断它们是不是在同一个子网上
2.1互联网仍然面临三个必须尽早解决的问题:
(1) B 类地址在 1992 年已分配了近一半,眼看就要在 1994 年 3 月全部分配完毕!
最后
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。
因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
055768)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!