【计算机网络】第三章 数据链路层(MAC地址 IP地址 ARP协议)

简介: 【计算机网络】第三章 数据链路层(MAC地址 IP地址 ARP协议)

3.7.1 MAC地址


MAC地址(Media Access Control address)是网络设备(如网卡、无线网卡)在数据链路层上的唯一标识符。以下是有关MAC地址的一些要点:


描述:MAC地址是一个由48个二进制位(通常以十六进制表示)组成的全球唯一标识符,用于识别计算机网络中每个网络接口(NIC)的物理硬件地址。


功能:MAC地址用于在局域网中唯一标识网络设备。它在数据链路层提供了直接的寻址能力,以便将数据从源设备发送到目标设备。


格式:MAC地址由六组以冒号或连字符分隔的十六进制数表示。例如,00:1A:2B:3C:4D:5E。前三组(24个二进制位)通常代表厂商识别码(OUI,Organizationally Unique Identifier),后三组(24个二进制位)是为该厂商分配的设备唯一标识码。


唯一性:每个网络设备的MAC地址应该是唯一的,这样可以确保在局域网中没有重复的地址。唯一性由IEEE(Institute of Electrical and Electronics Engineers)组织负责管理和分配。


广播地址:MAC地址中的特殊地址之一是广播地址(FF:FF:FF:FF:FF:FF)。当需要向局域网中的所有设备发送消息时,可以使用广播地址。


MAC地址是一个本地地址,只在同一局域网内有意义。在通过路由器连接到不同网络之间进行通信时,需要使用IP地址来进行寻址。

MAC:是以太网的 MAC 子层所使用的地址,属于数据链路层。

当多个主机连接在同一个广播信道上,要想实现两个主机之间进行通信,则每个主机必须有一个唯一的标识,即一个数据链路层地址。

在每个主机发送的桢中必须携带标识发送主机和接收主机的地址。由于这类地址是用于媒体接入控制MAC(Media Access Control),因此这类地址被称为MAC地址。


一般情况下,用户主机会包含两个网络适配器:有线网络适配器(有线网卡)和无线网络适配器(无线网卡)。每个网络适配器都有一个全球唯一的MAC地址。而交换机和网络路由器往往拥有更多的网络接口,所以会拥有更多的MAC地址。综上:严格来说,MAC 地址是对网络上各接口的唯一标识,而不是对网络上各设备的唯一标识。


3.7.2 IP地址


IP 地址是因特网上的主机和路由器所使用的地址,用于标识两部分信息:

  • 网络编号:标识因特网上数以百万计的网络
  • 主机编号:标识同一网络上不同主机(或路由器各接口)


IP地址属于网络层。


数据包转发过程中IP地址与MAC地址的变化情况



3.7.3 ARP协议


ARP地址解析协议

ARP 协议只能在一段链路或者一个网络上使用,而不能跨网络使用。


ARP(Address Resolution Protocol)是一种用于将IP地址解析为物理地址(MAC地址)的网络协议。以下是关于ARP协议的一些要点:


描述:ARP协议是在TCP/IP协议栈中的网络层和数据链路层之间进行通信的协议。它通过发送特定的消息来获取目标设备的MAC地址。


功能:ARP协议主要有两个功能:


解析IP地址:当主机需要发送数据到一个目标IP地址时,它首先会检查本地ARP缓存表以查找对应的MAC地址。如果缓存表中没有该IP地址对应的MAC地址,则会发送一个ARP请求。


更新和维护ARP缓存:当主机接收到其他主机发来的ARP请求时,会更新本地ARP缓存,并向请求方回复自己的MAC地址以供其使用。

工作原理:当源主机要发送数据到目标主机时,它首先查找本地ARP缓存表。如果找到了目标IP地址对应的MAC地址,则直接发送数据帧到目标主机。如果没有找到,则源主机会广播一个ARP请求消息到本地网络中的所有主机,请求目标主机的MAC地址。目标主机接收到该请求后,会向源主机发送一个ARP响应消息,其中包含了自己的MAC地址。源主机接收到响应后,就可以利用目标主机的MAC地址发送数据。


ARP缓存:每个主机都维护一个ARP缓存表(也称为ARP缓存),用于保存IP地址和对应的MAC地址。这样做可以避免频繁地发送ARP请求。ARP缓存表中的条目具有一定的生存时间,超过该时间后将被认为是过期的并需要重新获取。


ARP协议在局域网(LAN)环境中工作,通过广播消息进行通信。对于跨越路由器的通信,可能需要使用其他协议,如RARP(Reverse Address Resolution Protocol)或者使用ARP代理等技术。


相关文章
|
1月前
|
安全 网络安全 定位技术
网络通讯技术:HTTP POST协议用于发送本地压缩数据到服务器的方案。
总的来说,无论你是一名网络开发者,还是普通的IT工作人员,理解并掌握POST方法的运用是非常有价值的。它就像一艘快速,稳定,安全的大船,始终为我们在网络海洋中的冒险提供了可靠的支持。
77 22
|
1月前
|
网络协议 数据安全/隐私保护 网络架构
|
2月前
|
缓存 网络协议 API
掌握网络通信协议和技术:开发者指南
本文探讨了常见的网络通信协议和技术,如HTTP、SSE、GraphQL、TCP、WebSocket和Socket.IO,分析了它们的功能、优劣势及适用场景。开发者需根据应用需求选择合适的协议,以构建高效、可扩展的应用程序。同时,测试与调试工具(如Apipost)能助力开发者在不同网络环境下优化性能,提升用户体验。掌握这些协议是现代软件开发者的必备技能,对项目成功至关重要。
|
3月前
|
人工智能 自然语言处理 决策智能
智能体竟能自行组建通信网络,还能自创协议提升通信效率
《一种适用于大型语言模型网络的可扩展通信协议》提出创新协议Agora,解决多智能体系统中的“通信三难困境”,即异构性、通用性和成本问题。Agora通过标准协议、结构化数据和自然语言三种通信格式,实现高效协作,支持复杂任务自动化。演示场景显示其在预订服务和天气预报等应用中的优越性能。论文地址:https://arxiv.org/pdf/2410.11905。
68 6
|
6月前
|
网络协议 安全 NoSQL
网络空间安全之一个WH的超前沿全栈技术深入学习之路(8-2):scapy 定制 ARP 协议 、使用 nmap 进行僵尸扫描-实战演练、就怕你学成黑客啦!
scapy 定制 ARP 协议 、使用 nmap 进行僵尸扫描-实战演练等具体操作详解步骤;精典图示举例说明、注意点及常见报错问题所对应的解决方法IKUN和I原们你这要是学不会我直接退出江湖;好吧!!!
网络空间安全之一个WH的超前沿全栈技术深入学习之路(8-2):scapy 定制 ARP 协议 、使用 nmap 进行僵尸扫描-实战演练、就怕你学成黑客啦!
|
7月前
|
缓存 网络协议 Linux
Python渗透测试之ARP毒化和协议应用
Python渗透测试之ARP毒化和协议应用
77 0
|
9月前
|
网络协议
用户态协议栈04-定时arp-table的实现
用户态协议栈04-定时arp-table的实现
|
9月前
|
缓存 网络协议
用户态协议栈02-arp reply实现
用户态协议栈02-arp reply实现
|
9月前
|
网络协议 安全 网络安全
ARP协议详解及其工作原理
【8月更文挑战第31天】
951 0
|
9月前
|
存储 缓存 监控