【计算机网络】网络层 : 总结 ( 功能 | 数据交换 | IP 数据报 | IPv4 地址 | IPv6 地址 | 路由选择协议 | 路由算法 )★★★(二)

本文涉及的产品
公网NAT网关,每月750个小时 15CU
简介: 【计算机网络】网络层 : 总结 ( 功能 | 数据交换 | IP 数据报 | IPv4 地址 | IPv6 地址 | 路由选择协议 | 路由算法 )★★★(二)

四、 IPv4 地址 ★★


1 . IP 地址 发展 :


第一阶段 : 分类的 IP 地址


第二阶段 : 子网的划分


第三阶段 : 构成超网 , 无分类编址方法




2 . 分类 IP 地址


IP 地址 : 由 4 44 字节构成 , 表示路由器主机的接口 ;


IP 地址组成 : 网络号 + 主机号 ;



IP 地址分类 :


A AA 类 : 网络号占 1 11 字节 , 第一位是 0 00 ;


B BB 类 : 网络号占 2 22 字节 , 前两位是 10 1010 ;


C CC 类 : 网络号占 3 33 字节 , 前三位是 110 110110 ;


D DD 类 : 网络号占 4 44 字节 , 前四位是 1110 11101110 , 该类地址是多播地址 ;


E EE 类 : 前四位是 1111 11111111 , 暂时没有启用 , 保留 ;


image.png




A AA 类网络 IP 地址 :


① 最大可用的网络数 : 2 7 − 2 2^7 - 22

7

−2 , 网络号 1 11 字节 , 第一位必须是 0 00 , 可以设置 7 77 位 ; 网络号全 0 00 , 即 0.0.0.0 0.0.0.00.0.0.0 指的是本网络 ; 网络号 127 127127 是环回地址 , 也是不能使用的 ; 因此减去 2 22 个不能使用的网络号 ;


② 网络号取值 : 1 11 ~ 126 126126 ;


③ 最大主机数 : 2 24 − 2 2^{24} - 22

24

−2 , 主机号 3 33 字节 , 有 24 2424 位 ; 主机号全 0 00 表示的是本网络号 , 不能支配给主机 ; 主机号全 1 11 表示广播地址 , 不能分配给指定主机 ; 因此减去 2 22 个不能使用的主机号 ;



B BB 类网络 IP 地址 :


① 最大可用的网络数 : 2 14 − 1 2^{14} - 12

14

−1 , 网络号 2 22 字节 , 前两位必须是 10 1010 , 可以设置 16 − 2 = 14 16-2=1416−2=14 位 ; 网络号全 0 00 , 即 128.0 128.0128.0 指的是本网络 ; 因此减去 1 11 个不能使用的网络号 ;


② 网络号取值 : 128.1 128.1128.1 ~ 191.255 191.255191.255 ;


③ 最大主机数 : 2 16 − 2 2^{16} - 22

16

−2 , 主机号 2 22 字节 , 有 16 1616 位 ; 主机号全 0 00 表示的是本网络号 , 不能支配给主机 ; 主机号全 1 11 表示广播地址 , 不能分配给指定主机 ; 因此减去 2 22 个不能使用的主机号 ;



C CC 类网络 IP 地址 :


① 最大可用的网络数 : 2 21 − 1 2^{21} - 12

21

−1 , 网络号 3 33 字节 , 前两位必须是 110 110110 , 可以设置 24 − 3 = 21 24-3=2124−3=21 位 ; 网络号全 0 00 , 即 192.0.0 192.0.0192.0.0 指的是本网络 ; 因此减去 1 11 个不能使用的网络号 ;


② 网络号取值 : 192.0.1 192.0.1192.0.1 ~ 223.255.255 223.255.255223.255.255 ;


③ 最大主机数 : 2 8 − 2 2^{8} - 22

8

−2 , 主机号 1 11 字节 , 有 8 88 位 ; 主机号全 0 00 表示的是本网络号 , 不能支配给主机 ; 主机号全 1 11 表示广播地址 , 不能分配给指定主机 ; 因此减去 2 22 个不能使用的主机号 ;



参考博客 : 【计算机网络】网络层 : IPv4 地址 ( IP 地址分类 | 特殊 IP 地址 | 私有 IP 地址 | A 类、B 类、C 类 IP 地址网络号主机号数量 )★




3 . NAT 转换


私有 IP 地址 : 只适用于在内部网络中使用 , 在互联网上使用私有 IP 地址 , 路由器并不识别这些 IP 地址 ;


