【超详细】数据链路层和ARP协议

【超详细】数据链路层和ARP协议

数据链路层解决的是:直接相连的主机之间,进行数据交付的问题

认识以太网

"以太网" 不是一种具体的网络, 而是一种技术标准; 既包含了数据链路层的内容, 也包含了一些物理层的内容. 例如: 规定了网络拓扑结构, 访问控制方式, 传输速率等;例如以太网中的网线必须使用双绞线; 传输速率有10M, 100M, 1000M等;以太网是当前应用最广泛的局域网技术; 和以太网并列的还有令牌环网, 无线LAN等;以太网帧(Mac帧)格式

源地址和目的地址是指网卡的硬件地址(也叫MAC地址), 长度是48位,是在网卡出厂时固化的帧协议类型字段有三种值,分别对应IP、ARP、RARP帧末尾是CRC校验码Mac地址

MAC地址用来识别数据链路层中相连的节点;

长度为48位, 及6个字节. 一般用16进制数字加上冒号的形式来表示(例如: 08:00:27:03:fb:19)

在网卡出厂时就确定了, 不能修改. mac地址通常是唯一的(虚拟机中的mac地址不是真实的mac地址, 可能会冲突; 也有些网卡支持用户配置mac地址)

对比理解MAC地址和IP地址

IP地址描述的是路途总体的 起点 和 终点MAC地址描述的是路途上的每一个区间的起点和终点局域网通信原理过程

ARP协议

虽然我们在这里介绍ARP协议, 但是需要强调, ARP不是一个单纯的数据链路层的协议, 而是一个介于数据链路层和网络层之间的协议,ARP协议,属于Mac帧上层,但是归属到数据链路层

ARP协议的作用

ARP协议建立了主机 IP地址 和 MAC地址 的映射关系.

在网络通讯时,源主机的应用程序知道目的主机的IP地址和端口号,却不知道目的主机的Mac地址,因为出来局域网之后,源和目的Mac地址都会被丢弃数据包首先是被网卡接收到再去处理上层协议的,如果接收到的数据包的Mac地址与本机不符,则直接丢弃因此在通讯前必须获得目的主机的Mac地址ARP协议的原理

源主机发出ARP请求,询问“IP地址是172.20.1.2的主机的Mac地址是多少”, 并将这个请求广播到本地网段(以太网帧首部的Mac地址填FF:FF:FF:FF:FF:FF表示广播);目的主机接收到广播的ARP请求,发现其中的IP地址与本机相符,则发送一个ARP应答数据包给源主机,将自己的Mac填写在应答包中; ARP数据报的格式

注意到源MAC地址、目的MAC地址在以太网首部和ARP请求中各出现一次,对于链路层为以太网的情况是多余的,但如果链路层是其它类型的网络则有可能是必要的硬件类型指链路层网络类型,1为以太网;协议类型指要转换的地址类型,0x0800为IP地址;硬件地址长度对于以太网地址为6字节;协议地址长度对于和IP地址为4字节;op字段为1表示ARP请求,op字段为2表示ARP应答帧类型是0806就是ARP请求或者应答

ARP的过程

主机R寻找主机B的Mac地址,构建ARP请求,然后发送都局域网中,局域网中的每个主机都会收到这个请求,假如主机A收到了这个请求,发现目的Mac地址是全F的广播地址,主机A就受理这个报文,看到的帧类型是0806,这个是ARP的请求或者响应,然后将Mac帧的报头和有效载荷分离,交付给ARP软件层,先看op,发现op是请求,再看目的ip地址,发现是ipB,和自己的不匹配就丢弃掉,其他的主机也一样丢弃掉,最终就匹配对了主机B,主机B就构建应答发送回去

发送回去的应答局域网中的每个主机都能收到的,假如主机K收到这个应答,发现目的Mac地址不匹配就直接丢弃掉,其他主机也一样。 最后目的Mac地址和主机R匹配对了,将Mac帧的报头和有效载荷分离,交付给了ARP软件层,先看op,是响应,再看源Mac地址和源IP,就找到了IPB对应的Mac地址

注意:

在ARP过程中,收到的任何arp报文,并且交付给了ARP层,都是先看op!OP决定了什么呢??ARP的类型:请求,应答。请求的话,继续看ARP里的目的IP是否匹配。应答的话,直接看目标主机的Mac地址和IP地址的对应关系ARP的周边问题

1.每台主机都维护一个ARP缓存表,主机的Mac地址和IP地址,会被主机缓存起来临时缓存起来,可以用arp -a命令查看。缓存表中的表项有过期时间(一般为20分钟),如果20分钟内没有再次使用某个表项,则该表项失效,下次还要发ARP请求来获得目的主机的硬件地址

2.可以通过我的IP和子网掩码,得到我的网络号,然后拼接IP地址,Ping这个网络号下所有的主机,得到所有主机的IP和mac

3.如果我收到多次同样的arp应答,会以最新的为准,这就会产生一个ARP欺骗

攻击者首先扫描网络中的IP地址和MAC地址,获取网络拓扑信息。然后,攻击者构造伪造的ARP数据包,其中包含网络中其他设备的IP地址和攻击者自己的MAC地址攻击者将这些伪造的ARP数据包发送到网络中。当被攻击的设备接收到这些伪造的ARP数据包时,会更新其ARP缓存表,将攻击者的MAC地址映射到目标IP地址上。此后,被攻击的设备将数据包发送到攻击者控制的设备上,而不是真正的目标设备。因此,攻击者可以截获网络流量并篡改数据包。

相关推荐

诗经摽有梅拼音及译文
365bet官方网址

诗经摽有梅拼音及译文

📅 07-11 👀 5893
全民k歌送多少k币
亚洲365bet备用

全民k歌送多少k币

📅 10-07 👀 2386
丷五笔怎么打
beat365亚洲体育在线

丷五笔怎么打

📅 08-14 👀 6139
3D规则介绍,福彩3D中奖规则是什么?
beat365亚洲体育在线

3D规则介绍,福彩3D中奖规则是什么?

📅 06-30 👀 2692
动森攻略
365bet官方网址

动森攻略

📅 07-08 👀 6054
备考的关键是从“做题思维”到“做事思维”
亚洲365bet备用

备考的关键是从“做题思维”到“做事思维”

📅 10-05 👀 5847
《医美项目清单明细表》:你知道都有哪些项目吗?
比特币交易平台哪个好?全球加密货币交易所综合排名前十盘点
一般java编程时用什么字体
亚洲365bet备用

一般java编程时用什么字体

📅 07-03 👀 3411