O que você está procurando é chamado de "NAT". Isso é feito por padrão em muitos roteadores, mas por padrão não é feito em sistemas Linux.
Você precisará ativar o encaminhamento IPv4 também no sistema para que ele funcione. Adicione isto ao final de /etc/sysctl.conf :
net.ipv4.ip_forward = 1
Você pode fazer isso para aplicar sudo sysctl -p depois. Isso permite a capacidade de encaminhar o tráfego.
Como sua rota padrão da Internet está fora da Internet pública, mas você deseja configurar o NAT para que as outras máquinas da VLAN possam acessar a Internet pelo sistema, você precisará configurar algo assim em iptables :
iptables -t nat -A POSTROUTING -s ip.add.re.ss/24 ! -d ip.add.re.ss/24 -m comment --comment "Allow vlanXX to go to the Internet, masquerade as the public IP." -j MASQUERADE
Esta é uma regra na tabela NAT de como rotear o tráfego depois que ele chega ao sistema. Você precisará de três dessas regras, uma para cada sub-rede de cada VLAN. Ajuste ip.add.re.ss e vlanXX de acordo para corresponder especificamente às informações da sua rede.
Você também precisa ter uma regra ACCEPT na tabela filter de iptables para FORWARD , e você normalmente faria isso por meio de interface, assim, atualizando os itens XX para ser a vlan número:
iptables -t filter -A FORWARD -o ens1f1.XX -m comment --comment "NAT for vlanXX" -j ACCEPT
iptables -t filter -A FORWARD -i ens1f1.XX -m comment --comment "NAT for vlanXX" -j ACCEPT
Depois de fazer isso, você precisa salvar as regras iptables . O ideal seria fazer isso se você não o instalasse primeiro e dissesse "Sim" quando ele pedisse para salvar suas regras:
sudo apt-get install iptables-persistent
... e isso configuraria as regras iptables na inicialização corretamente, além de salvar as regras. Se você já tiver iptables-persistent , precisará atualizar as regras carregadas:
sudo su -c 'iptables-save > /etc/iptables/rules.v4'
... e agora a regra NAT MASQUERADE estará em vigor toda vez que você inicializar.