A AA 类 私有 IP 地址 : 10.0.0.0 10.0.0.010.0.0.0 ~ 10.255.255.255.255 10.255.255.255.25510.255.255.255.255 , 有 1 11 个网段 , 即可分配 1 11 个网络号 ;

B BB 类 私有 IP 地址 : 172.16.0.0 172.16.0.0172.16.0.0 ~ 172.31.255.255 172.31.255.255172.31.255.255 , 有 16 1616 个网段 , 即可分配 16 1616 个网络号 ;

C CC 类 私有 IP 地址 : 192.168.0.0 192.168.0.0192.168.0.0 ~ 192.168.255.255 192.168.255.255192.168.255.255 , 有 256 256256 个网段 , 即可分配 256 256256 个网络号 ;


路由器 不转发 私有 IP 地址 的 目的地址 ;



NAT 转换表 : 每个 LAN 局域网 IP 地址 : 端口号 , 与 WAN 广域网 IP 地址 : 端口号 的对应关系 ;



NAT 转换表 对应示例 :


WAN 广域网地址 172.38.1.5 : 44444 172.38.1.5:44444172.38.1.5:44444 , 对应 LAN 局域网地址 192.168.0.3 : 22222 192.168.0.3:22222192.168.0.3:22222 ;

WAN 广域网地址 172.38.1.5 : 44445 172.38.1.5:44445172.38.1.5:44445 , 对应 LAN 局域网地址 192.168.0.2 : 11111 192.168.0.2:11111192.168.0.2:11111 ;


参考博客 : 【计算机网络】网络层 : NAT 网络地址转换 ( 私有 IP 地址不被路由器转发 | NAT 转换表 )




4 . 子网划分


子网划分 :


① 二级 IP 地址 : 网络号 + 主机号 ;


② 三级 IP 地址 : 子网划分中 , 在主机号中 , 拿出一部分地址 , 作为子网号 , 那么子网划分 IP 地址组成是 : 网络号 + 子网号 + 主机号 ; 其中 子网号 + 主机号 , 相当于 二级 IP 地址中的主机号 ;




三级 IP 地址 :


① 子网划分对外透明 : 划分子网后, 对外仍然表现为一个网络 , 外部是不知道内部子网划分的详细信息的 ;


② 主机号位数 : 主机号 至少要留下 两位 , 因为如果留下 一位 , 只能取值 0 00 或 1 11 , 这两位都是不可使用的 , 一个代表网络, 一个代表广播地址 ;


③ 子网号 : 是否能够设置成全 0 00 , 或者 全 1 11 , 看前提情况 ;


④ 主机号 : 不能设置成 全 0 00 , 全 1 11 ;




5 . 子网掩码


两级 IP 地址 : 网络号 + 主机号 ; 如 : 145.13.3.10 145.13.3.10145.13.3.10 ; 其中 145.13 145.13145.13 是网络号 , 3.10 3.103.10 是主机号 ;


子网掩码 : 网络号对应位数全部设置成 1 11 , 主机号对应的位数 , 全部设置成 0 00 ; 上述 两级 IP 地址对应的子网掩码是 11111111 11111111 00000000 00000000 11111111 \quad 11111111 \quad 00000000 \quad 0000000011111111111111110000000000000000 , 写成点分十进制就是 255.255.0.0 255.255.0.0255.255.0.0 ;




三级 IP 地址 : 网络号 + 子网号 + 主机号 ; 如 145.13.3.10 145.13.3.10145.13.3.10 ; 其中 145.13 145.13145.13 是网络号 , 3 33 是子网号 , 10 1010 是主机号 ;


子网掩码 : 网络号 和 子网号 对应位数全部设置成 1 11 , 主机号对应的位数 , 全部设置成 0 00 ; 上述 两级 IP 地址对应的子网掩码是 11111111 11111111 11111111 00000000 11111111 \quad 11111111 \quad 11111111 \quad 0000000011111111111111111111111100000000 , 写成点分十进制就是 255.255.255.0 255.255.255.0255.255.255.0 ;


参考博客 : 【计算机网络】网络层 : 子网划分 ( 三级 IP 地址 | 子网划分 | 子网掩码 | 子网掩码计算示例 | 子网的分组转发 )




6 . 子网掩码 计算示例


1 . 示例 1


IP 地址 141.14.72.24 141.14.72.24141.14.72.24 , 子网掩码是 255.255.192.0 255.255.192.0255.255.192.0 , 求对应的网络地址 ?



① 子网掩码 前两位 是 255 255255 , 141.14 141.14141.14 与 255.255 255.255255.255 与运算结果是 141.14 141.14141.14 ;


② 子网掩码最后一位是 0 00 , 因此 24 2424 与 0 00 相与后 , 结果是 0 00 ;


