En un momento anterior, analizamos como diagnosticar y lograr echar a andar una red cableada. Hoy nos toca la misma tarea, pero para las redes wifi.
Casi todos los comandos empleados anteriormente funcionan para las redes WiFi, excepto alguno que otro que funcione solo para redes cableadas, o por tipo, ya sea PCI/MiniPCI o USB, por lo cual no los voy a repetir. Veamos algunos ejemplos.
Información de la tarjeta de red[PCI/MiniPCI]:
# lspci | egrep -i --color 'wifi|wlan|wireless|802.11'
08:00.0 Network controller: Broadcom Limited BCM43142 802.11b/g/n (rev 01)
Si adaptador WiFi es USB:
# lsusb | egrep -i --color 'wifi|wlan'
Bus 001 Device 007: ID 0bda:a811 Realtek Semiconductor Corp. RTL8811AU 802.11a/b/g/n/ac WLAN Adapter
O en general:
# lshw -C network | grep -B 1 -A 12 'Wireless interface'
*-network
description: Wireless interface
product: BCM43142 802.11b/g/n
vendor: Broadcom Limited
physical id: 0
bus info: pci@0000:08:00.0
logical name: wlan0
version: 01
serial: d0:53:49:bb:45:52
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
configuration: broadcast=yes driver=wl0 driverversion=6.30.223.271 (r587334) latency=0 multicast=yes wireless=IEEE 802.11
resources: irq:18 memory:c6100000-c6107fff
--
*-network:2
description: Wireless interface
physical id: 5
bus info: usb@1:6
logical name: wlan1
serial: 00:e0:4c:42:af:7b
capabilities: ethernet physical wireless
configuration: broadcast=yes driver=rtl88xxau multicast=yes wireless=IEEE 802.11
Siguiendo la informacion obtenida, para las tarjetas PCI o MiniPCI, en el apartado bus info:
bus info: pci@0000:08:00.0
# lspci -vv -s 08:00.0
Kernel driver in use: wl
Kernel modules: wl
Mirando el driver:
# modinfo wl
filename: /lib/modules/4.19.0-10-amd64/updates/dkms/wl.ko
license: MIXED/Proprietary
license: MIXED/Proprietary
alias: pci:v*d*sv*sd*bc02sc80i*
depends: cfg80211
retpoline: Y
name: wl
vermagic: 4.19.0-10-amd64 SMP mod_unload modversions
parm: passivemode:int
parm: wl_txq_thresh:int
parm: oneonly:int
parm: piomode:int
parm: instance_base:int
parm: nompc:int
parm: intf_name:string
Si el dispositivo WiFi es USB, sabiendo el bus, podemos obtener bastante información acerca:
# lsusb -v -d 0bda:a811
Bus 001 Device 007: ID 0bda:a811 Realtek Semiconductor Corp. RTL8811AU 802.11a/b/g/n/ac WLAN Adapter
Device Descriptor:
. . .
idVendor 0x0bda Realtek Semiconductor Corp.
idProduct 0xa811 RTL8811AU 802.11a/b/g/n/ac WLAN Adapter
bcdDevice 2.00
iManufacturer 1 Realtek
iProduct 2 802.11ac WLAN Adapter
iSerial 3 00e04c000001
Self Powered
Remote Wakeup
MaxPower 500mA
iInterface 2 802.11ac WLAN Adapter
USB 2.0 Extension Device Capability:
HIRD Link Power Management (LPM) Supported
. . .
Para ver la info del driver:
# lsmod | egrep -i cfg80211
cfg80211 774144 3 wl,88XXau
Donde wl es el driver del chip PCI y 88XXau es el driver de nuestra WiFi USB. Todo esto haciendo uso del subsistema CFG80211.
Ahora veamos:
# modinfo 88XXau
filename: /lib/modules/4.19.0-10-amd64/updates/dkms/88XXau.ko
version: v5.2.20.2_28373.20180619
author: Realtek Semiconductor Corp.
description: Realtek Wireless Lan Driver
license: GPL
name: 88XXau
. . .
Si el driver fue compilado con DKMS:
# dkms status
aufs, 4.19+20190211, 4.19.0-10-amd64, x86_64: installed
broadcom-sta, 6.30.223.271, 4.19.0-10-amd64, x86_64: installed
rtl8812au, 5.2.20.2, 4.19.0-10-amd64, x86_64: installed
Antes de seguir necesitaremos algunos utilitarios:
apt install -y iw wpasupplicant wireless-tools wavemon
Por supuesto, para obtener los datos de configuración del, o los dispositivos:
# iwconfig wlan0
wlan0 IEEE 802.11 ESSID:off/any
Mode:Managed Access Point: Not-Associated Tx-Power=200 dBm
Retry short limit:7 RTS thr:off Fragment thr:off
Encryption key:off
Power Management:off
# iwconfig wlan1
wlan1 IEEE 802.11 ESSID:"d2B20U00tRzYxME0"
Mode:Managed Frequency:2.437 GHz Access Point: 14:96:E5:45:9D:78
Bit Rate=72.2 Mb/s Tx-Power=18 dBm
Retry short limit:7 RTS thr:off Fragment thr:off
Encryption key:off
Power Management:off
Link Quality=61/70 Signal level=-49 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0
Si queremos ver en tiempo real el nivel de señal del AP al que estamos conectados:
watch -n 1 cat /proc/net/wireless
wavemon es una aplicación de monitoreo escrita en ncurses para dispositivos inhalámbricos. Esta herramienta muestra información continua y actualizada acerca de los niveles de señal así como parámetros especificos de la red e información general.
# wavemon

