Eu tenho um host do FreeBSD que serve como um ponto de entrada para sistemas adicionais em uma rede interna. Como tal, eu tenho pf
configurado para redirecionar o tráfego de entrada em certas portas (digamos, porta 5000) para o endereço local do host em uma das cadeias que executam um serviço de rede nessa máquina. Isso é assim:
---port 5000--->[Main host]
|
|---port 5000--->[Machine A]
|~~~~~~~~~~~~~~~~[Machine B]
O redirecionamento é executado pela regra PF:
rdr pass on egress proto tcp from any to $IP port 5000 -> $MACHINE_A_IP
Este é o estado que quase sempre desejo, e é isso que é configurado por padrão. No entanto, eu gostaria de algumas vezes temporariamente redirecionar a porta 5000 para a Máquina B, assim:
---port 5000--->[Main host]
|
|~~~~~~~~~~~~~~~~[Machine A]
|---port 5000--->[Machine B]
Eu tentei configurar âncoras PF para facilitar isso, mas como sou novo no PF, acho difícil analisar a documentação para cobrir esse caso de uso.
Como eu emito regras PF dinâmicas no host principal para redirecionar temporariamente 5000 da Máquina A para a Máquina B?