Estou tentando configurar uma conexão funcional entre minha rede local e a Internet. Primeiro configurei uma bridge (br0, tem um endereço IP onde as outras interfaces não tem) entre eth0 (LAN) e eth1 (internet), e criei uma regra nat no iptables para mascarar o ip de origem dos ip's locais na LAN . Tudo funciona muito bem e consigo acessar a internet pela sub-rede 192.168.1.0.
Agora quero criar duas vlans: 100 e 200. Tentei usar vconfig para criar eth0.100 e eth0.200, mas não consigo descobrir como conectá-las à internet. Os pacotes da minha LAN local chegaram marcados com o ID de vlan 100/200 e o tráfego passou para a eth1. Mas como posso fazer com que os pacotes retornem para a eth0.x correta?
Pensei em criar duas pontes, uma para vlan 100 e outra para 200 e conectá-las à eth1. Mas, novamente, como faço para rotear os pacotes recebidos da Internet para chegar à ponte certa?
A configuração atual:
eth0 <--> br0 <--> eth1
propôs:
1.
eth0.100 <--> br100 <--> eth1
eth0.200 <--> br200 <--> eth1
2.
eth0.100 e eth0.200 <--> br0 <--> eth1
Responder1
Você precisa rotear o tráfego da LAN para a WAN.
Isso é feito por um roteador, não por uma ponte, então deve ficar assim:
eth0 (192.168.1.0/24) <==> eth1 (Internet Pública)
Para as vlans 100 e 200, como rotear o tráfego para a VLAN correta? Criando uma sub-rede diferente para cada VLAN, para que seu host saiba qual vlan é a interface de saída correta, então deve ficar assim agora:
eth0.100 (192.168.100.0/24) <==> eth1 (Internet Pública)
eth0.200 (192.168.200.0/24) <==> eth1 (Internet Pública)
Lembre-se do NAT para ambos os casos:
iptables -I POSTROUTING -t nat -o eth1 -j MASQUERADE