计算机网络第四章(4)——网络层《ARP协议》

一、回顾数据链路层MAC帧协议

  • 网络层有两种数据结构格式,一个是【IP数据报】、一个是【ARP分组】
  • 而使用不同的协议,数据链路层的【数据部分】就不同、【类型】字段也不同
  • 另外,数据链路层MAC帧的广播帧也是全1,只不过6个字节(48bit):FF:FF:FF:FF:FF:FF
  • (网络层IP向往所有节点发的广播帧是4字节(32bit)的全1、本网络的广播帧是主机号全1)

二、ARP协议

王道讲得太乱了,这里给另外一个视频作为参考

ARP知识点来源视频:交换机的核心工作原理 | 集线器、2层交换机和3层交换机的主要区别_哔哩哔哩_bilibili

1、ARP流程

现在【源发送方A】想发给【目的接收方B】

1)学习模式

发送方会构造一个【ARP请求分组】,内容是:

  • 已知的信息:(封装在网络层ARP分组)
    • 【源发送方A】的【IP地址 + MAC地址】
    • 【目的接收方B】的【IP地址】
  • 未知需要补齐的信息:(封装在数据链路层MAC帧)
    • 【目的接收方MAC】
      • 因为不知道是啥,所以补成默认的【全1广播帧(FF:FF:FF:FF:FF:FF)】
    • 还有【源发送方的MAC端口】,这个视频里漏了,王道那有讲,这个是已知的
      • (MAC地址也有端口的)

2)学习模式

然后经过路由器就会把这个【ARP分组】的【发送方信息】记录到转发表

(注意视频里没有显示IP记录表,实际是把【ARP分组】的【发送方的 IP 和 MAC 地址】)

3)泛洪模式

然后路由器检测到【目的MAC地址是:FF:FF:FF:FF:FF:FF广播帧】,直接其他所有接口发出信息

各个主机自己用ARP分组里的【目的IP地址】检测【自己IP地址】,是自己的就收,不是就扔

确认收到信息的【目的接收方B】,会返回【ARP响应数据】,里面就包含自己明确的【目的接收方的信息】和【发送方信息】:

  • 网络层ARP分组放:【源IP + 源MAC】
  • 数据链路层MAC放:【目的MAC地址 + 源MAC地址】

然后路由转发表又会把这些信息更新在表里

4)转发模式

现在路由表里A、B的IP、MAC地址都有了,那就直接点对点发过去就行了,不用再泛洪

三、总结

相关推荐
pengyi8710156 分钟前
共享 IP 池多人使用 分层权限与配额管理方案
运维·服务器·网络
S1998_1997111609•X12 分钟前
论next/js在打击省份及犯罪行为集团的系统分析[特殊字符]设计
网络·数据库·百度·ssh·开闭原则
其实防守也摸鱼24 分钟前
带你了解与配置phpmyadmin
笔记·安全·网络安全·pdf·编辑器·工具·调试
RENMinWanSui!37 分钟前
Neo4j-Desktop2.0安装教程(更改安装路径)
笔记·neo4j·neo4j-desktop
噜噜噜阿鲁~1 小时前
python学习笔记 | 8.2、函数式编程-返回函数
笔记·python·学习
不做无法实现的梦~1 小时前
PX4 机载电脑 Linux 环境安装、串口、网络、ROS 完整配置
linux·运维·网络
byoass1 小时前
企业云盘权限管理深度对比:巴别鸟、联想Filez、腾讯企微云盘
网络·安全·云计算·企业微信
江湖有缘1 小时前
容器化部署|Docker搭建Blinko轻量笔记系统
笔记·docker·容器
The_superstar62 小时前
衡山派D133EBS入门笔记
笔记·python·c·衡山派·小曹越
handler012 小时前
Git 核心指令速查
linux·c语言·c++·笔记·git·学习