Para ver los canales que soporta el adaptador WiFi:
# iwlist chan
Y para escanear las redes cercanas[ESSID]:
# iwlist wlan0 scan | egrep -i 'cell|chan|essid|wpa|cipher|qual'
Cell 01 - Address: 14:96:E5:45:9D:78
Channel:6
Frequency:2.437 GHz (Channel 6)
Quality=55/70 Signal level=-55 dBm
ESSID:"WIFI-LOCAL"
Cell 02 - Address: 68:72:51:64:58:7A
Channel:11
Frequency:2.462 GHz (Channel 11)
Quality=35/70 Signal level=-75 dBm
ESSID:"FRATERNIDAD"
Existen otras herramientas gráficas, tanto para la consola como WiFi-Radar o NMTui. Por último veamos un ejemplo demostrativo de como configurar la conectividad wifi por la consola. Variante 1:
# nano /etc/network/interfaces and write:
auto wlan0
iface wlan0 inet dhcp
wpa-ssid [SSID]
wpa-psk [Password]
Guardamos y salimos del editor. Ahora pedimos IP con:
# dhclient wlan0Y listo!
Ahora que menciono NMTui/NMcli, para ver un ejemplo detallado de todas las propiedades del adaptador WiFi:
# nmcli -f GENERAL,WIFI-PROPERTIES dev show wlan0Este mismo ejemplo, pero con Netplan[Gracias Ubuntu de .l.]:
# nano /etc/netplan01-network-manager-all.yaml
version: 2
wifis:
wlan0:
optional: true
access-points: "SSID":
password: "Password"
dhcp4: true
Guardamos y salimos.
# netplan apply
Si hay algun error en la config:
# netplan --debug apply
Ejecutamos:
# ip a
Y si nos da IP es que todo está OK.
Variante 2:
# iwconfig wlan0 essid SSID key s:PasswordAhora pedimos IP con:
# dhclient wlan0Y listo!
Hasta acá lo dejo, que me he extendido un poco. En el apartado drivers WiFi y configuraciones, hay bastante tela por donde cortar, dejo algunos artículos de referencia para que se guíen si presentan problemas:
- https://www.sysadminsdecuba.com/2018/11/dkms-que-es-y-como-se-usa/- https://www.sysadminsdecuba.com/2018/10/linux-y-los-drivers-wi-fi/- https://xn--deepinenespaol-1nb.org/mejorar-rendimiento-de-algunos-wifi-intel-en-deepin/- https://xn--deepinenespaol-1nb.org/wiki/drivers-controladores/reparar-y-reinstalar-conexiones-wifi-ralink-y-realtek/- https://xn--deepinenespaol-1nb.org/wiki/drivers-controladores/reparar-y-reinstalar-conexiones-wifi/
- https://wiki.debian.org/WiFi- https://wireless.wiki.kernel.org/- https://wiki.archlinux.org/index.php/Network_configuration/Wireless
Un placer y espero les sirva. Hasta la próxima!







No comments yet