miércoles, 27 de enero de 2016

Rfkill : Controlando el hardware inalámbrico.








Hoy hablamos sobre rfkill, que no es más que un subsistema en kernel de linux que nos proporciona una interfaz a través del cual los transistores de radio se pueden consultar, activar y desactivar. La interfaz de "rfkill" se encuentra en "/dev/rfkill" que contiene el estado actual de todos los transmisores de radio en el sistema.

Con rfkill podremos consultar, listar, habilitar y deshabilitar dispositivos (wifi, bluetooth, uwb, wimax, gps, fm, nfc) e que cada uno tendrá un número del que haremos uso para bloquear o desbloquear el mismo. Como siempre podemos consultar este comando mediante "man rfkill"

NAME
       rfkill - tool for enabling and disabling wireless devices
SYNOPSIS
       rfkill [options] command
OPTIONS
       --version
              Show the version of rfkill.
COMMANDS
       help   Show rfkill's built-in help text.
       event  Listen for rfkill events and display them on stdout.
       list [type]
              List the current state of all available rfkill-using devices, or
              just all of the given type.
       block index|type
              Disable the device corresponding to the given  index.   type  is
              one  of  "all",  "wifi", "wlan", "bluetooth", "uwb", "ultrawide‐
              band", "wimax", "wwan", "gps", "fm" or "nfc".
       unblock index|type
              Enable the device corresponding  to  the  given  index.  If  the
              device  is  hard-blocked,  e.g.  via  a hardware switch, it will
              remain unavailable though it is now soft-unblocked. 


Una vez visto ya podemos consultar las interfaces lanzando "rfkill list"


???@???:~$ rfkill list
0: phy0: Wireless LAN
Soft blocked: no
Hard blocked: no
1: xxx-wlan: Wireless LAN
Soft blocked: no
Hard blocked: no


Una vez ya sabemos los dispositivos y su estado podemos bloquearlos mediante "rfkill all", con esto bloqueamos todo, otro ejemplo "rfkill wifi" bloquearíamos los dispositivos wifi y así con todas las opciones que nos muestra "man rfkill" como son, wifi, wlan, bluetooth, uwb, ultrawide-band, wimax, wwan, gps, fm o nfc.

Después de bloquearlos procedemos a desbloquearlo, "rfkill ublock all" para desbloquear todo lo que bloqueamos anteriormente, pero también podemos hacer uso de los números del dispositivo o del nombre del mismo. En definitiva un comando muy útil y de conocimientos básicos.