29 pontos por GN⁺ 2026-03-31 | 1 comentários | Compartilhar no WhatsApp
  • Um passo a passo para montar um roteador completo usando um computador comum ou mini PC
  • Configuração de rede com fio e sem fio em Debian ou Alpine Linux com pacotes mínimos como hostapd, dnsmasq e bridge-utils
  • Com apenas 2 interfaces Ethernet, é possível transformar desktop, notebook, SBC e outros equipamentos em roteadores
  • Implementa recursos no nível de roteadores comerciais com configuração de firewall (nftables), serviços DHCP/DNS e encaminhamento de IP
  • É possível construir uma infraestrutura de rede estável e flexível apenas com hardware descartado e software de código aberto

Como transformar qualquer dispositivo em um roteador

  • Após a proibição da importação de roteadores de consumo pelo governo dos EUA, o texto apresenta como montar seu próprio roteador aproveitando hardware existente
  • Com base na experiência de operar por anos um roteador estável com um mini PC baseado em Linux, o autor organiza passo a passo a configuração e o processo de instalação necessários
  • Como um roteador é, em essência, estruturalmente igual a um computador comum, ele pode ser implementado com desktops, notebooks, SBCs e outros equipamentos
  • A configuração usa um ambiente Debian ou Alpine Linux com o mínimo de pacotes, como hostapd, dnsmasq e bridge-utils
  • O objetivo não é reagir a políticas públicas, mas reaproveitar hardware existente e melhorar a compreensão sobre redes

Escolha do hardware

  • Um mini PC com refrigeração passiva é o ideal, mas qualquer equipamento serve desde que tenha 2 interfaces Ethernet
    • Dá para complementar com dongles USB-Ethernet; a confiabilidade é um pouco menor, mas funciona bem o suficiente
  • Como exemplo, um equipamento com Celeron 3205U dual-core (1.5GHz) consegue processar 820~850Mbps com fio e cerca de 300Mbps no wireless
  • No passado, o autor montou soluções com peças descartadas como ThinkPad T60, ponte ExpressCard-PCIe, switch Cisco 2960 e roteador D-Link (apenas como AP)
    • A aparência era improvisada, mas funcionava como um roteador completo

Configuração de rede

  • Configuração das interfaces
    • eth0: WAN
    • eth1: LAN (com fio)
    • wlan0: LAN (sem fio)
  • A LAN com fio e a LAN sem fio são unidas por uma bridge para operar na mesma rede
  • Se forem necessárias portas LAN extras, é possível adicionar dongles USB-Ethernet e conectá-los à bridge
  • O sistema operacional usado é Debian Linux, e os componentes essenciais são:
    • hostapd: cria a rede Wi‑Fi
    • dnsmasq: fornece serviços de DNS e DHCP
    • bridge-utils: faz o bridging entre portas

Instalação e configuração inicial

  • Configurações de BIOS/UEFI
    • Desativar boot por rede PXE
    • Desativar gerenciamento de energia de USB/PCI
    • Ativar a opção “inicialização automática após restauração de energia AC”
    • Usar um dongle HDMI dummy para evitar problemas de boot quando não houver monitor conectado
  • Em alguns hardwares, é necessário ativar o repositório non-free-firmware
  • Instalação de firmware por chipset sem fio
    • Intel: firmware-iwlwifi
    • Realtek: firmware-ath9k-htc
    • Atheros antigo: firmware-atheros

Instalação dos pacotes essenciais

  • Instale os utilitários principais com o seguinte comando
    sudo apt install bridge-utils hostapd dnsmasq
    
  • O sistema completo fica com algo em torno de 250 pacotes

Fixar os nomes das interfaces de rede

  • O Linux moderno usa nomes no formato enp0s31f6, mas é possível fixá-los no formato tradicional ethX
  • Crie o arquivo /etc/systemd/network/10-persistent-ethX.link
    [Match]
    MACAddress=AA:BB:CC:DD:00:11
    [Link]
    Name=ethX
    