③ 只需要计算第三位 72 7272 与 192 192192 相与的结果 :


( 0100 1000 ) & ( 1100 0000 ) = 0100 0000 (0100 \quad 1000 ) \quad \& \quad (1100 \quad 0000) = 0100 \quad 0000(01001000)&(11000000)=01000000


转为十进制后为 64 6464 ;



网络地址为 : 141.14.64.0 141.14.64.0141.14.64.0 ;




2 . 示例 2



IP 地址 141.14.72.24 141.14.72.24141.14.72.24 , 子网掩码是 255.255.224.0 255.255.224.0255.255.224.0 , 求对应的网络地址 ?



① 子网掩码 前两位 是 255 255255 , 141.14 141.14141.14 与 255.255 255.255255.255 与运算结果是 141.14 141.14141.14 ;


② 子网掩码最后一位是 0 00 , 因此 24 2424 与 0 00 相与后 , 结果是 0 00 ;


③ 只需要计算第三位 72 7272 与 224 224224 相与的结果 :


( 0100 1000 ) & ( 1110 0000 ) = 0100 0000 (0100 \quad 1000 ) \quad \& \quad (1110 \quad 0000) = 0100 \quad 0000(01001000)&(11100000)=01000000


转为十进制后为 64 6464 ;



网络地址为 : 141.14.64.0 141.14.64.0141.14.64.0 ;




255.255.224.0 255.255.224.0255.255.224.0 子网掩码 与 255.255.192.0 255.255.192.0255.255.192.0 子网掩码对比 :


255.255.192.0 255.255.192.0255.255.192.0 子网掩码中 , 192 192192 对应的二进制数为 1100 0000 1100 \quad 000011000000 , 其中有 6 66 位是主机号 , 加上剩余的最后 1 11 字节 , 主机号共有 14 1414 位 ;

255.255.224.0 255.255.224.0255.255.224.0 子网掩码中 , 224 224224 对应的二进制数为 1110 0000 1110 \quad 000011100000 , 其中有 5 55 位是主机号 , 加上剩余的最后 1 11 字节 , 主机号共有 13 1313 位 ;



3 . 示例 3



主机 IP 地址是 180.80.77.55 180.80.77.55180.80.77.55 , 其子网掩码是 255.255.252.0 255.255.252.0255.255.252.0 , 写出该主机所在的子网的广播地址 ;



广播地址 , 网络号正常 , 主机号都是 1 11 ;


先求出其网络号 , 然后设置全 1 11 的主机号 ;



主机地址 180.80.77.55 180.80.77.55180.80.77.55 与 子网掩码 255.255.252.0 255.255.252.0255.255.252.0 进行与运算 , 就可以得到其子网号 ;


77 & 252 = 0100   1101 & 1111   1100 = 0100   1100 77 \& 252 = 0100 \ 1101 \& 1111 \ 1100 =0100 \ 110077&252=0100 1101&1111 1100=0100 1100


将 0100   1100 0100 \ 11000100 1100 转为十进制是 76 7676 ;



网络号是 : 180.80.76.0 180.80.76.0180.80.76.0


广播地址 : 将主机号都设置为 1 11 , 即可得到 广播地址是 : 180.80.79.255 180.80.79.255180.80.79.255


参考博客 : 【计算机网络】网络层 : 子网划分 ( 三级 IP 地址 | 子网划分 | 子网掩码 | 子网掩码计算示例 | 子网的分组转发 )




7 . CIDR 无分类编址


1 . CIDR 发展


无分类编址 CIDR 发展 : “无分类编址” 又称为 “无分类域间路由选择” ;


① 分类 IP 地址 : 原来的 分类 IP 地址 , A 类 , B 类 , C 类 , IP 地址组成 : 网络号 + 主机号 ;


② 子网划分 IP 地址 : 在 分类 IP 地址基础上 , 划分子网 , IP 地址组成 : 网络号 + 子网号 + 主机号 ;


③ 无分类编址法 : 由 网络前缀 + 主机号 组成 ;




2 . CIDR 地址记法



无分类域间路由选择 CIDR 记法 : IP 地址后面加上 “/” , 表示网络前缀的长度 ;


如 : 128.14.35.7 / 20 128.14.35.7/20128.14.35.7/20 , 表示该 IP 地址 , 前 20 2020 位 是网络前缀 ;



CIDR 地址块 : CIDR 将 网络前缀 相同的 , 连续的 , IP 地址 , 组成一个 “CIDR 地址块” ;


