A solução é:
iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to BB.BB.BB.BB
BB.BB.BB.BB = IP de origem
É isso aí!
Eu tenho eth0 com IP X.X.X.X e eth0: 0 com IP Y.Y.Y.Y.
Meu objetivo é se eu me conectar a eth0, em seguida, o ip de saída deve ser X.X.X.X e se eu me conectar a eth0: 0, o ip de saída deve ser Y.Y.Y.Y.
Exemplo:
Cliente VPN conectado a eth0 (IP X.X.X.X) - > IP X.X.X.X
O cliente VPN se conecta a eth0: 0 (Y.Y.Y.Y) - > IP Y.Y.Y.Y
Cliente VPN conectado a eth0: 1 (ZX.ZX.ZX.ZX) - > IP ZX.ZX.ZX.ZX
O cliente VPN se conecta a eth0: 2 (ZY.ZY.ZY.ZY) - > IP ZY.ZY.ZY.ZY
Cliente VPN conectado a eth0: 3 (ZA.ZA.ZA.ZA) - > IP ZA.ZA.ZA.ZA
Agora é sempre X.X.X.X
Eu tentei o iptables mas não está funcionando ..
iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT
ip_forward é 1
Também tentei ip route
Eu acho que o caminho certo é configurá-lo com rota?
Você precisa de um mascaramento (NAT) para os clientes vpn. Algo como:
iptables -A POSTROUTING -s (subnet of vpn clients) -j MASQUERADE
se o seu servidor vpn atribuir clientes a 192.168.1.0/24 por exemplo, coloque isso como o argumento -s.
Isso tem a ver com a rota padrão, não tem nada a ver com o iptables. Se você quiser mudar seu gateway padrão, execute estes comandos:
ip -4 route del default
ip -4 route add default via <gateway ip> dev <interface>
O gateway IP é o gateway ou roteador para a sub-rede dessa interface. Portanto, se eth1 estiver em Y.Y.Y.Y e netmask for 255.255.255.0, o gateway precisará estar na mesma sub-rede (por exemplo, algo em Y.Y.Y. *). Você só pode ter um gateway padrão de cada vez, a menos que esteja usando uma configuração especializada.
Tags networking iptables routing linux