No pf.conf (5) manpage:
Translation options apply only to packets that pass through the specified interface, and if no interface is specified, translation is applied to packets on all interfaces. For instance, redirecting port 80 on an external interface to an internal web server will only work for connections originating from the outside. Connections to the address of the external interface from local hosts will not be redirected, since such packets do not actually pass through the external interface. Redirections cannot reflect packets back through the interface they arrive on, they can only be redirected to hosts connected to different interfaces or to the firewall itself.
Você pode condensar algumas de suas regras, não especificando em qual interface deseja que o redirecionamento ocorra e permitir que a pf avalie isso para você.
Por exemplo:
pass in on $extif proto tcp from any to 10.0.0.213 port {25,80,443} rdr-to 172.16.1.193
pass in on $intif proto tcp from $intnet to 10.0.0.213 port {25,80,443} rdr-to 172.16.1.193
Pode ser reescrito como:
pass in proto tcp from any to 10.0.0.213 port {25, 80, 443} rdr-to 172.16.1.193
- O tráfego de entrada destinado a 10.0.0.213 em
$extif
será redirecionado para 172.16.1.193. - O tráfego de entrada destinado a 10.0.0.213 em
$intif
será redirecionado para 172.16.1.193. - Isso também permitirá que o tráfego que não faz parte do
$intnet
seja redirecionado também. Isso pode ou não ser desejável.
Sem ver todo o seu conjunto de regras ou realmente saber o que você está tentando realizar, só posso oferecer um exemplo de prova de conceito.
Uma nota final: eu realmente evitaria fazer isso. Existe uma tendência (pelo menos eu tenho) de querer escrever o menor número possível de regras fazendo com que uma regra faça mais do que "uma coisa". Isto é mau. Os firewalls já são terrivelmente complicados e aparentemente sempre estão mal configurados; Por que tornar mais difícil para você mesmo criar um conjunto de regras bizantino? Um conjunto de regras mais longo com regras mais simples será mais fácil de entender, manter e depurar. Evite a tentação de ser excessivamente inteligente.