* Imagenes de instalación de las versiones estables para Mageia y OpenMandriva.

OpenMandriva: Mageia (Mageia 9) 20/Agosto/2023 - Anuncio, Descargas.

Blogdrake recomienda descargar las imágenes de instalación (iso) vía torrent para evitar corrupción de datos, aprovechar mejor su ancho de banda y mejorar la difusión de las distribuciones.

Jugando con Bluetooth - II


En este capitulo se tratará:


    - Introduccion al HCI sniffer


    - Haciendo un sniff de conexion


    - Estudio casero de la cobertura Bluetooth


Vamos a hacer un sniff de la conexion por bluetooth para ver un poco mejor como funciona

Para hacer el sniff usaremos el HCI sniffer, una vez instalado se ejecuta con hcidump como root (en este caso he instalado sudo para hacerlo mas facil)

Partimos de que hemos entendido los contenidos de "Jugando con bluetooth - I", lo primero que haremos serà arrancar el HCI sniffer

vicent@ferrervicent:~$ sudo hcidump HCI sniffer - Bluetooth
packet analyzer

ver 1.28 device: hci0 snap_len: 1028 filter: 0xffffffff


Ese es el mensaje que nos da al arrancar, se pueden hacer variaciones en los parametros estandard que usa hci dump para el sniff, consultando la ayuda veremos todas las opciones posibles,haremos pues un "man hcidump" si queremos ver todas las posibilidades de el sniffer

He probado algunas opciones y aunque algunas tienen bastante utilidad (reenviar los datos capturados o cambiar el modo de visualizacion -ascii, hex, etc..- ) yo de momento no las voy a usar....

Una vez el sniffer en marcha probaremos a generar trafico (enviar una petición de autentificacion desde el mobil por ejemplo) y podremos comprobar que efectivamente escucha el trafico...
Hay que decir que ese trafico es el local que està escuchando la propia interfaz bluetooth... no se si se podran escuchar otros canales sin afectar al trafico.. lo que en wifi's se denomina de forma comun "modo monitor"..

Asi pues tenemos el trafico de la peticion de autentificacion desde el mobil..

> HCI Event: Connect Request (0x04) plen 10

< HCI Command: Accept Connection Request (0x01|0x0009) plen 7

> HCI Event: Command Status (0x0f) plen 4

> HCI Event: PIN Code Request (0x16) plen 6

< HCI Command: PIN Code Request Reply (0x01|0x000d) plen 23

> HCI Event: Command Complete (0x0e) plen 10

> HCI Event: Link Key Notification (0x18) plen 23

> HCI Event: Connect Complete (0x03) plen 11

< HCI Command: Write Link Policy Settings (0x02|0x000d) plen 4

> HCI Event: Page Scan Repetition Mode Change (0x20) plen 7

> HCI Event: Max Slots Change (0x1b) plen 3

> HCI Event: Command Complete (0x0e) plen 6

< HCI Command: Change Connection Packet Type (0x01|0x000f) plen 4

> HCI Event: Command Status (0x0f) plen 4

> HCI Event: Connection Packet Type Changed (0x1d) plen 5


Ademas podemos ver de una forma bastante buena la diferencia entre lo que entra y lo que sale.. si os fijais en las linias 4 y 5 envia la peticion del pin y el ordenador la acepta ...

Y al pasar unos segundos automaticamente se corta la conexión..

> HCI Event: Disconn Complete (0x05) plen 4


Cosa que no acabo de entender ya que en el mobil està puesto que no se desconecte pero bien...

Ara que hemos visto un poco como se comunica bluetooth (todo esto lo digo por la experiencia de ir probando, en ningun momento he estudiado teoria del protocolo bluetooth asi que puede que me equivoque en algunos aspectos).. Vamos a hacer conexiones desde el ordenador al mobil para hacer pruebas de señal, para ver la cobertura..,esto lo haremos con el comando "hcitool" (que hemos visto en Jugando con Bluetooth - I), usando la opcion "hcitool
cc"
para conectar y "hcitool lq" para ver el estado de la señal..

Iniciaremos el sniffer (HCIdump) para ver tambien que es lo que pasa...

Hacemos un intento de conexion al mobil:

vicent@ferrervicent:~$ sudo hcitool cc 08:00:1F:85:4F:E1


y a continuacion podemos ver desde el sniffer que la conexion tiene éxito..

vicent@ferrervicent:~$ sudo hcidump

HCI sniffer - Bluetooth packet analyzer ver 1.28

device: hci0 snap_len: 1028 filter: 0xffffffff

< HCI Command: Create Connection (0x01|0x0005) plen 13

> HCI Event: Command Status (0x0f) plen 4

> HCI Event: Link Key Request (0x17) plen 6

< HCI Command: Link Key Request Reply (0x01|0x000b) plen 22

> HCI Event: Command Complete (0x0e) plen 10

> HCI Event: Connect Complete (0x03) plen 11

< HCI Command: Write Link Policy Settings (0x02|0x000d) plen 4

> HCI Event: Page Scan Repetition Mode Change (0x20) plen 7

> HCI Event: Command Complete (0x0e) plen 6

> HCI Event: Max Slots Change (0x1b) plen 3


Pero pasa como antes.. que al poco rato (de no usarlo realmente) se desconecta.. supongo que serà para no gastar tanta bateria y supongo que en cada acción se harà automaticamente una prueba de conexion y se reconectarà en caso de que se haya desconectado.. pero no me hagais mucho caso.. son solo hipotesis mias..

Seguimos pues con el tema de la señal, la señal se mide con el comando "hcitool lq" como he dicho antes, portanto si lo ejecutamos correctamente:

vicent@ferrervicent:~$ sudo hcitool lq 08:00:1F:85:4F:E1

Link quality: 255


Observamos que nos saca 255 de señal, que es el maximo (el mobil esta a la parte delantera de la torre y la interface bluetooth detras)

y HCIDump como no nos muestra que evidentemente esa medida de señal ha sido realizada:

< HCI Command: Read Link Quality (0x05|0x0003) plen 2

> HCI Event: Command Complete (0x0e) plen 7


He hecho varias pruebas poniendo el mobil cada vez en una posición diferente, y seguidamente ejecutando cada vez las ordenes correspondientes a conectar y 
mirar el estado de la señal.

Visión directa:

  1. Al lado, medio metro  > 255

  2. 2 metros mas o menos > 255

  3. 4 metros mas o menos > 247

  4. 6 metros con poca visibilidad > 212


(No he probado mas porque tendria que mover el ordenador de
sitio)

Sin visión directa:

  1. A la otra parte de la torre > 255

  2. Con la pantalla en medio > 254-220

  3. Bajo la mesa (cpu arriba) > 255

  4. Dentro de una vitrina con visión directa
    > 255

  5. A 3 metros y una puerta de cristal doble > 190

  6. A l'escala de casa > ya no conecta

  7. A 4 metros y una pared enmedio > tampoco


No lo sé seguro pero por la experiencia se puede deducir que el bluetooth usa un espectro de frequèncias y una potencia de emision buena para distancias cortas pero que en largas distàncias se ve afectado. sobretodo si hay objetos por el medio.

Para la idea que llebo en mente para proximos numeros deberé buscar un poco de documentación.. pero estoy seguro que no os defraudarà la idea ;)



Este book es una traduccion del catalan desde el articul o riginal del blog "carta de navegació"