iptables e NAT/port forwarding não funcionam após a reinicialização do servidor

iptables e NAT/port forwarding não funcionam após a reinicialização do servidor

Sou novo em NAT e iptables, tenho meu servidor físico rodando CentOS 6 com KVM instalado, mais 2 caixas Linux são iniciadas como VM - VM2 e VM3, e seu ip é 192.168.122.2 e 192.168.122.3 respectivamente. Como tenho apenas um IP real, o NAT é usado para encaminhar solicitações externas de porta para o aplicativo da VM, por exemplo, porta 30022 para o ssh da VM3 (porta 22). Após a configuração, tudo funcionou bem, já está funcionando há um mês, mas depois de fazer uma atualização de RAM e reiniciar o servidor, o NAT/port forward não está funcionando novamente.

Mais Informações:

  • Iptables rodando no sistema operacional host, mas NÃO em sistemas operacionais convidados.
  • Host OS iptables configurou o NAT da seguinte forma:
alvo prot opt ​​origem destino
DNAT tcp - em qualquer lugar tcp dpt:30022 to:192.168.122.3:22
DNAT tcp - em qualquer lugar tcp dpt:20022 to:192.168.122.2:22(22)
  • Resultado do comando iptables -t nat -L -v -n:
pacotes bytes alvo prot opt ​​in out origem destino
6 304 LOG tcp -- br0 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:30022 Sinalizadores LOG 0 nível 4 prefixo ROTA APP3
6 304 DNAT tcp -- br0 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:30022 a:192.168.122.3:22
3 152 DNAT tcp -- br0 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:20022 para:192.168.122.2:22
  • Isso significa que o pacote é tratado pela regra NAT enquanto tento fazer telnet 30022 do meu PC local (rede separada)

Tive dificuldades por alguns dias..alguma ajuda?

Responder1

Você deve verificar se o encaminhamento de IP está habilitado em seu host usando cat /proc/sys/net/ipv4/ip_forward. Este comando deve imprimir 1. Se não estiver habilitado, você deve habilitá-lo usando echo 1 > /proc/sys/net/ipv4/ip_forward.

informação relacionada