(Mac OS PF) Redirecionar o tráfego de saída do UDP para ip: porta específica

1

Estou tendo problemas para entender como o PF funciona no Mac OS. Eu tenho feito muita pesquisa sobre o tema, mas simplesmente não consigo encontrar a solução (embora eu possa encontrar muitas outras perguntas muito semelhantes sem uma resposta).

Meu objetivo é redirecionar um pacote de saída que usa a porta UDP (21928) enviada para um endereço multicast (225.0.0.37) para uma porta UDP diferente (6010) do mesmo endereço multicast antes de sair da minha interface.

Se isso não for possível, redirecionar a porta (21928) para o endereço 192.168.0.20:6010 seria a melhor coisa, mas o endereço multicast original é preferível.

Agora, tanto quanto eu posso dizer, você não pode usar regras PF em pacotes de saída, no entanto, você pode redirecionar os pacotes para o endereço de loopback e, em seguida, executar regras dessa maneira.

rdr pass inet proto udp from any to 225.0.0.37 port 21928 -> 225.0.0.37 port 6010
pass out on en4 route-to lo0 proto udp from en4 to 225.0.0.37 port 21928 keep state

Estas são as regras atuais que estou jogando, e no wireshark eu posso ver que quando o PF está ativo, o pacote entra na interface de loopback, porém diferente disso nada acontece (quando eu desabilito o PF, o pacote sai originalmente destinado a 225.0.0.37:21928 indicando que o PF está fazendo algo quando ativado pelo menos).

Além disso, ativei este comando:

sysctl net.inet.ip.forwarding=1

Não tenho certeza do que estou fazendo de errado aqui. Qualquer ajuda seria muito apreciada.

    
por logicallysynced 12.03.2018 / 15:37

0 respostas