Ralink RT3070, chip di 10 anni, vs. Network Manager

Di recente, mi sono stufato di usare la Edimax EW-7811UTC, perché aveva un sacco di problemi sia su Linux, con i costanti driver da tenere tramite DKMS, che su Windows.

D’altra parte, però, investire oggi su una scheda PCI Express con supporto al WiFi 5, come viene chiamato oggi 802.11ac, non ne vale la pena, proprio perché c’è il nuovo WiFi 6 (nome che sostituisce 802.11ax).

Per questa nuova tecnologia, ho trovato solo una Intel Killer AX1650, che sarebbe anche supportata da Debian, ma l’ho trovata solo in formato M.2. Tra scheda e adattatore PCI/antenne andrei a spendere non meno di 50-60€. Su Amazon marketplace ci sarebbero anche delle AX200 a meno soldi, ma i venditori non mi sembrano troppo affidabili e comunque richiederebbero sempre un convertitore.

Siccome questo bisogno di WiFi potrebbe essere una cosa temporanea, ho deciso allora di rispolverare una vecchia chiavetta D-Link compatibile con 802.11n a 150Mbps, 2,4GHz, basata su un vecchio Ralink RT3070.

Su Windows ha funzionato subito, per fortuna non servono più tutte quelle procedure che bisognava fare un tempo, con driver in CD, strane utility, etc.

Ho avuto invece problemi su Debian. Pur avendo già installato i firmware, all’inizio mi sembrava che non volesse saperne di funzionare. Poi mi sono accorto che usando wpa_supplicant e dhclient manualmente, anziché tramite Network Manager, la cosa si risolveva.

Purtroppo la cosa non è documentata adeguatamente, ma questo chipset non è compatibile con la funzionalità di randomizzazione del MAC Address integrata in Network Manager dalla versione 1.4.0 del 2016 (nel momento in cui scrivo, su Debian Testing ho la 1.14.6).

La riga da aggiungere al file /etc/NetworkManager/NetworkManager.conf è la seguente (fonte):

[device]
wifi.scan-rand-mac-address=no

Essendo un file di sistema, la modifica richiede i permessi di root (su/sudo, che potete abbinare, per esempio, all’editor nano, ma qualora non abbiate fatto una cosa del genere vi rimando a una delle tante guide disponibili sul web), essere in netdev non è sufficiente!

Come riportato nel link, solo nella pagina generica del WiFi del wiki di Debian ho trovato questa informazione: non c’è sulle pagine specifiche dei dispositivi con chip Ralink, né in inglese, né in italiano. Persino nel wiki di Arch Linux, che di solito è semplicemente una miniera di informazioni, è riportato solo nella pagina di Network Manager, dove se ne parla come causa di possibili degradazioni delle prestazioni, senza però dire che in certi casi compromette interamente l’usabilità di dispositivi.

Però, una volta che si sa che il problema è questo, e si cerca quella stringa, allora viene fuori che è super noto.

Secondo me, tanto per cominciare, le varie distribuzioni dovrebbero mettere questa riga commentata nel file di configurazione, con un commento che spieghi la faccenda. Ma soprattutto Network Manager dovrebbe mettere una blacklist per bloccare questa funzionalità con dell’hardware di cui è noto il problema (e sono almeno due: una è la mia chiavetta, D-Link DWA 125, una è la TP-Link WN821N) ed eventualmente un’impostazione tramite la GUI. Non sarebbe male avere delle impostazioni generiche indipendenti dalla rete a cui ci si connette, cosa non possibile al momento, almeno tramite GNOME.

Insomma, con tutta la mia paranoia, per una volta persino per me quest’impostazione di sicurezza è esagerata! Soprattutto se, come nel mio caso, viene applicata a un PC fisso.