Primeiro, verifique se net.inet.ip.fw.one_pass
está definido.
Em segundo lugar, não acho que você precise desse parâmetro de máscara na configuração do pipe. Você não pode ter certeza de que os pacotes vêm da porta 80, por exemplo. se um usuário se comunica por trás de um NAT, etc.
Terceiro, eu tentaria sem as regras 200 e 300. Não sei ao certo como está lidando com a tubulação internamente, mas a seção Traffic Shaping de ipfw(8)
tem essas dicas inscritas:
CHECKLIST Here are some important points to consider when designing your rules:
+o Remember that you filter both packets going in and out. Most connec-
tions need packets going in both directions.
+o Remember to test very carefully. It is a good idea to be near the
console when doing this. If you cannot be near the console, use an auto-recovery script such as the one in /usr/share/examples/ipfw/change_rules.sh.
+o **Do not forget the loopback interface.**
E em quarto lugar, eu mudaria a regra padrão (= a última regra 65000) para negar tudo. É um bom design de firewall e, sem ele, todas essas outras regras de permissão são desperdiçadas;)