Criação da rede sem fio

  • Configure um dongle USB Wi‑Fi como ponto de acesso (AP)
  • Exemplo de /etc/hostapd/hostapd.conf
    interface=wlan0
    bridge=br0
    hw_mode=g
    channel=11
    ssid=My Cool and Creative Wi-Fi Name
    wpa_passphrase=mysecurepassword
    
  • Ative o serviço hostapd
    sudo systemctl unmask hostapd
    sudo systemctl enable --now hostapd
    

Configuração das interfaces

  • Configuração de /etc/network/interfaces
    allow-hotplug eth0
    allow-hotplug eth1
    auto wlan0
    auto br0
    iface eth0 inet dhcp
    iface br0 inet static
    bridge_ports eth1 wlan0
    address 192.168.1.1/24
    
  • Após reiniciar, verifique o estado da bridge com o comando brctl show br0

Ativar encaminhamento de IP

  • Adicione ao arquivo /etc/sysctl.d/10-forward.conf
    net.ipv4.ip_forward=1
    
  • Aplicar
    sudo systemctl restart systemd-sysctl.service
    

Configuração de firewall e NAT

  • Configuração baseada em nftables (/etc/nftables.conf)
    • Bloqueia tráfego externo
    • Permite DNS, DHCP e SSH internos
    • Realiza NAT
  • Ativar o serviço
    sudo systemctl enable nftables.service
    

Configuração de DHCP e DNS

  • Uso do dnsmasq (/etc/dnsmasq.conf)
    interface=br0
    dhcp-range=192.168.1.50,192.168.1.250,255.255.255.0,6h
    dhcp-option=option:router,192.168.1.1
    dhcp-option=option:dns-server,192.168.1.1
    cache-size=10000
    
  • Ativar o serviço
    sudo systemctl enable dnsmasq
    

Gerenciamento da porta serial

  • Se o dispositivo tiver uma porta de console serial, ele pode ser administrado sem monitor
  • Edite /etc/default/grub
    GRUB_CMDLINE_LINUX='console=tty0 console=ttyS0,115200n8'
    GRUB_TERMINAL=serial
    GRUB_SERIAL_COMMAND="serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1"
    
  • Execute systemctl enable [email protected] e depois sudo update-grub

Verificação de funcionamento

  • Após reiniciar, verifique o estado do firewall com sudo nft list ruleset
  • Valide a configuração com sudo nft -c -f /etc/nftables.conf
  • É possível recarregar regras sem interrupção com sudo systemctl reload nftables.service
  • Verificação de logs do DHCP
    sudo less /var/lib/misc/dnsmasq.leases
    sudo journalctl -eu dnsmasq.service
    

Recursos adicionais

  • É possível expandir com registro de logs e análise de tráfego, segmentação por VLAN, suporte a IPv6, tunelamento VPN e roteamento dinâmico (BGP, IGP)
  • Também é possível adicionar monitoramento com Prometheus, port forwarding para DMZ e recursos de detecção e bloqueio de intrusão
  • Ainda assim, é recomendável evitar instalar software demais no próprio roteador e separar o tráfego com DMZ ou VLAN quando possível

Conclusão

  • Dá para construir um roteador completo apenas com software livre e hardware descartado
  • No fim das contas, um roteador é apenas um computador comum e qualquer pessoa pode montar o seu
  • Equipamentos sem uso podem ser reaproveitados para criar uma infraestrutura de rede estável e flexível

