Instalando openwrt no raspberry pi zero
Resumo
Nessa publicação decidi abordar um assunto diferente, estarei mostrando o passo a passo para transformar um raspberrypi zero em um roteador completamente funcional.
Oque é o openwrt?
Openwrt é um sistema operacional opensource, sua função é substituir firmwares padrões de roteadores domésticos com ferramentas avançadas.
Raspberrypi zero W
O raspberrypi que estou usando e o modelo zero W
Configurações:
- processador 1ghz single core
- memória ram: 512mb
- wifi 2.4ghz
- 1 porta usb 2.0

Instalação
Baixe a imagem correspondente no site do openwrt.
Baixe a versão "Firmware OpenWrt Install URL" para fazer a primeira instalação.
Grave a imagem no cartão de memória usei o balaetcher.

Após isso conectei ao raspberrypi fiz o primeiro boot
Configurações
Vamos fazer algumas configurações padrões, a principal é habilitar o wifi para possa-mos acessar sua interface gráfica.
Você pode conectar o raspberrypi em um monitor e executar os seguintes comandos.
vim /etc/config/wireless
Pressione "I" para habilitar edição.
Após isso basta editar a seguinte linha.
config wifi-device 'radio0'
option type 'mac80211'
option path 'platform/soc/20300000.mmcnr/mmc_host/mmc1/mmc1:0001/mmc1:0001:1'
option channel '1'
option band '2g'
option htmode 'HT20'
- option disabled '1'
+ option disabled '0'
config wifi-iface 'default_radio0'
option device 'radio0'
option network 'lan'
option mode 'ap'
option ssid 'OpenWrt'
option encryption 'none'
Não copie os sinais de "+" e "-"!
Pressione CTRL + ":".
Em seguida digitar "wq".
Pressione ENTER.
Após isso vamos reiniciar o dispositivo.
Conectando a rede wifi do raspberrypi
Após reiniciar as interfaces deve aparecer uma nova rede wifi aberta chamada "openwrt".
Basta nos conectamos a ela.

Após isso vamos acessar a interface web do openwrt para configura-lo.

Obs. O adaptador wifi do raspberrypi zero não permite usa-lo como repetidor wifi, ele atua apenas como receptor ou transmissor wifi, para usa-lo como repetidor é necessário usar um adaptador usb compatível.
Expandindo partão do cartão de memória
Vamos seguir uma série de passos para expandir o disco, assim aproveitando 100% do espaço disponível no cartão de memória.
Para isso basta seguir o passo a passo que o próprio openwrt recomenda.
Conectando o raspberrypi como client
Para executa-mos algumas operações e intalações é necessário que raspberry pi esteja conectado a rede, para isso vamos configura-lo como client.
Primeiro vamos habilitar o acesso externo, para isso vamos na aba "network->firewall".
Em seguida vamos em "trafic rules".

No fim da página iremos clicar em "Add".
Configura a nova regra da seguinte forma.

Em seguida clique em "Save & Apply".

Vamos nos conectar a rede.
Para isso basta acessar "network->wireless".

Em seguida na clique em "scan" na interface de rede.

Selecione sua rede wifi e preencha o campo de senha.

Clique em "Submit".

Em seguida "Save & Apply".

Após isso devemos desabilitar a interface de transmissor, infelizmente o raspberrypi zero não consegue transmitir wifi enquanto atua como client.
Basta clicar em disable, em segudia você deve perder a conexão com a interface web.
Vamos encontrar o endereço ip dele na rede, para isso podemos usar ferramentas como nmap e encontrar dispositivos com a porta 80 aberta.
Ex:
nmap 192.168.0.1/24 -p 80 --open
Caso o seu endereço ip local seja 192.168.1.1 será necessário aletar o endereço ip do openwrt antes de efetuar a conexão para evitar possíveis conflitos.
Lembre-se de verificar qual é a faixa do endereço ip local de sua rede.
Basta acessar agora a interface web através do endereço ip "externo".
Utilizando adaptador wifi para usa-lo como repeditor
Para usar o raspberrypi zero como repetidor wifi é necessário um hardware externo compatível, no meu caso estou usando o TL-WN722N v1 da tp-link.

Para que o openwrt reconheça esse dispositivo basta instalar o driver, no meu caso é o kmod-ath9k-htc e kmod-rt2800-usb.
Vamos na aba "system->software" do painel web.

Em seguida vamos atualizar a lista de pacotes disponíveis.


Vamos em "filter" e iremos digitar o nome do nosso drive.

Em seguida só instalar


Reinicie o dispositivo após as instalações.
Após a instalação basta conectar o adaptador de rede wifi e usa-lo como transmissor wifi.
Você pode scanear o dispostivo e usa-lo como client, isso deve dar mais desempenho de retransmissão wifi.

Na função repetidor podemos aplicar configurações específicas, criar uma nova sub-rede e rotear um novo tráfego, assim como podemos criar várias outras redes wifi na mesma interface.
Para algumas aplicações também é possível usar para capturar o tráfego de rede.
Também podemos usar como uma espécie de firewall, para se conectar em redes wifi públicas, podemos configurar uma VPN para criptografar todo o tráfego que passar por ele.
Caso tenha ficado alguma dúvida fique a vontade de postar o seu comentário logo a baixo da publicação.