Você está correto, mas a "placa wifi" precisa suportar o funcionamento como um ponto de acesso, que é algo que a maioria dos dispositivos Wi-Fi para laptops e desktops não suportam.
O Guruplug é um "plug computer" baseado em ARM com 512MB de RAM e um dispositivo que pode atuar como um roteador sem fio ou "hotspot" - parece-me semelhante à maioria dos hardwares de celular.
Eu esperava que a NIC sem fio suportasse o "modo monitor" (o que leva cada pacote sem fio "ouvido" pelo rádio para o sistema operacional) e então seria necessário um software como o hostapd para transformá-lo em um ponto de acesso. No entanto, a maneira como funciona no plugue é que a NIC sem fio aparece no sistema operacional (Linux) como apenas outra interface de rede.
O firmware na NIC (que é carregado quando o driver é inicializado) manipula a criptografia e vários clientes. Ele veio com um utilitário que permitia definir os parâmetros da NIC sem fio, e os parâmetros que você pode definir com esse utilitário são os mesmos que qualquer roteador sem fio que você compraria em uma loja de varejo. Este utilitário ( uaputl
) apenas envia ioctl para o driver da NIC sem fio. Portanto, o sistema operacional não precisa se preocupar com nenhum dos detalhes do ponto de acesso, mas ainda é responsável pelo firewall, pelo DHCP e pelo roteamento. Neste caso, existem comandos que você pode enviar via uaputl
para iniciar e parar o ponto de acesso.
Ao fazer upload de firmware diferente, a NIC sem fio pode ser um "cliente" ou associada a um ponto de acesso, como hardware Wifi padrão.
Portanto, basicamente, a NIC sem fio, com capacidade de ponto de acesso, é apenas exposta como outra interface de rede para o sistema operacional. Eu imagino que a maioria dos hotspots são muito similares.