O problema é sobre roteamento, não sobre o uso de uma VPN ou VLANs (mas a integração com a VPN pode certamente adicionar dificuldade).
- Sobre a questão principal: comunicação entre as LANs
A tabela 10 está em uso para IPs a partir de 192.168.5.0/24
, então quando tal IP obtiver a rota padrão, esta rota será usada para qualquer destino, incluindo IPs de outras LANs, mesmo que seja Sem intenção. Por isso, deve ser preenchido manualmente com as rotas para as outras LANs, que, ao contrário da tabela principal, não são adicionadas automaticamente.
antes:
# ip route get 192.168.10.3 from 192.168.5.2 iif br-VLAN5
192.168.10.3 from 192.168.5.2 via 192.168.0.1 dev eth1.2 table 10
cache iif br-VLAN5
consertar:
# ip route add 192.168.10.0/24 dev br-VLAN10 table 10
depois:
# ip route get 192.168.10.3 from 192.168.5.2 iif br-VLAN5
192.168.10.3 from 192.168.5.2 dev br-VLAN10 table 10
cache iif br-VLAN5
- Para o primeiro problema menor: ter que adicionar uma regra de IP para cada IP usado da VLAN5
Normalmente, não há razão para usar uma regra por IP único da VLAN5 e isso deve ser suficiente:
ip rule add from 192.168.5.0/24 table 10
Mas como OP fez um comentário dizendo que ele não funciona quando 192.168.5.1
está incluído, só posso dizer que talvez algo esteja interferindo (outras configurações de rede não mostradas, incluindo iptables). Ainda há simplificação possível (o comando netmask 192.168.5.2:192.168.5.255
fornece "apenas": 192.168.5.2/31 192.168.5.4/30 192.168.5.8/29 192.168.5.16/28 192.168.5.32/27 192.168.5.64/26 192.168.5.128/25
).