前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >蓝牙地址 你知多少?

蓝牙地址 你知多少?

作者头像
Linux兵工厂
发布2023-02-28 12:52:14
1.6K0
发布2023-02-28 12:52:14
举报
文章被收录于专栏:Linux兵工厂Linux兵工厂
  • 参考链接(https://macaddresschanger.com/what-is-bluetooth-address-BD_ADDR)

1. 前言

蓝牙是什么?蓝牙是一种支持设备短距离通信(一般 10m 以内)的无线电技术,被广泛应用于手机、电脑、鼠标、键盘、蓝牙音箱,当下非常流行。从 1999 年的蓝牙 1.0 进化到 2016 年的蓝牙 5.0,从经典蓝牙到低功耗蓝牙,这项技术一直在进步,市场也在不断扩大。在未来,蓝牙也是我们生活之中不可缺少的一部分,正逐步改变我们的生活方式。本文主要对蓝牙地址做一下解析,方便我们在分析蓝牙数据包时不至于太盲目。

2. 蓝牙地址组成

Bluetooth Device Address 蓝牙设备地址可分为两类:公开设备地址(public device address)和随机地址(random device address)。

2.1 Public address

Bluetooth Address 即 Public address ,并不针对 BLE 的 random address。公开设备地址需要向 IEEE 协会申请,是需要购买的,但是可以保证地址的唯一性。Bluetooth Address(BD_ADDR):是制造商分配给每个蓝牙设备的唯一 48 位。它是用来唯一识别一个物理设备的标识。正常情况下,该地址需要向IEEE 申请(购买),可以确保地址的唯一性。蓝牙地址通常显示为 6 个字节,以 16 进制表示,用冒号分隔(示例:- 00:11:22:33:FF:EE )。其中,蓝牙地址的 upper part(即most-significant 24 bits)被称为 Organizationally Unique Identifier(OUI)。它可以用来确定设备的制造商。OUI 是由电气和电子工程师协会IEEE 分配。另外,蓝牙设备地址还被用来在蓝牙设备之间的无线通信中确定跳频模式。

蓝牙地址结构由三部分组成:NAP、UAP 和 LAP。NAP 非有效地址部分(2 个字节)。包含 OUI 的前 16 位。NAP 值用于跳频同步帧。UAP 高地址部分(1 个字节)。包含 OUI 的剩余 8 位。UAP 值用于在各种蓝牙规范算法中。LAP 低地址部分(3 个字节)。这部分蓝牙地址由设备供应商分配。LAP 值将蓝牙设备唯一标识为每个传输帧中访问代码的一部分。LAP 和 UAP 构成蓝牙地址的重要地址部分 (SAP)。

2.2 Random Address

因为 Random Address 的设备地址不是固定分配的,而是在设备启动后随机生成的,而且会根据一定的周期发生变化。它的出现正是为了规避 Public Address申请/维护成本高、复杂等的问题的,当然这主要是可以保证地址可变,更安全。

3. 蓝牙嗅探

通过ubertooth one设备运行ubertooth-rx命令嗅探到的蓝牙数据信息如下图:

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-11-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Linux兵工厂 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 前言
  • 2. 蓝牙地址组成
    • 2.1 Public address
      • 2.2 Random Address
      • 3. 蓝牙嗅探
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档