Usar iptables -t nat -A PREROUTING -p tcp --dport 25565 -j MASQUERADE
em vez do segundo comando também não funciona: /
É possível redirecionar conexões para um IP / porta específico para um IP / porta externo?
Exemplo:
Server A has the external IP xxx.xxx.xxx.xxx
Server B has the external IP yyy.yyy.yyy.yyy
O usuário envia uma solicitação para o servidor A na porta 25565, eu quero redirecioná-lo para o servidor B na porta 25565, mas as pessoas que se conectam ao servidor B devem ter endereço IP, não endereço IP do servidor A.
Isso funciona, mas todas as pessoas que se conectam têm endereço IP do servidor A e eu preciso que elas tenham seus próprios endereços IP.
iptables -t nat -A PREROUTING -p tcp --dport 25565 -j DNAT --to-destination xxx.xxx.xxx.xxx
iptables -t nat -A POSTROUTING -p tcp -d xxx.xxx.xxx.xxx --dport 25565 -j SNAT --to-source yyy.yyy.yyy.yyy
Usar iptables -t nat -A PREROUTING -p tcp --dport 25565 -j MASQUERADE
em vez do segundo comando também não funciona: /
Para isso, você precisa de DNAT
no servidor A com as seguintes regras:
iptables -t nat -A PREROUTING -p tcp --dport 25565 -j DNAT --to <server B IP>
iptables -t nat -A POSTROUTING -p tcp --sport 25565 -j SNAT --to <server A IP>
Onde:
<server A IP>
é o endereço IP no servidor A que o cliente vê <server B IP>
é o endereço IP do host que atende em tcp/25565
A primeira regra estabelece: Cliente --- > Servidor A --- > Servidor B (pedidos)
E a segunda regra estabelece: Servidor B --- > Servidor A --- > Cliente (respostas)
Espero que isso ajude