На самом деле, используя pcap, вы не можете создать брандмауэр. Это связано с тем, что пакеты, видимые внутри вашего анализатора (построенные с использованием pcap), являются просто копией пакетов, которые (с анализатором или без него) используются сетевым стеком.
Другими словами: использование фильтров в pcap приведет к тому, что вы не увидите копии оригинальных пакетов (насколько я знаю, pcap компилирует фильтры и добавляет их в ядро, чтобы на уровне ядра копия не выполнялась); в любом случае оригинальный пакет все равно попадет в сетевой стек.
Решение вашей проблемы, скорее всего, может быть сделано с помощью netfilter . Вы можете зарегистрироваться в хуке NF_IP_PRE_ROUTING и там решить сбросить или разрешить данный трафик.