comando iwconfig não mostrando abgn

1

Ontem, fiz uma grande atualização no meu sistema linux. iwconfig comando usado para exibir 802.11 [abgn] info, mas agora ele está exibindo apenas 802.11.

Existe alguma maneira que eu possa fazer o iwconfig para exibir as bandas disponíveis no cartão?

Se não, existe alguma maneira de recuperar essas informações por meio de outro comando?

Agradeço muito a você!

    
por glezo 08.06.2018 / 11:34

1 resposta

2

Isso foi deliberadamente removido do código "WEXT emulation" no kernel Linux v4.7 .

iwconfig obtém este pedaço de texto do kernel usando ioctl (SIOCGIWNAME) , uma função da API WEXT (Wireless Extensions). No entanto:

  1. O texto retornado por SIOCGIWNAME é limitado a 16 bytes e IEEE 802.11abgn já atinge esse limite - não há espaço para indicar ac , muito menos as emendas ainda mais recentes.

  2. WEXT como um todo está praticamente preso na era 802.11n. Seu design geral na verdade é anterior 802.11 Wi-Fi ( iwconfig ainda carrega subcomandos para o WaveLAN de 1988), e tem problemas para lidar com recursos modernos como adaptadores Wi-Fi de banda múltipla larguras de canal, etc.

A maioria dos drivers sem fio modernos se baseia na arquitetura mac80211 e fornece diretamente a API cfg80211, que fornece muito mais recursos e não é afetada por vários problemas que o WEXT possui. O kernel ainda emula operações WEXT existentes usando informações do cfg80211, mas não há interesse nem boa razão para ampliá-lo ainda mais. (A arquitetura mac80211 foi introduzida em 2006 pela Devicescape; veja este artigo do LWN .)

Isso também significa que todo o pacote wireless_tools é considerado obsoleto devido à sua dependência da API WEXT. Em seu lugar, use iw para gerenciar dispositivos Wi-Fi:

  • iw phy (abreviação de iw phy phy0 info ) mostrará os recursos do seu cartão físico. Infelizmente, ele não diz "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
    • 802.11g - lista as taxas de bits de 6/9/12/18/24/36/48/54 Mbps na banda de 2,4 GHz
    • 802.11n - suporta "HT" (alta taxa de transferência) em ambas as bandas
    • 802.11ac - suporta "VHT" (taxa de transferência muito alta) na banda de 5 GHz
  • iw dev (abreviação de iw dev wlan0 info ) mostrará a configuração atual da interface do software, como freqüência. É tecnicamente possível ter várias interfaces wlan # usando o mesmo phy.

  • iw [dev] wlan0 link mostrará o estado atual do link em mais detalhes.

  • iw [dev] wlan0 station dump é semelhante ao acima.

Observe que, como a mensagem de confirmação diz, recursos como HT e VHT não são mais considerados como emendas (que as letras minúsculas indicam) - eles foram mesclados em edições posteriores do próprio 802.11, 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. Então, se você estiver usando um dispositivo muito antigo - ou um Realtek -, você ainda receberá nomes como IEEE 802.11-DS ou IEEE 802.11b neste campo.

    
por 08.06.2018 / 12:30