wlan0 para a ponte eth0 funciona, mas o endereço MAC é confundido

1

Eu tenho um ponto de acesso ( hostapd ) em execução em wlan0 . wlan0 e eth0 são vinculados e eth0 é conectado a um roteador. br0 está configurado para DHCP e recebe um endereço que está reservado no roteador.

Deixe a caixa com o ponto de acesso ser chamada de caixa do ponto de acesso.

Ocasionalmente, o roteador mostrará que a caixa do ponto de acesso tem um endereço MAC do dispositivo wlan0 em vez do MAC de eth0 como deveria.

Qualquer dispositivo conectado ao ponto de acesso mostrará seus respectivos endereços MAC no cache de arp do roteador.

O roteador tem regras de firewall de ponte que impõem que todos os pacotes do endereço IP reservado do DHCP da caixa de ponto de acesso devem vir do endereço MAC de eth0 , então a caixa perde a conectividade de rede quando o MAC muda de eth0 para %código%. Quando a caixa perder a conectividade, todos os clientes associados no ponto de acesso ainda poderão usar a Internet.

Consegui contornar as regras de ponte do roteador usando os seguintes comandos wlan0 na caixa que tem ebtables .

ebtables -t nat -A PREROUTING -i eth0 -s $WLAN_MAC -j dnat --to-destination $LAN_MAC
ebtables -t nat -A POSTROUTING -o eth0 -s $WLAN_MAC -j snat --to-source $LAN_MAC

ebtables -t nat -A PREROUTING -i eth0 --logical-in br0 -s $WLAN_MAC -j dnat --to-destination $LAN_MAC
ebtables -t nat -A POSTROUTING -o eth0 --logical-out br0 -s $WLAN_MAC -j snat --to-source $LAN_MAC

Embora a caixa de ponto de acesso nunca perca a conectividade com a Internet, o cache de arp do roteador ainda mistura os endereços MAC. Existe uma maneira de evitar que isso aconteça?

EDIT
Consegui resolver este problema de forma desajeitada definindo o endereço MAC de wlan0 para o mesmo MAC que wlan0 . Eu não gosto dessa solução e quero fazê-la funcionar sem alterar o MAC de eth0 diretamente.

    
por Jake Psimos 18.06.2017 / 01:19

1 resposta

0

Resolvido, eu tive que usar arptables para mangle os pacotes que continham wlan0 mac para o eth0 mac.

    
por 18.06.2017 / 03:54