Alterar o destino dos pacotes TEE'd

1

Por razões que não posso entrar aqui, eu tive que duplicar um fluxo de pacotes UDP (dados de fluxo de rede, se isso importa) para um segundo destino.

Após algumas pesquisas, descobri que o alvo TEE da tabela% man_de% 'mangle fez exatamente isso:

iptables -t mangle -A PREROUTING -d 192.168.81.21 --protocol udp --destination-port 6343 -j TEE --gateway 192.168.228.2 
iptables -t mangle -A PREROUTING -d 192.168.81.21 --protocol udp --destination-port 6344 -j TEE --gateway 192.168.228.2 

O único problema que tenho agora é que o servidor de destino em iptables recebe os pacotes com um cabeçalho de destino do endereço 192.168.228.2 original e, portanto, o software que atende o tráfego do netflow não os aceita.

A solução "óbvia" seria usar o código de reescrita de pacotes do próprio 192.168.81.21 para reescrever o cabeçalho de destino para o valor correto, mas isso precisa somente acontecer com os pacotes duplicados e não com o originais. O que significa que o meu usual go-to de DNAT está fora porque isso é válido apenas para a tabela PREROUTING, em que ponto eu ainda não consigo fazer uma distinção entre os pacotes normal e duplicado.

A menos que haja algo óbvio que esteja perdendo, estou meio que preso. Alguma sugestão?

    
por Shadur 24.10.2018 / 11:42

0 respostas