CIDR 地址块相关计算 : 上述示例中 , 128.14.35.7 / 20 128.14.35.7/20128.14.35.7/20 地址 , 是某个 CIDR 地址块中的地址 , 根据该地址可以得到该 CIDR 地址块 , 以及计算出该地址块的 最大地址 和 最小地址 ;



① 先将 128.14.35.7 / 20 128.14.35.7/20128.14.35.7/20 地址转为 二进制 形式 ;


10000000 00001110 00100011 00000111 10000000 \quad 00001110 \quad 00100011 \quad 0000011110000000000011100010001100000111


前 20 2020 位是 网络前缀 , 为 :


10000000 00001110 0010 10000000 \quad 00001110 \quad 001010000000000011100010



② 地址块地址 : 二进制形式如下 :


10000000 00001110 0010 10000000 \quad 00001110 \quad 001010000000000011100010 0000 00000000 0000 \quad 00000000000000000000


转为十进制为 :


128.14.32.0 / 20 128.14.32.0/20128.14.32.0/20



③ 最小地址 : 最小地址就是 主机号 全 0 00 ; 也就是地址块地址 ;


10000000 00001110 0010 10000000 \quad 00001110 \quad 001010000000000011100010 0000 00000000 0000 \quad 00000000000000000000



④ 最大地址 : 最大地址就是 主机号 全 1 11 ;


10000000 00001110 0010 10000000 \quad 00001110 \quad 001010000000000011100010 1111 11111111 1111 \quad 11111111111111111111



⑤ 子网掩码 : 又称为 “地址掩码” , 网络前缀对应的前 20 2020 位 为 1 11 , 主机号对应的位数为 0 00 ;


11111111 11111111 1111 11111111 \quad 11111111 \quad 111111111111111111111111 0000 00000000 0000 \quad 00000000000000000000


转为十进制为 : 255.255.240.0 255.255.240.0255.255.240.0




3 . 构成超网 : 将 多个 CIDR 编址的 子网 聚合成一个较大的子网 , 又称为 “路由聚合” ;


方法 : 缩短网络前缀 ;



构成超网示例 :


子网块 1 11 : 206.1.0.0 / 17 206.1.0.0/17206.1.0.0/17 ;

子网块 2 22 : 206.1.128.0 / 17 206.1.128.0/17206.1.128.0/17 ;

上述网络前缀都是 17 1717 位 , 将网络前缀缩短 1 11 位 , 即可构成一个新的超网 , 网络前缀为 16 1616 位 ;


新的超网为 : 206.1.0.0 / 16 206.1.0.0/16206.1.0.0/16




4 . 最长前缀匹配 : 使用 CIDR 编址时 , 路由查找时 , 将可能得到的几个匹配结果 , 选择 符合 网络前缀 的 , 具有最长网络前缀 的路由 ;


原理 : 因为 前缀越长 , 主机号选择性就越小 , 越容易找到对应的主机 ;



计算示例 :


路由表如下 :


目的网络 1 11 : 132.0.0.0 / 8 132.0.0.0/8132.0.0.0/8 , 下一跳路由 R 1 R1R1 ;

目的网络 2 22 : 132.0.0.0 / 11 132.0.0.0/11132.0.0.0/11 , 下一跳路由 R 2 R2R2 ;

目的网络 3 33 : 132.19.232.0 / 22 132.19.232.0/22132.19.232.0/22 , 下一跳路由 R 3 R3R3 ;

目的网络 4 44 : 0.0.0.0 / 0 0.0.0.0/00.0.0.0/0 , 下一跳路由 R 4 R4R4 ;


分析 :


其中 目的网络 4 44 是 默认路由 , 如果上述 3 33 个都不符合 , 就选择默认路由 ;


目的网络 1 11 的 网络前缀 符合要求 , 网络前缀长度为 8 88 , 该路由选择 比 默认路由 要好 ;


目的网络 2 22 的 网络前缀 符合要求 , 网络前缀长度为 11 1111 , 该路由选择 比 目标网络 2 22 要好 ;


目的网络 3 33 的网络前缀是 132.19.236.0 132.19.236.0132.19.236.0 , 该网络前缀不符合要求 , 必须不能选择 ;


因此这里选择 目的网络 3 33 , 作为 下一跳路由 ;




5 . 计算示例


某网络 IP 地址为 192.168.5.0 / 24 192.168.5.0/24192.168.5.0/24 , 采用 定长子网划分 , 子网掩码为 255.255.255.248 255.255.255.248255.255.255.248 , 求网络中的最大子网个数 , 每个子网的最大可分配地址个数 ?



网络地址是 192.168.5.0 / 24 192.168.5.0/24192.168.5.0/24 , 前 24 2424 位 是网络前缀 ;



