【问题标题】:Wireless MAC Address Patterns无线 MAC 地址模式
【发布时间】:2013-04-13 15:30:52
【问题描述】:

我正在创建一个使用半随机数在桌子上滚动的应用程序。随机数是从无线网络 MAC 地址生成的,因此它们应该在多个设备之间保持一致(即,如果我使用 2 个不同的设备访问无线网络,我应该生成相同的随机数)。

我的问题是,是否存在无线网络 MAC 倾向于使用的任何模式,这会影响我的号码生成,或者它们是否完全随机。这很重要,因为它会影响我分配给表值的概率。

这是我从 Wikipedia 中提取的图像,我无法理解。

那么根据这张图,这是否意味着 MAC 地址的前 3 个字节在路由器品牌中是唯一的?如果我遇到两个 D-Link 路由器,那会是一样的吗?或者如果是两个同型号的D-Link路由器会一样吗?

那么最后 3 个字节只是随机生成的数字吗?感谢任何花时间帮助我解决这个问题的人。

【问题讨论】:

    标签: networking wireless mac-address


    【解决方案1】:

    清除了 0x020000 位(“全局唯一”)的 OUI 部分是从注册表中分配的编号。每个无线设备制造商都至少申请其中一个,并在他们制造的产品中使用它。没有要求制造商只有一个,或者他们根据设备的最终生产者使用不同的。因此,例如,许多戴尔笔记本电脑的 MAC 地址以英特尔 OUI 开头,因为这些笔记本电脑是使用英特尔无线芯片构建的。

    对于这些 MAC 地址,NIC 部分没有指定值,但通常在制造过程中从预先划分的块中以单调递增的值分配。因此,从同一条装配线上推出的两个英特尔无线芯片的编号可能会被 1 隔开。

    设置了 0x020000 位(“本地管理”)的 OUI 部分可以设置任何其他位,这完全取决于它所连接的系统将地址设置为什么。

    【讨论】:

    • 谢谢。只是为了澄清一些事情,“OUI 部分”是指前 3 个 OUI 字节中的一个字节?如果我是正确的,那么制造商可以自行决定在 OUI 段中申请和使用 0-3 个字节,只要他们选择的组合之前没有被其他制造商注册过?
    • 对不起,我说的“OUI部分”是指MAC地址的前半部分,“NIC部分”是后半部分。
    • 制造商不要求特定的 OUI 值,他们要求一个并获得一些尚未分配的值。
    【解决方案2】:

    是的,MAC 地址的前 3 个字节通常根本不是随机的,它们被分配给特定的公司。 (有些公司有不止一项任务)。最后 3 个字节也不是“随机的”,因为有时它们是按顺序分配的。除非它是一个真正流行的路由器,否则高位可能是恒定的。

    此外,大多数卡上的 MAC 地址都可以更改。并且有不同类型的 MAC 地址,例如“链路本地”和“组播”。

    如果您想要随机性,请使用 /dev/random 或您的操作系统提供的任何内容。

    【讨论】:

    • 感谢您的澄清,不幸的是我不能只使用 /dev/random。这个想法是,如果我的设备遇到无线网络,我应该创建一个随机数,但如果第二个设备遇到相同的网络,它应该是相同的数字。使用随机数会让我在不同设备上获得不同的数字。同时我需要概率与随机数相同。
    猜你喜欢
    • 2023-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-15
    相关资源
    最近更新 更多