2024年最全网络 链路层 以太网协议与ARP协议_ethernet包分析头歌,2024年最新2024C C++进阶学习资料

img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上C C++开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以戳这里获取

如何获取对端的mac地址
一个主机,第一次通过网线连接到路由器上,然后发送DHCP请求,路由器收到之后就会进行响应,给主机分配IP地址,但是此时是不知道对方的mac地址,那我们如何获取呢?

ARP协议

ARP协议:ARP不是一个单纯的数据链路层的协议, 而是一个介于数据链路层和网络层之间的协议。主要功能是通过IP地址获取mac地址

ARP协议格式
在这里插入图片描述
以太网目的地址和以太网源地址:描述识别相邻的设备之间的数据传输
上层协议类型:网络层的协议类型,进行数据分用时选择上层的解析协议
硬件类型:链路层网络类型,1为以太网
协议类型:要转换的地址类型,0x0800为IP地址
硬件地址长度:对于以太网地址为6字节
协议地址长度:对于和IP地址为4字节
op字段:1表示ARP请求,op字段为2表示ARP应答

arp协议如何通过IP地址获取MAC地址
封装arp请求,然后将arp请求广播到整个局域网(私网)中,(以太网头中设置的对端mac地址为FFFFFFFFFFFF,在arp请求中描述自己的mac地址和ip地址,以及对端的IP地址和对端的mac地址空白),相邻设备收到arp请求之后,检测目的IP地址是否与自己相符,若相符则组织arp响应,填充自己的mac地址回复过去,若不符合则直接丢弃。
在这里插入图片描述

主机获取相邻设备mac地址之后,会缓存一段时间(默认为20 ~30分钟)

arp局域网欺骗攻击:恶意主机收到arp广播请求,伪装自己,告诉主机自己就是目标主机,将自己的mac地址发送过去。解决方案:防火墙白名单,直接列出受信任的相邻主机,如果发送过来的mac地址不在白名单上,则直接丢弃

MTU

MTU:MTU为最大传输单元,是链路层限制的数据帧大小(根据组网方式不同,默认数值也不同,以太网默认为1500B)

mtu对上层协议应用的影响

tcp协议:tcp在传输层进行三次握手时,进行MSS协商,也就是最大数据段大小协商,告诉对方自己的mss是多少,然后通信时取较小的一方作为最大传输数据段大小,每次从缓冲区中取出不大于mss大小数据进行传输。因此通常也说tco在传输层会自动进行数据分段。MSS = MTU - 最小IP报头长度 - 最小TCP报头长度;

udp协议:因为udp不考虑mss,只要数据段大小小于64k-28,就可以进行传输,但是这个数据大小若是大于mtu,则会在网络层进行数据分片
udp不保证数据可靠传输,一个udp报文若在网络层进行了分片,则传输过程中,一个分片出问题,整个udp报文都会被丢弃;也就意味着udp传输过程中,分片越多,在传输过程中出现问题的几率就越大
解决方案:程序员在应用层使用udp协议时最好考虑mss问题,将udp数据段按照计算的mss进行分包处理

img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上C C++开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以戳这里获取

更新**

如果你需要这些资料,可以戳这里获取

  • 11
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值