Ontem, fiz uma grande atualização no meu sistema Linux. iwconfig
comando usado para exibir informações 802.11[abgn], mas agora está exibindo apenas 802.11.
Existe alguma maneira de fazer o iwconfig exibir as bandas disponíveis do cartão?
Caso contrário, existe alguma maneira de recuperar essas informações por meio de qualquer outro comando?
Responder1
Isso foi deliberadamente removido do código "emulação WEXT"no kernel Linux v4.7.
iwconfigobtém este pedaço de texto do kernel usandoioctl(SIOCGIWNAME), uma função da API WEXT (Wireless Extensions). No entanto:
O texto retornado pelo SIOCGIWNAME é limitado a 16 bytes e
IEEE 802.11abgn
já atinge esse limite – não há espaço para indicarac
e muito menos as alterações ainda mais recentes.O WEXT como um todo está praticamente preso na era 802.11n. Seu design geral, na verdadeantecedeWi-Fi 802.11 (iwconfigainda carrega subcomandos para o WaveLAN de 1988) e tem problemas para lidar com recursos modernos, como adaptadores Wi-Fi multibanda, larguras de canal, etc.
A maioria dos drivers sem fio modernos são baseados emmac80211/cfg80211arquitetura e fornece diretamente a API nl80211, que fornece muito mais recursos e não é afetada por vários problemas do WEXT. O kernel ainda emula operações WEXT existentes usando informações de mac/cfg80211, mas não há interesse nem bons motivos para estendê-lo ainda mais. (A arquitetura mac80211 foi introduzida em 2006 pela Devicescape; consulteeste artigo LWN.)
Isto também significa que todo oferramentas_sem fioO pacote é considerado obsoleto devido à sua dependência da API WEXT (exceto se você usar um driver WEXT, é claro). Em seu lugar, useeipara gerenciar dispositivos Wi-Fi que possuem drivers mac/cfg80211 modernos:
iw phy
(abreviação deiw phy phy0 info
) mostrará os recursos do seu cartão físico. Infelizmente, ele não indica "802.11b/g/n", mas você ainda pode inferir isso com base em bandas, suporte a HT/VHT, etc.- 802.11a – mostra a banda de 5 GHz
- 802.11b – mostra a banda de 2,4 GHz com taxas de bits 'não-HT' de 1/2/5,5/11 Mbps
- 802.11g – mostra a banda de 2,4 GHz com taxas 'não-HT' de 6/9/12/18/24/36/48/54 Mbps
- 802.11n – suporta "HT" (alto rendimento) em ambas as bandas
- 802.11ac – suporta "VHT" (rendimento muito alto) na banda de 5 GHz
- 802.11ax – suporta “HE” (alta eficiência)
iw dev
(abreviação deiw dev wlan0 info
) mostrará a configuração atual da interface do software, como frequência. É tecnicamente possível ter várias interfaces wlan# usando o mesmo phy.iw [dev] wlan0 link
mostrará o estado atual do link com mais detalhes.iw [dev] wlan0 station dump
é semelhante ao acima.
Observe que, como diz a mensagem de commit, recursos como HT e VHT não são mais considerados alterações (o que as letras minúsculas indicam) – eles foram mesclados em edições posteriores do 802.11 propriamente dito, por exemplo, "802.11-2012" incorpora totalmente 'n ', e "802.11-2016" inclui 'ac'.
Observe também que a alteração da emulação não afeta os drivers nativos do WEXT, que possuem seus próprios manipuladores para ioctls. Portanto, se você estiver usando um dispositivo muito antigo – ou um Realtek – ainda receberá nomes como IEEE 802.11-DS
ou IEEE 802.11b
neste campo.