Iptables não encaminham tráfego

3

Eu preciso redirecionar todo o tráfego recebido na porta 9750 (o servidor de bate-papo da porta) para outra máquina na mesma sub-rede. Portas clientes - dinâmicas.

iptables -t nat -A PREROUTING -p tcp -d x.x.x.a --dport 9750 -j DNAT --to-destination x.x.x.b:9750
iptables -t nat -A POSTROUTING -p tcp --dport 9750 -j MASQUERADE

No entanto, o host x.x.x.a não abre a porta 9750. Os clientes não se conectam ao servidor.

cat /etc/sysctl.conf |grep forward
# Uncomment the next line to enable packet forwarding for IPv4
net.ipv4.ip_forward=1
# Uncomment the next line to enable packet forwarding for IPv6
#net.ipv6.conf.all.forwarding=1
    
por vinegret 14.07.2014 / 12:12

2 respostas

0

Você não forneceu configuração de encaminhamento de pacotes, então espero que tenha perdido. Temporariamente você pode ativá-lo por: -

 echo 1 >/proc/sys/net/ipv4/ip_forward

Para torná-lo permanente, abra o arquivo /etc/sysctl.conf e forneça este parâmetro: -

net.ipv4.ip_forward=1
    
por 14.07.2014 / 12:33
0

Não sei quais foram suas intenções com x.x.x.a e x.x.x.b . Para a regra PREROUTING, é necessário especificar a interface externa e o IP da máquina interna: Porta.

Para o encaminhamento de porta, você não precisa de uma regra de MASQUERADE. No entanto, você precisa de uma regra para permitir o tráfego na cadeia FORWARD.

iptables -A PREROUTING -t nat -i [external_iface] -p [proto] --dport [external_port] -j DNAT --to [internal_ip]:[internal_port]
iptables -A FORWARD -p [proto] -d [internal_ip] --dport [internal_port] -j ACCEPT
    
por 14.07.2014 / 14:12

Tags