Como rotear o tráfego destinado a uma porta para um IP sem alterar o IP de destino usando iptables / iproute2?

1

Eu tenho que coletar dados de um número (> 1000) de dispositivos cuja única autenticação / autorização é através do endereço IP de origem que se conecta a eles. Estes são dispositivos de rede cuja configuração é relativamente estática, portanto alterá-lo regularmente ou de alguma forma automatizada não é uma solução viável.

Eu tenho trabalhado com minha equipe de balanceamento de carga para tentar enviar todo o tráfego dos meus hosts através do balanceador de carga, mas até agora a nossa solução (não funciona / viável) envolve uma regra iptables para fazer NAT no host executando o software do coletor para rotear o tráfego para o balanceador de carga. O problema é que, como está fazendo NAT, o endereço de destino é reescrito, portanto, o balanceador de carga não tem idéia do que deve ser o IP de destino real.

O comando que usei foi este:

iptables -t nat -A OUTPUT -p tcp --dport <port> -j DNAT —to-destination <ip>:<port>

Eu não estou familiarizado o suficiente com iptables / iproute2 para saber exatamente o que fazer nesta situação. Eu sinto que isso é provavelmente muito fácil de fazer com um túnel de algum tipo, mas eu estou esperando por uma solução onde a configuração do balanceador de carga pode ser estática e podemos girar hosts de coletor e apenas executar algum comando para encaminhar o tráfego de acordo .

Definitivamente, essa não é minha área de especialização e, provavelmente, deixei de fora algumas informações, então, por favor, deixe-me saber se há mais informações que você precisa saber. Obrigado por qualquer ajuda que alguém possa fornecer.

    
por Kevin Doherty 12.03.2017 / 07:30

1 resposta

0

Você está usando DNAT quando quer apenas alterar o IP de origem? Nesse caso, você realmente quer usar SNAT .

    
por 13.03.2017 / 21:47