解决不同网络之间的一个通信问题。本章重点速览网络层提供的两种服务网际协议 IP ※网际控制报文协议 ICMPIPV6互联网的路由选择协议 ※虚拟专用网 VPN 和网络地址转换 NAT一、网络层提供的两种服务1.1 两种服务1. 虚电路服务特点使用前必须建立可靠的连接如果有一个结点故障则改连接无法接通是依靠网络建立连接的所以大部分情况下连接可靠2. 数据报服务IP服务特点每一个服务是随机选择自己喜欢的道路出发的不需要提前建立连接如果有一个结点故障只会影响当下的分组不会影响其他分组需要依赖用户主机是不可靠的、尽最大努力交付的1.2 关于两种服务的对比二、网际协议IP2.1 IP 地址网际协议IP是TCP/IP体系结构网际层中的核心协议。IP地址分配一个全世界范围内唯一的32 位的标识符。IP地址换算方法32位二进制代码每八位分成一组将每八位二进制数转换成十进制数采用点分十进制记法网络号楼栋编号前面一段格子代表一整个独立局域网全世界每一片局域网的网络号独一无二主机号房间号剩下后面所有格子代表这片局域网里单独一台电脑 / 手机。32 个格子总数不变网络号占的格子越多 → 留给主机号的格子越少 → 这个局域网能连的设备越少网络号占的格子越少 → 主机号格子越多 → 局域网能容纳上万台设备根据网络号和主机号位数的不同能够对这个 IP 地址进行分类分成以下五类。2.2 分类的IP地址互联网刚诞生的时候电脑很少路由器芯片算力极差算不了复杂数学。工程师想偷懒直接一刀切固定死网络号长度A类地址8位网络号24位主机号分给国家级大型机构、运营商他们需要超多设备第一位固定是0范围1.0.0.0 ~ 127.255.255.255B类地址16位网络号16位主机号分给大型企业、高校几千台设备够用前两位固定是10范围128.0.0.0 ~ 191.255.255.255C类地址24位网络号8位主机号分给小公司、小实验室几十台设备用前三位固定是110范围192.0.0.0~ 223.255.255.255A、B、C类网络属于单播地址D类地址前四位固定是1110后28位是多播地址单独做群发范围224.0.0.0 ~ 239.255.255.255E类地址前四位固定是1111后28位保留为今后使用范围240.0.0.0 ~ 247.255.255.255这样分类的好处是路由器只需要看 IP 第一个数字立刻知道网络号多长不用任何计算老旧低端设备也能跑。坏处是网段大小锁死不能改这就是 IP 大量浪费的根源。如何计算 ABC 分类怎么浪费地址核心公式主机号有 N 位总地址数量 2N2^N2N其中有两个地址永远不能分给电脑主机号全 0网络地址代表整片局域网不能给设备路由器、交换机记录路由时只用这个总代号代表该网段下所有设备。主机号全 1广播地址群发消息专用不能给设备即发一条消息同一个局域网内所有联网设备都能收到。日常使用场景有电脑连局域网后自动获取 IP查找局域网设备局域网联机游戏。实际可用的设备数2N−22^N - 22N−2例如小团队只需要 30 台设备分类体系下只能给 C 类浪费两百多个 IP 地址因此为了避免 IP 地址不够分更换新方案CIDR 子网掩码2.3 地址掩码子网掩码和无分类编址 CIDR1. 子网掩码子网掩码 自定义分割线子网掩码与IP地址一起使用用于定义一个网络中哪些部分是网络地址哪些部分是主机地址。你想让网络号占多少位就自定义分割线。掩码二进制里写1的部分 网络号写0的部分 主机号。IP地址::{网络号主机号}地址掩码::{11…11,00…00}刚才的ABC分类法下A类网络的地址掩码255.0.0.0B类网络的地址掩码255.255.0.0C类网络的地址掩码255.255.255.0刚才的只需要 30 台设备的小团队不用完整 C 类24位网络号手动拉长网络号到27位主机号只剩 5 位252^525 32 个总地址可用 30 台正好装下大幅节约地址。掩码存在的核心意义自由调节局域网大小减少 IP 浪费。2. 无分类编址 CIDR搭配子网掩码一起使用是子网掩码的表达方法。/n表示前 n 位是网络号。IP地址::{网络号,主机号}网络号为n位主机号为32-n位CIDR 记法斜线记法slash notationa.b.c.d/n二进制 IP地址的前 n 位是网络号例如128.14.35.7/20前20位是网络号可以求出/20地址的地址掩码前20位都是1其他都是0因此可以求出点分十进制的地址掩码255.255.240.02.4 网络地址网络地址二进制的IP地址 AND 地址掩码1 AND 11其他情况全为0网络地址存在的意义判断两个 IP 地址是否在一个局域网。人肉眼无法判断两段 IP 的网络号是否一致举例如下IP1192.168.1.14 /22 vs IP2192.168.2.30 /22看似不在一个局域网但前 22 位都是网络号计算后发现二者网络地址完全相同属于同一个局域网。路由器不能存每一台设备的 IP只能存整片网络地址。全世界几十亿台设备如果路由器单独记录每一个 IP存储直接爆炸。路由器只会记录一条规则192.168.0.0/22 全部走这条网线这里的192.168.0.0就是网络地址是整片局域网的统一代号。没有网络地址路由转发完全无法实现。区分 “能用的 IP” 和 “专用标识 IP”。规则网络地址主机位全 0、广播地址主机位全 1不能分配给手机电脑只能做标识。必须通过 IP 掩码计算把这两个特殊地址找出来避免分配出错。2.5 地址解析协议地址解析协议ARP通过IP地址找出其相应的MAC地址逆地址解析协议RARP通过MAC地址找出其相应的IP地址三、网际控制报文协议ICMPICMP功能差错报告应用分组网间探测PING注ICMP 封装在 IP 数据报的数据部分是 IP 协议的必需的一个部分可用来进行拥塞控制是网络层的协议。四、IPV6第六个版本的 IP 协议刚才的 IPV4 是第四个版本的 IP 协议。4.1 IPV6IPv6128位分为8组每个组内再分为4组计算十六进制采用冒号十六进制记法零压缩zero compression连续 4 个零可用压缩为 1 个零一串连续的零可以用一对冒号取代如FF05:0:0:0:0:0:0:B3可压缩为FF05::B3。一组里面只能使用一对冒号取代如FF05:0:0:0:B3:0:0:0只能压缩为FF05::B3:0:0:0或FF05:0:0:0:B3::4.2 从 IPV4 向 IPV6过渡两种技术双协议栈和隧道技术。五、互联网的路由选择协议路由器的构成路由选择部分和分组转发部分内部网关协议IGPRIP协议基于距离向量的路由选择协议距离向量例如现在从 A 主机向 E 主机转发其中要经过 3 台路由器每经过一台路由器则称1跳距离向量 1。例题第一步完成表D修改路由器C的路由表RIP 距离 路由器C的路由表的 RIP 距离 1且下一跳都为 C。第二步根据D修改路由器C的路由表和路由器D的路由表结合完成新的路由器D的路由表遵守规则如下没有的网络直接添加如N1直接添加已有的网络若下一跳路由器不同则留 RIP 距离短的如N6若吓一跳路由器相同则留最新的如N2OSPF协议外部网关协议EGPBGP协议六、虚拟专用网 VPN 和网络地址转换协议6.1 虚拟专用网 VPN利用公用的互联网作为本机构各专用网之间的通信载体这样的专用网又称为虚拟专用网 VPN。使用隧道技术实现虚拟专用网。场景举例公司总部在北京内部内网网段10.1.0.0上海分公司内网10.2.0.0。两个内网相隔千里中间只能走公共互联网直接裸传内网数据数据明文传输容易被窃取、篡改两边内网地址互相不识别没法直接访问对方内部服务器、共享文件。隧道技术北京内网要发给上海内网的数据整体打包加密外面再套一层公网 IP 的外壳加密后的数据包走公共互联网这条大马路外人截获也无法解密看到里面的公司数据到达上海分公司 VPN 设备后拆掉外层公网外壳、解密还原原始内网数据包最终实现北京、上海两个异地内网如同处在同一个局域网安全互通。虚拟专用是什么意思没有专门拉一条物理光纤专线连接两地公司只是借用大众公用的互联网靠软件加密隧道模拟出一条私密内网通道所以叫虚拟专用网。6.2 网络地址转换协议 NAT将本地地址转换为全球地址。原因外网网站抖音、百度只认公网 IP看不懂192.168.1.50这种内网地址不会给内网设备回传数据。同时 IPv4 公网地址数量稀缺不可能给每一台设备单独分配一个公网 IP。如何工作手机发消息刷网页数据包带着内网 IP 发给路由器NAT 把数据包里的内网 IP 替换成家里的公网 IP再发到互联网服务器返回视频 / 网页数据只会发到你家公网 IP路由器收到后NAT 再把公网 IP 翻译回对应设备的内网 IP传给你的手机。关键作用多台设备共享同一个公网 IP 上网极大节约稀缺的 IPv4 公网地址隔离内网外网无法主动直接访问你电脑的内网 IP自带一层基础防护完成内网私有地址 ↔ 公网全球地址双向转换。补充家用路由器用的是升级版 NATNAPT。不止转换 IP还会用端口区分不同设备保证多台设备同时上网不会混乱。