Eu resolvi uma situação semelhante há um tempo atrás com um pequeno servidor Linux configurado como um firewall de ponte atrás do roteador Comcast - dois NICs, um conectado diretamente ao roteador, o outro à minha rede interna. Dessa forma, consegui filtrar o tráfego após o roteador da Comcast ter feito o NAT, sem ter que fazer outra etapa de NAT.
Aqui está um bom documento sobre como configurar um firewall de bridging sob o Debian, mas qualquer distro principal deve ter os módulos e ferramentas que você precisa: link