我想了解我的 MAC 地址是如何与其他人共享的(路由器、本地互联网上的其他设备)。它是否在发送的互联网数据包中……什么时候发送?有没有办法干扰它?
有了这些知识,我想设计一个有两个以太网端口(输入和输出)的东西,能够将使用的 MAC 地址更改为我指定的 MAC 地址。
答案1
您的计算机将其自己的 MAC 地址作为以太网源地址放在通过以太网 LAN 发送的每个以太网帧的以太网层报头中。
当网络上的其他设备需要向您的计算机发送以太网帧时,它们需要知道您计算机的以太网 MAC 地址,以便对这些以太网帧进行寻址。
如果以太网 LAN 上的某个设备(例如路由器)有需要发送(转发)到计算机 IP 地址的 IP 数据报,则它会使用地址解析协议 (ARP) 来询问谁(即哪个 MAC 地址)拥有该目标 IP 地址。因此,试图了解您的 MAC 地址的设备会广播 ARP“who-has”查询,基本上询问“与此 IP 地址关联的 MAC 地址是什么?”,而您的计算机会以单播 ARP“is-at”响应进行响应,用其自己的 MAC 地址回答该问题。现在,试图发送该 IP 数据报的设备能够成功地在以太网帧头中填写以太网目标 MAC 地址,因此它可以将该 IP 数据报放入以太网帧中并通过以太网 LAN 将其发送到您的计算机。