Tente adicionar -i eth0
à sua entrada PREROUTING
e -o eth0
à sua entrada POSTROUTING
e execute sudo iptables -A FORWARD -i eth1 -j ACCEPT
Eu tenho um servidor Ubuntu (14.04.1) que está perguntando como um roteador para minha rede. Ele tem uma interface voltada para a Internet, eth0 e uma segunda interface, eth1, para conexão à minha rede 10.0.0.0.
Estou tentando encaminhar o tráfego TCP direcionado para eth0 (para este exemplo, digamos que seu IP é 118.94.79.113) para eth1 com um endereço de 10.0.0.1 para a porta 27016
Eu tentei os seguintes comandos em sequência:
sudo echo "1" > /proc/sys/net/ipv4/ip_forward
sudo sysctl net.ipv4.ip_forward=1
sudo iptables -t nat -A PREROUTING -p tcp --dport 27016 -j DNAT --to-destination 10.0.0.104:27016
sudo iptables -t nat -A POSTROUTING -j MASQUERADE
mas isso parece não funcionar, não consigo me conectar a 118.94.79.113:27016 para acessar o aplicativo em execução em 10.0.0.104:27016. Tem a ver com o fato de estar em duas interfaces ou o quê?
Tente adicionar -i eth0
à sua entrada PREROUTING
e -o eth0
à sua entrada POSTROUTING
e execute sudo iptables -A FORWARD -i eth1 -j ACCEPT
Tags networking server iptables firewall