在 CIDR 基础之上 , 进行定长子网划分 , 后面 8 88 位 , 一部分作为 子网号 , 一部分作为主机号 ;


子网掩码为 255.255.255.248 255.255.255.248255.255.255.248 , 转为二进制是 :


11111111 11111111 1111 11111111 \quad 11111111 \quad 111111111111111111111111 0000 00000000 11111000 \quad 1111100011111000


由上面的子网掩码可得 , 子网号 占 5 55 位 , 主机号 占 3 33 位 ;



最大子网个数是 2 5 = 32 2^5 = 322

5

=32 个 , 在 CIDR 子网中 , 子网号可以全 0 00 , 全 1 11 ;


每个子网的最大主机个数是 : 2 3 − 2 = 6 2^3-2 = 62

3

−2=6 , 要减去 全 0 00 和 全 1 11 两种情况 ;




参考博客 : 【计算机网络】网络层 : 无分类编址 CIDR ( 编址发展 | CIDR 优点 | CIDR 相关计算 | 构成超网 | 最长前缀匹配 | 计算示例 )★



相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
目录
相关文章
|
19小时前
|
域名解析 网络协议 关系型数据库
【网络原理】——带你认识IP~(长文~实在不知道取啥标题了)
IP协议详解,IP协议管理地址(NAT机制),IP地址分类、组成、特殊IP地址,MAC地址,数据帧格式,DNS域名解析系统
|
2天前
|
数据采集 安全 搜索推荐
HTTP代理IP纯净度 提升用户网络体验的核心竞争力
随着互联网发展,使用HTTP动态代理IP的需求日益增加。高纯净度的代理IP在隐私与安全、网络体验和业务运营方面至关重要。它能保护用户信息、提高数据安全性、确保访问速度和连接稳定,并提升业务效率与信誉度。
14 2
|
1月前
|
存储 监控 数据挖掘
计算机网络的功能
计算机网络支持信息交换、资源共享、分布式处理、可靠性增强及集中管理。信息交换涵盖多种媒体形式,促进远程协作;资源共享降低用户成本,提高效率;分布式处理提升计算能力;冗余机制保障系统稳定;集中管理简化网络维护,确保安全运行。
34 2
|
1月前
|
网络协议 网络安全 数据安全/隐私保护
计算机网络概念:网关,DHCP,IP寻址,ARP欺骗,路由,DDOS等
计算机网络概念:网关,DHCP,IP寻址,ARP欺骗,路由,DDOS等
52 4
|
1月前
|
网络协议 定位技术 网络架构
IP 路由:网络世界的导航仪
IP 路由:网络世界的导航仪
41 3
|
1月前
|
数据采集 Java API
java怎么设置代理ip:简单步骤,实现高效网络请求
本文介绍了在Java中设置代理IP的方法,包括使用系统属性设置HTTP和HTTPS代理、在URL连接中设置代理、设置身份验证代理,以及使用第三方库如Apache HttpClient进行更复杂的代理配置。这些方法有助于提高网络请求的安全性和灵活性。
|
9天前
|
SQL 安全 网络安全
网络安全与信息安全:知识分享####
【10月更文挑战第21天】 随着数字化时代的快速发展,网络安全和信息安全已成为个人和企业不可忽视的关键问题。本文将探讨网络安全漏洞、加密技术以及安全意识的重要性,并提供一些实用的建议,帮助读者提高自身的网络安全防护能力。 ####
47 17
|
20天前
|
存储 SQL 安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
随着互联网的普及,网络安全问题日益突出。本文将介绍网络安全的重要性,分析常见的网络安全漏洞及其危害,探讨加密技术在保障网络安全中的作用,并强调提高安全意识的必要性。通过本文的学习,读者将了解网络安全的基本概念和应对策略,提升个人和组织的网络安全防护能力。
|
21天前
|
SQL 安全 网络安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
随着互联网的普及,网络安全问题日益突出。本文将从网络安全漏洞、加密技术和安全意识三个方面进行探讨,旨在提高读者对网络安全的认识和防范能力。通过分析常见的网络安全漏洞,介绍加密技术的基本原理和应用,以及强调安全意识的重要性,帮助读者更好地保护自己的网络信息安全。
43 10
|
22天前
|
SQL 安全 网络安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
在数字化时代,网络安全和信息安全已成为我们生活中不可或缺的一部分。本文将介绍网络安全漏洞、加密技术和安全意识等方面的内容,并提供一些实用的代码示例。通过阅读本文,您将了解到如何保护自己的网络安全,以及如何提高自己的信息安全意识。
46 10