Você pode fazer isso criando uma sub-rede menor. Por exemplo, se você tiver uma rede / 24, poderá criar um pequeno bloco dessa sub-rede, como uma rede / 29.
Por exemplo, se 8.8.8.0/24
fosse sua rede pública. Você poderia usar uma segunda interface com 8.8.8.240/29
. Você teria, então, 8.8.8.241 atribuído a essa interface e esse seria o gateway para os clientes. Você teria então 5 ips restantes que você poderia usar.
[kbrandt@alpine: ~] ipcalc 8.8.8.240/29
Address: 8.8.8.240 00001000.00001000.00001000.11110 000
Netmask: 255.255.255.248 = 29 11111111.11111111.11111111.11111 000
Wildcard: 0.0.0.7 00000000.00000000.00000000.00000 111
=>
Network: 8.8.8.240/29 00001000.00001000.00001000.11110 000
HostMin: 8.8.8.241 00001000.00001000.00001000.11110 001
HostMax: 8.8.8.246 00001000.00001000.00001000.11110 110
Broadcast: 8.8.8.247 00001000.00001000.00001000.11110 111
Hosts/Net: 6 Class A
Embora você possa ter a rede / 24 em uma interface diferente que se sobrepõe à / 29, isso não importa, porque a rota mais específica (você pode pensar nela como menor) sempre ganha . Tenha em mente que quando você faz isso, você perde 2 endereços IP utilizáveis, um para a rede e outro para a transmissão.
Aprender a sub-rede é uma habilidade que vale a pena, nós temos nossa própria resposta Mega sobre isso em Como Trabalho de sub-redes IPv4? .
A outra opção é não fazer nenhum NAT para blocos de IP e usar somente NAT para IPs específicos. Isso funciona bem porque as regras de NAT terão precedência, como acontecem antes do roteamento.