1 comentários

 
GN⁺ 2026-03-31
Comentários do Hacker News
  • Excelente artigo. Quero apresentar o script create_ap, que mantenho há muito tempo
    Dá para ver no repositório no GitHub.
    É um script shell que transforma qualquer computador Linux em um roteador Wi‑Fi com uma única linha de comando.
    Basicamente, ele coloca a placa Wi‑Fi em modo AP e configura automaticamente WPA2/3, filtragem MAC e até servidor DHCP/DNS.
    Quase não tem dependências e também não precisa do NetworkManager.
    Já usei como gateway de internet de casa com um mini PC Atom antigo, e também uso com frequência para criar uma rede de teste para engenharia reversa de dispositivos IoT
    Dá para ver um caso relacionado neste artigo

    • Fico curioso se alguém teria recomendação de chipset Wi‑Fi com bom desempenho em modo AP
  • Muitos comentários dizem “é só usar X”, mas o ponto principal deste artigo é mostrar a configuração mínima de roteamento e como ela é simples
    Se você já usou NAT em Docker ou VM, então já fez basicamente a mesma coisa.
    O recurso de hotspot Wi‑Fi do Android também usa, no fim das contas, a mesma funcionalidade do kernel Linux.
    Esta mensagem provavelmente também está sendo entregue passando por vários roteadores de software

    • Para mim, também é mais interessante fazer do zero. Só assim dá para decidir se vale implementar você mesmo ou usar uma solução existente
      Acho que essa abordagem é um bom princípio de design de software
    • Na verdade, qualquer computador pode virar um roteador se você quiser
      O Internet Connection Sharing do Windows também era, no fim, uma caixinha para ativar NAT
      Acho que o que confunde as pessoas é juntar firewall, switch, servidor de arquivos etc. em um único equipamento e chamar isso de “roteador”
  • Este artigo me trouxe lembranças. Meu primeiro objetivo ao usar Linux foi montar um roteador com um computador sobrando
    Coloquei duas NICs ISA 3Com em um Pentium de 100MHz e configurei seguindo o HOWTO de IP-Masquerading.
    Depois evoluí a partir do livro Linux Firewalls, de Robert Ziegler, e até coloquei filtro de spam e cache Squid, aproveitando muito bem hardware que iria para o lixo

    • Eu segui um caminho parecido. Compartilhei a linha ISDN de um escritório de jornal com um único computador, e isso acabou levando à criação do site
      Mesmo passados 27 anos, ainda me chamam quando alguém quer saber “como resolver barato com Linux, elástico e clipes de papel
    • Uma vez usei um Pentium MMX 200MHz para montar uma conexão Wi‑Fi temporária com bridge OpenBSD quando o DSL na casa dos meus pais caiu. Surpreendentemente, foi rápido o bastante
    • Se você tiver um switch com suporte a VLAN, dá para rotear com uma única NIC
    • No meu caso foi o contrário: aprendi Linux primeiro gravando firmware de roteador com OpenWRT
    • Agora é um livro com 25 anos, então está velho demais. Alguém deveria escrever um novo livro sobre roteadores Linux
      Referência: Linux Routers - A Primer for Network Administrators
  • Uso OPNsense/pfSense há muito tempo e recomendo fortemente
    Os recursos são ótimos: atualizações automáticas, backup, túneis WireGuard, filtragem de pacotes com Suricata etc.
    Quando administro a rede no fim de semana, é conveniente poder configurar tudo pela interface web em vez do terminal
    Site oficial

    • Concordo, mas muitas vezes a GUI entra em conflito com os conceitos do Linux. Usei um roteador Barracuda e acabei resolvendo o problema digitando comandos direto por SSH
      pfSense, OpenWRT, Barracuda, OEM da Verizon etc. têm funções parecidas, mas cada um expressa isso de um jeito diferente
    • Eu já não quero mais administrar rede no fim de semana. Seria ótimo ter uma distribuição de roteador em formato de appliance completo, como o TrueNAS
    • Abandonei o OPNsense porque ele limitava as configurações que eu queria fazer.
      Não gosto de produtos com postura de “o dispositivo sabe mais do que eu”. A falta de flexibilidade foi decisiva
    • Aprender com Linux é ótimo, mas roteador é algo em que errar complica
      Eu roteava até 300Mb/s com um mini PC Atom, mas quando passei para internet gigabit, migrei para OPNsense em VM
      É divertido fazer passthrough individual das portas para a VM com uma placa Intel de 4 portas
  • Eu uso um equipamento de roteador N100 + 10Gbit, mas acho que a latência fica mais alta do que em roteadores com hardware dedicado
    Chipsets dedicados processam pacotes sem intervenção da CPU, então são muito mais eficientes.
    Fico curioso se alguém já mediu essa diferença de fato. A maioria só faz teste de largura de banda

    • Sim, uma bridge Linux não pode ser tão rápida quanto um ASIC de switch dedicado
      O OpenWRT suporta algumas APIs de switch em hardware, mas quase não existe isso em forma de placa PCIe
      O CCR2004-1G-2XS-PCIe da Mikrotik é um exemplo interessante.
      É basicamente uma placa de roteador completa rodando RouterOS, conectada via PCIe.
      Se você conseguir aproveitar as portas de 25Gbps, vale a pena, mas se não, não há tanta diferença em relação ao RB5009
  • Se você tiver um switch gerenciável, dá para montar um roteador com uma única NIC
    Basta configurar como porta trunk 802.1q, e o switch passa a funcionar como expansor de interfaces
    Minha casa usa justamente essa configuração de “router-on-a-stick
    Com um switch PoE e Aruba IAP usado, dá para montar um Wi‑Fi muito melhor do que o de equipamentos de consumo
    Antigamente eu usava um Thinkpad como roteador, mas agora troquei por um Dell Optiplex e o uso como roteador de homelab que também roda VMs
    Alpine Linux é excelente para esse tipo de uso

    • Fico curioso até onde dá para melhorar a latência do mesh Wi‑Fi. Quanto isso difere em relação a roteadores de consumo?
    • O AP fornecido pelo meu ISP também suporta Wi‑Fi gigabit. Só que ele força uma configuração de DNS para fins de vigilância, então quero substituir
      É uma pena que um AP com desempenho equivalente custe algo em torno de 180 dólares
  • Fico curioso sobre a justificativa de política pública para proibir a importação de roteadores
    Hoje a maior parte do tráfego já é criptografada com TLS, então por que isso ainda seria considerado um risco?
    Será por causa de botnets, DDoS, senhas padrão fracas ou invasão da rede interna?

    • No setor de segurança, isso é chamado de APT (Advanced Persistent Threat).
      Casos como Volt Typhoon e Flax Typhoon continuam ativos.
      Proibir equipamento estrangeiro não resolve tudo, mas segurança não é um produto, e sim um processo, então controlar a cadeia de suprimentos é necessário
    • Todos os motivos que você citou estão corretos. E tem mais a capacidade de desligar remotamente os equipamentos
      Eu trabalhava com Bot Mitigation na Amazon e via tráfego vindo de dispositivos de consumo do mundo todo.
      Mesmo com menos da metade dos dispositivos ativos, o volume de tráfego já era impossível de bloquear
    • Na verdade, se a FCC estivesse realmente preocupada com segurança, teria exigido senhas únicas por dispositivo ou responsabilização de fabricantes sem patches.
      Seja Huawei ou Netgear, a origem do DDoS é a mesma
    • São vários os motivos
      Acesso a DNS/metadados de tráfego, ataques à rede interna, DDoS, interrupção da internet etc.
      No fim, isso pode ser abusado como ferramenta de vigilância e controle
    • Tecnicamente, sim. Mesmo com TLS, só os metadados já permitem vigilância suficiente.
      A possibilidade de equipamento estrangeiro ter backdoor é uma hipótese realista
  • Dizer “é só usar OPNsense” é um bom conselho em ambiente de produção, mas é péssimo para aprendizado
    O valor deste artigo está em mostrar como o roteamento funciona com princípios simples

    • Equipamentos SOHO não fazem roteamento no sentido real da palavra
  • Um ponto que o artigo não menciona: ao usar como roteador, dá para reduzir overhead com configurações como estas em /etc/sysctl.d/10_router.conf

    net.ipv4.ip_early_demux = 0  
    net.ipv4.tcp_early_demux = 0  
    net.ipv4.udp_early_demux = 0
    

    Isso ajuda em ajustes para reduzir latência e jitter em VoIP ou jogos.
    Também ajusto gro_flush_timeout, sch_cake, napi_defer_hard_irqs etc.
    O objetivo é fazer a família perceber uma melhor experiência em jogos

    • Eu também desativo early_demux, mas nunca testei a diferença na prática.
      No meu caso, só o fq_codel já é estável o bastante em ambiente de 10Gbps
  • Eu, na verdade, tenho mais curiosidade sobre substituir o modem óptico
    O que recebi da AT&T fica lento com frequência e também me parece suspeito do ponto de vista de segurança.
    Queria saber se existe algum guia sobre como trocar por um modem óptico próprio