Tente isso.
No servidor:
route add -net 192.168.1.0/24 gw 192.168.4.6
No cliente:
iptables -t nat -I POSTROUTING -s 192.168.4.1 -t 192.168.1.44 -j SNAT --to 192.168.4.1
Só isso provavelmente deve funcionar. Continue lendo se você quiser considerar outras opções.
Você deve ser capaz de fazer sem a regra iptables se o cliente for o gateway padrão da rede 192.168.1.0/24 se você adicionar essa rota no servidor de destino ou no gateway padrão:
route add -net 192.168.2.0/24 gw <IP_of_client_on_this_network>
Você também pode substituir net 192.168.1.0/24
com apenas 192.168.1.44
(etc.) se quiser que apenas esse servidor seja acessado - mas se você pretende filtrar, provavelmente deve adicionar uma regra de filtro separada no servidor e / ou cliente.
Se você já está filtrando o cliente (quero dizer, se você tiver regras FORWARD, veja iptables -nvL
) você tem que adicionar outra regra lá:
iptables -I FORWARD -i tun+ -s 192.168.4.1 -d 192.168.1.44 -j ACCEPT
Edit: deleted -i da regra POSTROUTING, isso foi um erro.