Configuração de extensor/repetidor/ponte de Wi-Fi
Se suportado pelos dois dispositivos, considere usar WDS, Túneis GRE da camada 2 (“gretap”) ou rede de malha.
O uso de relayd conforme as instruções neste artigo não é garantido para funcionar e suporta apenas IPv4
O problema mais comum é que o roteador cliente não pode transmitir a mensagem DHCP entre o roteador principal e o cliente conectado ao roteador cliente. Atualmente, parece ser a limitação de hardware/SOC (relacionada à clonagem de MAC?)
Em vez de retransmitir, deve ser possível usar kmod-trelay, as únicas informações sobre o uso podem ser vistas em seu código fonte, se você o usou com sucesso, adicione uma seção neste artigo.
Neste artigo, você verá como configurar seu dispositivo para se tornar um extensor/repetidor/ponte de Wi-Fi.
Em alguns casos, os drivers sem fio usados no OpenWrt não suportam a ponte da “Camada 2” no modo cliente com um sistema sem fio “upstream” específico. Quando isso ocorre, uma abordagem é rotear o tráfego entre a LAN e o sistema sem fio upstream. O tráfego de transmissão, como DHCP e descoberta de link local como mDNS, geralmente não é roteável.
Quando outras opções não funcionam ou são muito complexas de implementar, o pacote relayd tem um comportamento semelhante a uma ponte para IPv4 (apenas), completo com DHCP e retransmissão de broadcast. Essa configuração pode ser feita através do SSH (terminal remoto) ou da interface web Luci.
Por uma questão de simplicidade, chamarei o dispositivo em que estamos trabalhando como “extensor de Wi-Fi” a partir de agora.
Esta imagem mostra um exemplo de configuração. A interface LAN do dispositivo extensor Wi-Fi DEVE estar em uma sub-rede diferente para que a retransmissão funcione (uma vez que está direcionando o tráfego, espera 2 sub-redes diferentes).
Como as portas ethernet e a rede Wi-Fi do ponto de acesso estão na mesma interface LAN, todos os clientes conectados às portas Ethernet e à rede Wi-Fi do ponto de acesso do dispositivo extensor Wi-Fi serão roteados por relayd e será conectado à sua rede principal.
A sub-rede da interface LAN será usada apenas como uma interface de “gerenciamento”, pois os dispositivos conectados ao repetidor Wi-Fi estarão na sub-rede da rede principal. Você precisará configurar seu PC com um endereço estático na mesma sub-rede da interface LAN (como 192.168.2.10 no nosso exemplo) para conectar-se novamente à interface web Luci ou SSH do repetidor de Wi-Fi.
Pacotes Necessários
Obrigatório
pacote relayd
Opcional
luci-proto-relay - para interface Web LuCI
Configuração com a interface Web LuCI
Interface LAN
Conforme mostrado na imagem acima, a interface LAN deve ser configurada em uma sub-rede diferente da rede Wi-Fi à qual você está se conectando.
Comece configurando e ativando a rede Wi-Fi normal e configure-a como desejar.
Se você estiver criando um repetidor Wi-Fi simples (um dispositivo que estende a mesma cobertura de rede Wi-Fi), é uma boa opção definir essa rede Wi-Fi para ser a mesma do roteador principal, mesmo nome e criptografia, senha e assim por diante. Dessa forma, os dispositivos conectados à sua rede (mais ampla) permanecerão automaticamente conectados à melhor rede Wi-Fi.
Mas você também pode optar por ter um nome/criptografia/senha diferentes, se preferir.
A configuração de uma rede Wi-Fi nesse estágio não é necessária se você desejar uma “ponte Wi-Fi”, um dispositivo projetado para conectar dispositivos somente Ethernet à sua rede Wi-Fi existente.
- Defina protocolo LAN como endereço estático
- Atribua um endereço IP em uma sub-rede diferente (por exemplo, 192.168.2.1)
- Desabilite o DHCP para a interface LAN (pois impede que o relayd funcione).
- (Pode ser necessário em alguns casos) definir Endereço do gateway e Usar servidores DNS personalizados usando o endereço IP do roteador principal (por exemplo, 192.168.1.1)
- Salvar e aplicar.
Defina as configurações de Ethernet ou Wi-Fi do seu PC no IP estático 192.168.2.10 e gateway padrão 192.168.2.1 e, em seguida, conecte novamente ao repetidor wifi (por meio de Ethernet ou wifi). Ao concluir todas as etapas a seguir, lembre-se de redefinir o endereço IP do seu PC para o endereço original (ou DHCP); caso contrário, você não terá acesso à Internet. O repetidor não encaminhará o tráfego da sub-rede 192.168.2.0/24.
Wi-Fi
Agora, configuraremos a rede Wi-Fi do cliente, a configuração necessária para conectar-se a outra rede Wi-Fi.
Depois de se conectar novamente ao extensor Wi-Fi, vá na página de redes sem fio e clique no Botão Scan.
Escolha a rede Wi-Fi à qual deseja se conectar na página e clique em “Join Network”.
Digite a senha do Wi-Fi, deixe o “nome da nova rede” como “wwan” e selecione lan na zona de firewall. Clique em Submit.
Você chegará à página de configurações de Wi-Fi do cliente, definirá outras coisas conforme necessário.
As configurações mais importantes estão na linha Operating Frequency .
Defina o Mode como Legacy se você estiver se conectando a uma rede Wi-Fi g (como no meu exemplo) ou N se estiver se conectando a uma rede Wi-Fi n (e assim por diante).
Defina Largura como mesmo valor que você definiu no Wi-Fi ao qual está se conectando (para evitar gargalos na conexão sem motivo).
Interface do repetidor
Vá para a página Interfaces, agora adicionaremos a interface relayd que se juntará às interfaces lan e wwan.
Clique em Add New Interface.
Escreva um nome para ele (repeater_bridge é o nome que usei no exemplo) e escolha Relay bridge no campo Protocol of the new interface. Clique em Submit.
Na página de configuração desta nova interface, selecione lan e wwan na lista Relay between networks.
Este “endereço IPv4 local” (vazio na captura de tela acima, desculpe, não tenho direitos suficientes para carregar uma nova captura de tela) precisa corresponder ao endereço IP atribuído pela rede Wifi (por exemplo, de 192.168.1.0/24, mas não insira a máscara de rede aqui!) caso contrário, essa ponte não estará acessível a partir dos clientes conectados diretamente ao roteador principal e o relayd-daemon não será iniciado. Faz sentido fixar o IP na tabela de mapeamento MAC-IP dos servidores DHCP ou configurar a interface WWAN do OpenWRT para um IP fixo que não está sendo usado no intervalo DHCP das redes Wifi (usei 192.168.1.2, como meu DHCP servidor serve apenas endereços IP superiores a 192.168.1.100).
Vá para a guia Firewall desta página de configurações da interface e selecione lan. Clique em Save and Apply.
Depois de fazer isso, pode ser necessário reiniciar o extensor de Wi-Fi.
Esse é o resultado final. Observe como a rede do cliente possui uma? em vez de um endereço IP.
Firewall
A parte a seguir da configuração não deve ser necessária (já as opções padrão ou alteradas automaticamente), caso algo não esteja funcionando, verifique isso também.
No menu Network, clique em Firewall. Em Zones, altere o encaminhamento para lan e wwan para Accept
se você estiver fazendo isso com um dispositivo que possui um único rádio, as duas redes Wi-Fi permanecerão no mesmo canal e a largura de banda total será reduzida pela metade, pois o mesmo rádio é usado para duas redes Wi-Fi diferentes.
Configuração com CLI
Antes de fazer qualquer configuração real, a interface Wi-Fi deve estar ativada para poder procurar redes na proximidade:
uci set wireless.@wifi-device[0].disabled="0" uci commit wireless wifi
- Defina a opção desativada como 0 (para ativar a conexão sem fio)
- Salvar arquivo de configuração alterado
- Inicie a conexão sem fio usando o comando wifi
Agora podemos listar redes no intervalo usando iw dev wlan0 scan
, substituindo wlan0 por sua interface sem fio real, se diferente (ifconfig
lista todas as interfaces disponíveis para descobrir como sua wlan é chamada)
iw dev wlan0 scan
exemplo de saída:
# iw dev wlan0 scan BSS c8:d5:fe:c8:61:b0(on wlan0) -- associated TSF: 24324848870 usec (0d, 06:45:24) freq: 2412 beacon interval: 100 TUs capability: ESS (0x0411) signal: -72.00 dBm last seen: 140 ms ago Information elements from Probe Response frame: SSID: Violetta RSN: * Version: 1 * Group cipher: CCMP * Pairwise ciphers: CCMP * Authentication suites: PSK * Capabilities: 1-PTKSA-RC 1-GTKSA-RC (0x0000) BSS f8:35:dd:eb:20:f8(on wlan0) TSF: 24225790925 usec (0d, 06:43:45) freq: 2457 beacon interval: 100 TUs capability: ESS (0x0431) signal: -90.00 dBm last seen: 1450 ms ago Information elements from Probe Response frame: SSID: GOinternet_EB20FB HT capabilities: Capabilities: 0x11ee HT20/HT40 SM Power Save disabled RX HT20 SGI RX HT40 SGI TX STBC RX STBC 1-stream Max AMSDU length: 3839 bytes DSSS/CCK HT40 Maximum RX AMPDU length 65535 bytes (exponent: 0x003) Minimum RX AMPDU time spacing: 4 usec (0x05) HT RX MCS rate indexes supported: 0-15, 32 HT TX MCS rate indexes are undefined HT operation: * primary channel: 10 * secondary channel offset: below * STA channel width: any RSN: * Version: 1 * Group cipher: TKIP * Pairwise ciphers: TKIP CCMP * Authentication suites: PSK * Capabilities: 1-PTKSA-RC 1-GTKSA-RC (0x0000)
No exemplo, existem duas redes, uma Wi-Fi g chamada Violetta e uma Wi-Fi n chamada GOinternet_EB20FB. O dispositivo foi configurado para conectar-se a chamada Violetta.
Esses são os valores de uci que foram adicionados ou alterados pelo procedimento de configuração.
Para SSID, BSSID e criptografia, você deve usar as informações obtidas na verificação Wi-Fi acima.
Para uma explicação de por que esses valores foram alterados, leia o tutorial do luci acima.
network.lan.ipaddr='192.168.2.1' network.repeater_bridge=interface network.repeater_bridge.proto='relay' network.repeater_bridge.network='lan wwan' network.wwan=interface network.wwan.proto='dhcp' firewall.@zone[0].network='lan repeater_bridge wwan' dhcp.lan.ignore='1' wireless.radio0.hwmode='11g' wireless.radio0.country='00' wireless.radio0.channel='1' wireless.radio0.disabled='0' wireless.@wifi-iface[0]=wifi-iface wireless.@wifi-iface[0].device='radio0' wireless.@wifi-iface[0].mode='ap' wireless.@wifi-iface[0].encryption='none' wireless.@wifi-iface[0].ssid='OpenWrt' wireless.@wifi-iface[0].network='lan' wireless.@wifi-iface[1]=wifi-iface wireless.@wifi-iface[1].network='wwan' wireless.@wifi-iface[1].ssid='Violetta' wireless.@wifi-iface[1].encryption='psk2' wireless.@wifi-iface[1].device='radio0' wireless.@wifi-iface[1].mode='sta' wireless.@wifi-iface[1].bssid='C8:D5:FE:C8:61:B0' wireless.@wifi-iface[1].key='myWifiPasswordHere'
Observe que a rede Wi-Fi gerada pelo dispositivo neste exemplo (a chamada OpenWrt) não possui senha nem criptografia.
Isso foi feito porque o foco deste artigo era colocar a ponte de retransmissão em funcionamento.
Você provavelmente desejará configurar a rede Wi-Fi do seu dispositivo de uma maneira mais segura, conforme explicado na página de configuração do Wi-Fi aqui.
Acessando o dispositivo OpenWrt
Com essa configuração, o próprio dispositivo OpenWrt pode ser acessível apenas a partir dos computadores diretamente conectados ao W-LAN AP, e não daqueles conectados apenas ao cliente OpenWrt W-LAN, quando na sub-rede 192.168.1.0. No entanto, ainda é possível acessar o roteador OpenWrt através do endereço 192.168.2.1
, quando você está nessa sub-rede. Uma maneira de estar nas duas sub-redes ao mesmo tempo com um cliente Linux é adicionar uma segunda interface de rede virtual ao /etc/network/interfaces:
iface eth0 inet dhcp gateway 192.168.1.1 auto eth0:1 iface eth0:1 inet static address 192.168.2.102 netmask 255.255.255.0 broadcast 192.168.2.255
[Se alguém puder descrever uma solução sem modificações na configuração da rede do cliente, isso seria apreciado!]
Adicionando suporte ao IPv6
Ative o suporte ao IPv6 na sua caixa da Internet, isso lhe dará um prefixo público do IPv6. Agora, ativaremos o IPv6 em nosso repetidor de Wi-Fi para permitir Configuração automática de endereço sem status (SLAAC) dos seus endereços IPv6 públicos e tráfego IPv6.
1. Vá para Rede/Interfaces e crie uma nova interface. Nomeie WWAN6
, usando o protocolo DHCPv6, para cobrir a interface WWAN. Na configuração comum da nova interface, configure: Solicitar endereço IPv6: desativado. Nas configurações do firewall: verifique se a linha “ponte lan/repetidora ...” está selecionada. Deixe as outras configurações por padrão, especialmente, deixe o campo “Prefixo IPv6 delegado personalizado” em branco. Na página Interfaces/visão geral, verifique se a interface WWAN obtém um endereço IPv6 público.
2. Edite as configurações da interface LAN
, configurações do servidor DHCP/IPv6: verifique/modifique as seguintes configurações: Serviço de anúncio do roteador: modo de retransmissão, serviço DHCPv6: desativado, NDP-Proxy: modo de retransmissão.
3. Abra uma sessão SSH no seu dispositivo OpenWrt. Emita os seguintes comandos:
uci set dhcp.wan.interface=wwan uci set dhcp.wan.ra=relay uci set dhcp.wan.ndp=relay uci set dhcp.wan.master=1 uci commit
Supomos que você criou uma interface wwan
quando ingressou na outra rede Wi-Fi, conforme sugerido anteriormente neste guia; caso contrário, altere a linha dhcp.wan.interface =…
de acordo.
É isso aí. Reinicie ophcpd
(página LuCI System/Startup ou /etc/init.d/odhcpd restart
) e sua rede IPv6 deve começar a se configurar. Os dispositivos habilitados para IPv6 conectados devem obter seus endereços IPv6 públicos, derivados do seu prefixo público IPv6, e o tráfego IPv6 deve passar pelo extensor de Wi-Fi.
Repetidor Wi-Fi com NAT (ou o que fazer quando tudo mais falhar)
Esse método basicamente coloca um segundo roteador Wi-Fi em cascata no primeiro.
É como conectar com um cabo a porta WAN no repetidor Wi-Fi às portas LAN do roteador principal, o repetidor Wi-Fi cria uma nova rede para si e os dispositivos conectados a ele, que podem acessar a Internet e alcançar dispositivos na rede LAN do roteador principal. Mas, neste caso, estamos fazendo isso com redes sem fio.
pré-requisitos: - roteador com duas interfaces iniciais (LAN, WAN)
Configure com o WebUI:
- Vá na página Rede → Interfaces, clique em editar interface da LAN,
- Defina LAN como endereço IPv4 estático como 192.168.x.1 (com x diferente da rede à qual você se conectará via Wi-Fi)
- Vá em Rede → Wi-Fi, clique em scan e escolha o link “rede” e clique em “Ingressar na rede”.
- Digite a senha do Wi-Fi, deixe o “nome da nova rede” como “WWAN” e selecione a zona de firewall WWAN (ou WAN). Clique em Salvar,
- Vá na página Rede → Interfaces, clique em editar interface do wwan,
- Vá para a guia Firewall. Clique em Salvar e aplicar.
- Vá em Rede → Firewall, clique em editar na zona da rede e marque WAN e WWAN em “redes cobertas”, clique em salvar e aplicar,
Agora você limitou corretamente a WWAN com a WAN e, consequentemente, a WWAN com a LAN.
Problemas conhecidos
Aqui está uma lista de alguns problemas relatados recentemente:
- Problema no DHCP causado pelo ponto de acesso. Fórum OWrt
- Velocidades de transferência upstream extremamente baixas com alguns dispositivos MT762x.Fórum OWrt Relatório de erro FS#2816