Eu uso o servidor de protocolo personalizado dentro do namespace da rede. Ele escuta apenas algumas portas no host local. O namespace de rede contém o dispositivo Ethernet virtual com o IP 192.168.0.2. Eu quero redirecionar os pacotes recebidos para 192.168.0.2 para o meu servidor personalizado. Eu uso a seguinte configuração iptables no meu namespace de rede:
# Filter settings. We are isolated virtual network, so we allow all
*filter
:INPUT ACCEPT
:FORWARD ACCEPT
:OUTPUT ACCEPT
COMMIT
# NAT settings
*nat
:PREROUTING ACCEPT
:INPUT ACCEPT
:OUTPUT ACCEPT
:POSTROUTING ACCEPT
# Required to forward
-A POSTROUTING -j MASQUERADE
# Forward external IP to custom server
-A PREROUTING -d 192.168.0.2 -p tcp -m tcp --dport 1080:1095 -j DNAT --to-destination 127.0.0.1:1080-1095
COMMIT
Eu defino as seguintes variáveis de ambiente:
net.ipv4.ip_forward=1
net.ipv4.conf.veth1.route_localnet=1
net.ipv4.conf.veth1.log_martians=1
O encaminhamento não funciona por nenhum motivo.
Alguém sabe como encaminhar os pacotes veth
de entrada para lo
no namespace da rede?