V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
aheadlead
V2EX  ›  问与答

如果两个主机的 MAC 地址相同,交换机会怎么处理发往这个 MAC 地址的帧呢?

  •  
  •   aheadlead · 2014-08-13 02:46:46 +08:00 · 6484 次点击
    这是一个创建于 3756 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我计算机网络不好,正在纠结这个问题。IP冲突还好说,但如果人为的造成MAC地址冲突,请问会发生什么后果...

    如有一个送往这个MAC地址的帧袭来的时候,交换机会怎么办?

    5 条回复    2014-08-13 12:08:34 +08:00
    chengr28
        2
    chengr28  
       2014-08-13 03:29:04 +08:00   ❤️ 2
    简单来说吧……二层的交换机本身维护着一张MAC地址表,表上有MAC地址和端口的对应关系。依照一般的情况,当一个数据帧到达交换机时交换机会利用帧的来源MAC地址更新自己的MAC地址表

    实际情况吧,例如A端口和B端口的MAC地址相同,收到A端口的数据帧更新MAC地址表后送往这个MAC地址的数据帧会被发到A端口,收到B端口的数据帧更新MAC地址表后送往这个MAC地址的数据帧会被发到B端口,也就是说如果A和B两个端口都在发送数据帧,那么送往这个MAC地址的数据帧就会随MAC地址表的变动而送往不同的机器上

    实际使用的话有文章说测试过了,因为高层的协议一般可能有可靠性的保障,吞吐量不大的情况下两台机器应该都能勉强收到属于自己的数据帧
    rrfeng
        3
    rrfeng  
       2014-08-13 09:23:14 +08:00   ❤️ 1
    应该跟随 MAC-PORT 映射表的吧,这个表是实时更新的,数据帧将要发送时,查到 MAC 在哪个端口就发往哪个端口。

    所以上游交换机是没有区别的,因为始终对应同一个端口,接入交换机的 MAC 映射表就在不断的变了,所以基本不能确定发到哪里去。至于不同的交换机里应对学习到同一个 MAC 怎么处理的,就不太清楚了。
    whywhywhy
        4
    whywhywhy  
       2014-08-13 10:13:45 +08:00   ❤️ 1
    快十年前吧,有个小工厂,路由器设置了指定的mac地址才能上网

    后来去的时候,发现他们有人真的很天才,竟然用arp防火墙防止IP冲突提示,然后把多个电脑的MAC都修改成那个可以上网的MAC地址,一样IP,一样的MAC,不同的电脑。

    后来再也没见过谁用这么聪明的方法
    julyclyde
        5
    julyclyde  
       2014-08-13 12:08:34 +08:00
    如果开了生成树协议则又不同
    交换机会认为这俩口通了,然后禁用其中一个……
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2642 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 05:47 · PVG 13:47 · LAX 21:47 · JFK 00:47
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.