Como configurar VLANs em switches gerenciáveis para home lab

1. Fundamentos de VLANs para home lab

VLANs (Virtual Local Area Networks) são segmentações lógicas de uma rede física que permitem isolar tráfego entre diferentes grupos de dispositivos, mesmo que estejam conectados ao mesmo switch. Em um home lab, isso é essencial para separar dispositivos IoT inseguros de servidores críticos, criar redes de convidados isoladas ou segmentar ambientes de desenvolvimento.

A diferença fundamental entre switches gerenciáveis e não gerenciáveis está no controle: switches não gerenciáveis operam como hubs inteligentes, encaminhando todo o tráfego indiscriminadamente. Já os switches gerenciáveis permitem configurar VLANs, priorizar tráfego e monitorar a rede.

Os conceitos-chave incluem:
- VLAN ID: número único (1-4094) que identifica a VLAN
- Access port: porta que pertence a uma única VLAN, usada para dispositivos finais
- Trunk port: porta que carrega múltiplas VLANs usando tagging 802.1Q
- Tagging: marcação dos quadros Ethernet com o ID da VLAN para identificação

2. Planejamento da topologia de rede com VLANs

Antes de configurar, é crucial mapear os segmentos lógicos. Um exemplo típico para home lab:

VLAN 1   - Native/Management - 192.168.1.0/24
VLAN 10  - IoT               - 192.168.10.0/24
VLAN 20  - Servidores        - 192.168.20.0/24
VLAN 30  - Convidados        - 192.168.30.0/24
VLAN 40  - Lab/Dev           - 192.168.40.0/24

Para escolher o switch gerenciável, considere opções acessíveis como:
- Cisco SG250-08 (8 portas, ~R$300)
- TP-Link TL-SG108E (8 portas, ~R$150)
- MikroTik CSS326-24G-2S+RM (24 portas, ~R$600)

3. Acesso inicial e configuração básica do switch

Após conectar o switch à rede e ao computador via cabo Ethernet, acesse-o:

Via console (Cisco):

Conecte o cabo serial/console
Abra PuTTY ou Terminal: 9600 baud, 8 bits, no parity, 1 stop bit
Pressione Enter para ativar o prompt

Configuração inicial (exemplo Cisco):

Switch> enable
Switch# configure terminal
Switch(config)# hostname Lab-Switch
Lab-Switch(config)# enable secret minha-senha
Lab-Switch(config)# line console 0
Lab-Switch(config-line)# password console-senha
Lab-Switch(config-line)# login
Lab-Switch(config-line)# exit

Configuração de IP de gerenciamento:

Lab-Switch(config)# interface vlan 1
Lab-Switch(config-if)# ip address 192.168.1.100 255.255.255.0
Lab-Switch(config-if)# no shutdown
Lab-Switch(config-if)# exit
Lab-Switch(config)# ip default-gateway 192.168.1.1

Atualização de firmware: Acesse o menu web do switch (http://192.168.1.100) e procure por "Firmware Upgrade" em Administration ou Maintenance.

4. Criação e configuração de VLANs no switch

Criação das VLANs:

Lab-Switch(config)# vlan 10
Lab-Switch(config-vlan)# name IoT
Lab-Switch(config-vlan)# exit
Lab-Switch(config)# vlan 20
Lab-Switch(config-vlan)# name Servidores
Lab-Switch(config-vlan)# exit
Lab-Switch(config)# vlan 30
Lab-Switch(config-vlan)# name Convidados
Lab-Switch(config-vlan)# exit
Lab-Switch(config)# vlan 40
Lab-Switch(config-vlan)# name Lab
Lab-Switch(config-vlan)# exit

Configuração de access ports (portas para dispositivos finais):

! Porta 1 para IoT
Lab-Switch(config)# interface gigabitEthernet 0/1
Lab-Switch(config-if)# switchport mode access
Lab-Switch(config-if)# switchport access vlan 10
Lab-Switch(config-if)# exit

! Porta 2 para servidor
Lab-Switch(config)# interface gigabitEthernet 0/2
Lab-Switch(config-if)# switchport mode access
Lab-Switch(config-if)# switchport access vlan 20
Lab-Switch(config-if)# exit

Configuração de trunk port (para conectar ao roteador):

! Porta 24 como trunk
Lab-Switch(config)# interface gigabitEthernet 0/24
Lab-Switch(config-if)# switchport mode trunk
Lab-Switch(config-if)# switchport trunk allowed vlan 10,20,30,40
Lab-Switch(config-if)# exit

Verificação das configurações:

Lab-Switch# show vlan brief
Lab-Switch# show interfaces trunk
Lab-Switch# show running-config

5. Integração com roteador/firewall (ex.: pfSense)

No pfSense, crie interfaces virtuais para cada VLAN:

Acesse o pfSense webGUI → Interfaces → Assignments → VLANs:

Add VLAN:
  Parent Interface: em0 (porta física conectada ao switch)
  VLAN Tag: 10
  Description: IoT

Repita para VLANs 20, 30 e 40

Atribua as interfaces VLAN:

Interfaces → Assignments:
  Add new interface: VLAN 10 (opt1)
  Add new interface: VLAN 20 (opt2)
  Add new interface: VLAN 30 (opt3)
  Add new interface: VLAN 40 (opt4)

Configure cada interface com sub-rede e regras de firewall:

Interfaces → OPT1 (VLAN 10):
  Enable: checked
  IPv4 Configuration Type: Static IPv4
  IPv4 Address: 192.168.10.1/24

Firewall → Rules → OPT1:
  Add rule: Allow all traffic to any (ajuste conforme necessário)

6. Testes e validação da segmentação

Teste de conectividade dentro da mesma VLAN:

Conecte dois dispositivos na VLAN 10 (portas 1 e 3)
De um dispositivo: ping 192.168.10.2
Resposta esperada: sucesso

Teste de isolamento entre VLANs:

De um dispositivo na VLAN 10 (192.168.10.2):
  ping 192.168.20.2 (VLAN 20)
Resposta esperada: falha (sem regra de firewall permitindo)

Comandos de depuração no switch:

Lab-Switch# show vlan id 10
Lab-Switch# show mac address-table vlan 10
Lab-Switch# show interfaces gigabitEthernet 0/1 switchport
Lab-Switch# debug spanning-tree events

7. Boas práticas e manutenção no home lab

Documentação: Mantenha um arquivo com:

Topologia física e lógica
Mapeamento porta-VLAN
Sub-redes e gateways
Senhas de acesso

Backup da configuração:

! Cisco
Lab-Switch# copy running-config tftp://192.168.1.200/config-backup.txt

! Ou via webGUI: Maintenance → Configuration → Backup

Expansão futura: Para adicionar switches adicionais, configure trunk ports entre eles e repita a criação das VLANs em cada switch. Use protocolos como VTP (Cisco) ou GVRP para sincronizar automaticamente as VLANs entre switches.

Segurança adicional:

! Desabilitar portas não utilizadas
Lab-Switch(config)# interface range gigabitEthernet 0/5-23
Lab-Switch(config-if-range)# shutdown

! Configurar porta segura (port security)
Lab-Switch(config)# interface gigabitEthernet 0/1
Lab-Switch(config-if)# switchport port-security
Lab-Switch(config-if)# switchport port-security maximum 2
Lab-Switch(config-if)# switchport port-security violation restrict

Referências