Módulo 1 — Fundamentos de Rede
VLANs e Bridges
Lição 2 de 3
🎬
Vídeo desta lição ainda não foi gravado.
O conteúdo em texto abaixo já está completo.
Módulo 1, Lição 2 — VLANs e Bridges
Tempo estimado: 6h · Pré-requisito: Lição 1
1. Por que essa lição existe
Na Lição 1 você aprendeu que uma "sub-rede" é um bairro lógico dentro de uma rede. Mas ficou uma pergunta solta: como é que eu crio vários bairros diferentes sem precisar de um cabo de rede físico separado pra cada um?
É exatamente isso que VLAN resolve. E a peça que faz essas redes conversarem dentro de uma única máquina (seu PC, o futuro Proxmox) chama-se bridge. Essas duas coisas juntas são o que vai permitir o pfSense ter, por exemplo, uma rede pros seus servidores e outra pros dispositivos da casa, tudo saindo do mesmo hardware.
E o melhor: você já tem exemplos reais de bridge rodando na sua máquina agora mesmo, criadas pelo Docker sem você nunca ter mexido nelas manualmente. Vamos usar elas.
2. Bridge — a analogia da régua de tomadas (extensão)
Imagina uma régua de tomadas (extensão elétrica). Ela tem várias entradas, mas todas puxam energia do mesmo lugar — quando você liga uma régua na outra, tudo vira "a mesma rede elétrica", ainda que fisicamente sejam objetos separados.
Uma bridge (ponte, em rede) é exatamente isso, só que pra pacotes de dados em vez de eletricidade: um "aparelho virtual" dentro do sistema operacional que junta várias interfaces de rede como se fossem uma única rede. Tudo que está "plugado" na mesma bridge se enxerga diretamente, como se estivesse fisicamente no mesmo switch.
2.1 Bridges reais, agora
Rode isso na sua máquina:
ip -brief addr show
Você vai ver várias interfaces que não são placas físicas — são bridges virtuais, a maioria criada pelo Docker. Exemplo real:
br0 DOWN
virbr0 DOWN 192.168.122.1/24
br-05a31a9abd0a UP 172.22.0.1/16
docker0 DOWN 172.17.0.1/16
Cada br-xxxxxxxxxxxx foi criada automaticamente quando alguém rodou docker compose up num projeto diferente. Cada projeto Docker Compose ganha a sua própria bridge, isolada das outras — é por isso que o banco de um projeto não consegue, sem configuração extra, conversar com o banco de outro projeto, mesmo rodando na mesma máquina física. Eles estão em "bairros" (bridges) diferentes.
Confirme isso na prática:
docker network ls
Você vai ver uma linha pra cada bridge — e o nome já entrega a que projeto ela pertence.
Agora rode isto pra ver quem está "plugado" em qual bridge:
docker network inspect nome-da-rede
Na saída, procure a seção "Containers" — você vai ver cada container com um IP dentro da faixa daquela bridge. Todos os containers que aparecem ali se enxergam entre si diretamente, porque estão na mesma bridge — é assim que um container consegue falar com outro usando só o nome (o Docker resolve isso internamente).
💡 Dica de professor: isso explica um comportamento que talvez já tenha te confundido: por que
docker psmostra várias portas como "só interna" (tipo5432/tcpsem nenhum0.0.0.0:XXXX->na frente)? É porque o container está acessível dentro da bridge dele, mas ninguém de fora da máquina (nem outros containers de outra bridge) consegue bater nele diretamente — só quem está no mesmo "bairro" virtual.
3. VLAN — a analogia do prédio com paredes divisórias
Bridge resolve "juntar várias coisas numa rede só, dentro de uma máquina". VLAN resolve o problema oposto: dividir uma única rede física (um único cabo, um único switch) em várias redes lógicas separadas.
Imagina um prédio comercial com um andar inteiro vazio. Sem paredes, é um espaço só — som e movimento de uma ponta ecoam até a outra. Agora imagina que você constrói paredes de gesso dividindo esse andar em 4 salas separadas. Fisicamente ainda é o mesmo andar, a mesma estrutura elétrica, o mesmo prédio — mas agora são 4 espaços logicamente isolados, cada um com sua própria porta.
VLAN (Virtual LAN) é isso: uma forma de pegar um switch físico (ou uma única placa de rede) e dizer "os pacotes marcados com a etiqueta 10 formam uma rede; os marcados com etiqueta 20 formam outra rede completamente separada — mesmo passando pelo mesmo fio". Essa "etiqueta" chama-se VLAN tag, um número de 1 a 4094.
3.1 Por que isso importa pro seu pfSense
No plano de montar seu servidor local, você vai ter, no mínimo, duas redes lógicas diferentes saindo da mesma máquina Proxmox:
- Uma rede "WAN" (o que vem do modem, internet crua, não confiável)
- Uma rede "LAN" (dispositivos internos, confiáveis)
Se você tiver 2 placas de rede físicas, cada uma pode servir uma rede — sem precisar de VLAN nenhuma. Mas o dia que você quiser, por exemplo, separar a rede de convidados/visitantes da rede interna de servidores, sem comprar uma 3ª placa física, é aí que entra VLAN: você cria duas VLANs diferentes saindo da mesma placa de LAN, cada uma isolada da outra, exatamente como as paredes de gesso do andar comercial.
3.2 VLAN vs Bridge — não confundir
Essa é a pegadinha mais comum de quem está aprendendo:
| Bridge | VLAN | |
|---|---|---|
| O que faz | Junta várias interfaces numa rede só | Separa uma rede física em várias redes lógicas |
| Analogia | Régua de tomadas (uma vira várias) | Paredes de gesso (uma sala vira várias) |
| Onde você já viu | docker0, br-xxxxx numa máquina com Docker | Ainda não configurada — vai aparecer no Proxmox/pfSense |
| Nível do modelo OSI | Camada 2 (funciona com endereços de rede virtuais) | Camada 2 (usa uma etiqueta de 12 bits no cabeçalho do pacote) |
Na prática, no Proxmox, as duas trabalham juntas: você cria uma bridge (vmbr1, por exemplo) e pode configurar essa bridge pra entender VLANs, deixando uma única placa física servir várias redes lógicas separadas, cada VM/LXC "plugada" na VLAN certa.
4. Exercícios práticos
Exercício 1 — Liste todas as bridges Docker da sua máquina e identifique a qual projeto cada uma pertence:
docker network ls
Pra cada rede que não seja bridge, host ou none (essas três são padrão do Docker, não de projeto nenhum), rode:
docker network inspect <nome-da-rede> | grep -A2 '"Containers"'
Exercício 2 — Escolha dois containers que você sabe que estão em bridges diferentes e tente, de dentro de um, alcançar o outro:
docker exec -it CONTAINER_A ping -c 2 CONTAINER_B
Deve falhar (não resolve o nome / sem rota) — essa é a prova de que bridges diferentes = redes isoladas.
Exercício 3 — Agora teste dois containers na mesma bridge:
docker exec -it CONTAINER_C ping -c 2 CONTAINER_D
Deve funcionar — mesma bridge, mesmo "bairro" virtual.
Exercício 4 (leitura, sem executar ainda) — Pesquise a diferença entre VLAN access port e trunk port num switch. Você vai precisar exatamente desses dois conceitos quando for configurar o Proxmox pra falar com VLANs de verdade.
Responda o questionário abaixo pra fechar a lição.
Teste de fixação
Responda pra fechar a lição — suas respostas ficam registradas na sua conta.
Crie uma conta grátis pra responder o teste e registrar seu progresso.
Criar conta grátis