[1] mac地址与ip地址的区别
mac地址
①物理地址:mac地址是一个由网卡制造商分配的全球唯一地址,通常被记录到网络适配器的硬件中用于在局域网内唯一标识网络设备(计算机,交换机,路由器)
②网络层面:mac地址在数据链路层使用,用于在局域网直接寻址和数据帧传输,比如交换机使用mac地址决定数据帧从哪个端口转发到另一端口
③没有层次结构,不提供关于设备位置,网络层次的信息
IP地址
①逻辑地址:是一个逻辑地址,用于在全球范围内标识连接到互联网的设备,允许设备在不同网络环境间通信
②网络层面:在网络层使用,用于路由和寻址,比如路由器 使用ip地址确定如何将数据包从一个网络传递到另一个网络
③层次结构:IP地址具有层次结构,分为网络号和主机号。这使得IP地址能够提供关于设备所在网络的信息。
二者关系
在网络通信中,数据首先通过使用MAC地址在局域网内进行传输,然后通过使用IP地址在不同网络之间进行传输。换句话说,MAC地址用于局域网内部通信,而IP地址用于全球范围的互联网通信。
局域网内部的通信通常是通过MAC地址而不是IP地址进行的。MAC地址是用于在局域网(LAN)内部唯一标识设备的地址,而IP地址主要用于在更大范围的网络中标识设备,并实现跨网络的通信。
当两台设备在同一个局域网中通信时,发送方设备会将数据包封装为一个数据帧,其中包含目标设备的MAC地址。交换机在局域网中根据MAC地址学习和转发数据帧,从而将数据传递到正确的设备。
然而,如果需要在不同的局域网之间通信,就需要使用IP地址来进行跨网络的寻址和路由。路由器在这种情况下负责将数据包从一个局域网路由到另一个局域网,并根据目标IP地址来确定正确的路径。
所以,可以说在局域网内部通信主要依赖于MAC地址,而在不同局域网之间的通信则主要依赖于IP地址。
[2] ARP协议
地址解析协议
是双方mac地址寻址依赖的一个协议
工作方式是将IPv4地址映射到物理MAC地址,在局域网中确定目标设备的MAC地址,以便在同一网络中进行数据帧的运输
主要工作流程:
- 发送方主机要请求目标主机时先检查本地ARP缓存表,看是否有目标机的mac地址,如果没有将广播一个ARP请求到局域网所有机器上,请求某ipv4对应mac地址
- 如有设备检查到目标ipv4与自己的匹配,会发送一个包含mac地址的ARP响应
- 发送方拿到这个响应后将此映射关系存储在本地ARP缓存表中