Como interligar uma interface sem fio com outra interface sem fio (ambas no mesmo computador)?

4

Ubuntu 14.04

Basicamente, estou tentando realizar a seguinte configuração -

internet sem fio --- > wlan0 do computador Ubuntu "em ponte para" wlan1 do mesmo computador Ubuntu --- > dispositivo com wifi

O motivo dessa configuração é que a Internet sem fio é uma rede WPA2 Enterprise à qual o meu dispositivo com Wi-Fi não pode se conectar. (O dispositivo com Wi-Fi também não pode se conectar a redes peer-to-peer ou redes ad-hoc.) Além disso, a fonte de internet sem fio não tem lista branca / negra e, portanto, não há problema em ver o endereço MAC do dispositivo (se necessário) e nenhum problema com a atribuição de um endereço IP ao dispositivo (se necessário). É o dispositivo que tem um problema com a autenticação do WPA2 Enterprise.

[ EDITAR - Como o dispositivo não pode autenticar com êxito, a fonte de internet sem fio NÃO atribuirá um endereço IP ao dispositivo e também poderá ter problemas em visualizar o endereço MAC do dispositivo.]

wlan0 é uma interface / chipset sem fio Intel que não pode ser definida como modo de ponto de acesso ou modo mestre e, portanto, é usada para conectar-se à fonte de Internet WPA2 Enterprise.

wlan1 deve ser definido para o modo de ponto de acesso.

Obviamente, a "ponte" entre wlan0 e wlan1 não deve ser sem fio, pois ambos estão no mesmo computador.

(1) Acredito que brctl não pode interligar uma interface sem fio ( wlan0 ) a outra interface sem fio ( wlan1 ). Está correto?

(2) Se brctl não puder ser usado, ainda posso usar hostapd ?

(3) Se brctl não puder ser usado, o que devo procurar para realizar a configuração descrita acima?

(4) Algum dos seguintes seria uma parte da solução para o meu problema - (a) dnsmasq para servir DHCP (b) hostapd (c) endereço IP estático (para wlan1 ???) (para o dispositivo conectado a wlan1 ??) (d) NAT (tradução de endereços de rede) (Código é% (f) IP Masquerade (g) iptables (h) WDS (sistema de distribuição sem fio) (i) IP Forwarding?

Obrigado.

    
por sean 10.10.2015 / 19:19

2 respostas

3

% bl0ck_qu0te%

O requisito aqui é que todas as interfaces devem poder enviar pacotes com qualquer endereço MAC de origem e receber pacotes com qualquer MAC de destino (não apenas o próprio dispositivo).

As interfaces Wi-Fi AP podem ser conectadas de forma perfeita (a maioria dos "roteadores sem fio" tem, de fato, uma ponte Linux comum entre o AP e a Ethernet). Interfaces de modo de estação, no entanto, não podem. Então você pode conectar wlan1 mas não wlan0.

Existe uma maneira de contornar isso - o modo "4addr", também conhecido como "WDS", que adiciona um campo de endereço MAC extra a quadros Wi-Fi. Você pode ativá-lo via iw , desde que o seu driver Wi-Fi o suporte. Uma vez habilitado, você poderá fazer a ponte wlan0 também.

No entanto, por motivos de segurança, muitos APs não permitem o modo 4addr por padrão. (Alguns têm uma alternância geral, alguns têm uma lista de permissões baseada em MAC.) Funcionará com o AP da sua universidade? Experimente e veja.

(Outra solução é "arpnat" - como NAT, mas aplicada a endereços MAC - mas pode confundir servidores DHCP e não é suportada pelo Linux comum. Alguns APs, como o PicoStation, suportam-no no modo de estação.)

% bl0ck_qu0te%

Depende do seu driver Wi-Fi. A maioria deles deve suportar o modo AP hoje em dia, mas nem todos o fazem. Use iw phy0 info , iw phy1 info para descobrir.

% bl0ck_qu0te%

A abordagem alternativa mais comum seria o IP NAT (mascaramento) usando o iptables.

Em alguns casos, o roteamento regular (sem NAT) também funcionaria.

% bl0ck_qu0te%

sim, não, não, sim, talvez, talvez, o que, você está apenas jogando termos aqui?

    
por grawity 14.10.2015 / 12:10
0

Você pode interligar interfaces sem fio usando brctl sem nenhum problema:

brctl addbr br_name
brctl addif br_name wlan0
brctl addif br_name wlan1 

Mas você precisará referenciar a ponte br_name em si, não as interfaces separadas em sua configuração de rede.

    
por Pilot6 11.10.2015 / 09:54