ble扫描相关的问题,蓝牙 MAC 是否可以确定厂商?

结论先说:

D2:6F:A6:57:89:7B 不能用来确定厂商。

下面严谨解释原因。


一、蓝牙 MAC 是否可以确定厂商?

传统上:

  • MAC 前 3 字节 = OUI(Organizationally Unique Identifier)

  • 由 IEEE 分配

  • 可以查到厂商

例如:

复制代码
00:1A:7D → Apple
3C:5A:B4 → Samsung

二、但你这个地址有问题

MAC:

复制代码
D2:6F:A6:57:89:7B

看第一个字节:

复制代码
D2

转换为二进制:

复制代码
1101 0010

重点看最低两位:

复制代码
bit0 = 0
bit1 = 1

位含义:

含义
bit0 单播(0) / 组播(1)
bit1 全球唯一(0) / 本地管理(1)

你的地址:

bit1 = 1

意味着:

这是 Locally Administered Address(本地管理地址)


三、什么是本地管理地址?

这种地址:

  • 不是 IEEE 分配

  • 不属于固定厂商 OUI

  • 通常是:

    • 随机生成

    • BLE 隐私地址

    • 手机随机地址

    • Windows 随机地址

    • iOS 隐私地址

    • Android 随机地址


四、BLE 常见随机地址类型

BLE 有三种随机地址:

  1. Static Random Address

  2. Resolvable Private Address(RPA)

  3. Non-Resolvable Private Address

现在几乎所有:

  • iPhone

  • Android

  • Windows

  • 蓝牙耳机

  • BLE 标签

都会使用随机地址防止跟踪。


五、如何判断是不是随机地址?

看第一字节前两位:

复制代码
xx:xx:xx:xx:xx:xx
↑
第一个字节

规则:

前两位 类型
00 Public
01 Random Static
10 Random Private Resolvable
11 Random Private Non-Resolvable

你的:

复制代码
D2 = 1101 0010

前两位:

复制代码
11

属于:

Random Private Non-Resolvable Address


六、意味着什么?

✔ 每次广播可能变

✔ 无法反查厂商

✔ 无法固定识别设备

✔ 设计目的就是防追踪


七、那什么时候可以查厂商?

只有当:

  • 地址是 Public Address

  • 且 bit1 = 0

  • 且前三字节属于 IEEE OUI

才能查厂商。


八、结合你前面的数据

你之前发的:

复制代码
Company ID = 0x0006

那是 Manufacturer Data 里的 Company ID。

⚠️ 那个可以确定厂商

但 MAC 地址不行。


九、如何识别厂商更可靠?

优先顺序:

  1. Manufacturer Data(Company ID)

  2. Service UUID

  3. 设备名称模式

  4. 特征广播结构

  5. GATT 服务

不要依赖 MAC。


十、如果你在做 BLE 设备识别系统

(结合你之前的扫描项目)

建议:

复制代码
if manufacturer_id == 0x004C:
    vendor = "Apple"
elif manufacturer_id == 0x0006:
    vendor = "Microsoft"

不要用 MAC 前缀。


最终结论

复制代码
D2:6F:A6:57:89:7B

是:

随机 BLE 私有地址

无法确定厂商

设计上就是防止识别


相关推荐
byte轻骑兵14 小时前
BlueZ源码编译环境配置全指南:Linux桌面原生编译 + 嵌入式ARM交叉编译 + 定制裁剪与调试实战
linux·arm开发·蓝牙·bluez·电脑蓝牙
piaoyiren3 天前
基于 STM32F103 蓝牙遥控云台超声波避障小车
stm32·单片机·嵌入式硬件·蓝牙·超声波测距·直流电机
K成长日志6 天前
BLE链路层空口包--LE Uncoded PHY
物联网·嵌入式·蓝牙·iot·ble·无线·通信
六bring个六7 天前
连接模块中的BLE方式GATT协议分析
ble·open harmony·gatt·分布式软总线
TengTaiTech11 天前
打破ANC的“静默牢笼”:基于QCC3095实现主动降噪与侧音共存的音频方案
蓝牙·qcc·混音
奔跑吧 android13 天前
【Bluetooth-SIG】【CoreV6.2】【Vol3 Part G】【GATT】【零】【GATT 逐句逐段学习计划 2】
ble·bluetooth·att·gatt·core_v6.2·sig
TengTaiTech18 天前
重构无线音频边界:基于高通QCC3056的新一代蓝牙音频发射器深度解析
蓝牙·qcc
HiDev_19 天前
BLE Legacy 连接【读取当前连接所使用 PHY 类型 HCI_LE_Read_PHY command】
蓝牙·ble·蓝牙连接·ble 蓝牙广播·蓝牙hci command
HiDev_19 天前
BLE Legacy 连接【断开连接 Disconnect command】
蓝牙·ble·蓝牙连接·ble 蓝牙广播·蓝牙hci command
K成长日志20 天前
BLE协议之设备地址
网络·物联网·网络协议·嵌入式·蓝牙·ble