假设某人与我在同一个网络上,并伪造他们的 MAC 地址以匹配我的:
- 这可能吗?两个或多个具有相同 MAC 地址的客户端可以同时位于同一网络上并保持持续连接吗?
- 当这种情况发生时,如果同一网络不允许重复的 MAC 地址,我最终会被取消身份验证并被踢出网络吗?
- 如果允许重复的 MAC 地址,我可能会遇到什么样的行为?冲突、竞争条件等?
答案1
由于欺骗、制造过程中的错误或制造商的故意疏忽,两个主机可能具有相同的 MAC。因此,
1) 通常,以太网交换机会保留一个表,其中列出了哪些 MAC 地址与哪些端口相关联。该表基于网络正常运行期间收到的帧的源地址。收到任何帧时,都会读取源 MAC 并将其与当前交换表进行比较,然后将其添加到接收该帧的交换机端口旁边。
因此,如果有两个主机,它们都具有相同的 MAC 地址,则交换机每次从任一主机收到帧时都会更新其 MAC 表。任一主机的可达性都会时断时续,并且不一致。
2) 简短回答:不会。重复的 MAC 地址不会在非托管交换机(没有配置软件的交换机)或未配置端口安全性的托管交换机(如大多数 Cisco/HP/Junipers)中触发任何类型的安全问题。如果托管交换机检测到重复的 MAC(多个交换机端口上“存在”的 MAC),它们会在控制台终端上打印警告,但默认情况下,据我所知,它们不会对此“采取任何行动”。
如果您想在托管交换机上使用端口安全选项,您可以执行的操作包括每个交换机端口仅允许 1 个 MAC 地址。交换机将动态学习 MAC 地址(就像它通常学习 MAC 一样),但不同之处在于,一旦学习,它就会绑定到该交换机端口。然后,如果交换机从重复的 MAC 上接收到帧其他交换机端口,它可以将该端口置于禁用状态(将其关闭)。
您在问题中提到了取消认证。某些交换机的端口安全功能与“取消认证”不同——它是取消授权。它们很相似,但区别很重要;查看身份验证与授权。
3) 重复的 MAC 不会引起冲突。冲突是共享电气总线的结果。这更像是一种竞争条件,尽管我以前从未听说过有人这样称呼它。请记住,就任何现成的以太网交换机而言,重复的 MAC 都是“允许的”——它们只会导致问题,从而中断与每个相关主机的网络连接。问题在于不断变化的交换表。
答案2
问题的答案:
是的,这是有可能的,但是不,您将无法保持持续的联系。
您可能会……管理员可能会看到该问题并禁用交换机上的端口。
我遇到的情况是两个具有相同 MAC 地址的系统连接到同一个交换机,我注意到网络将与最后一个系统一起工作以发送被选中的以太网数据包。所以当一个系统工作时,另一个系统却不工作......这让我感到很有趣和困惑,直到网络人员指出了这个问题。
答案3
您可以通过在 VMware 下安装操作系统,然后克隆虚拟机来模拟两台具有相同 MAC 的机器。克隆时 MAC 地址会保留。我认为您不能将虚拟机的 MAC 设置得与物理机的 MAC 相同,VMware 会将其限制在不会发生冲突的特定范围内。
答案4
LAN 中的相同 MAC 可能导致 L2 中出现问题,交换机将通过 2 个不同的端口学习 MAC,例如 DEV1 和 DEV2,
可能出现如下问题:
- 所有 DEV1 数据包最终都会到达 DEV2。
- 由于 MAC 移动问题,交换机可能会丢弃数据包。
- 一个数据包发送到 DEV1,另一个数据包发送到 DEV2,取决于交换机行为。
发生这种情况是因为 L2 交换机不查看第 3 层。