Não está claro se você deseja realmente agir sobre os dados no pacote ou apenas rotea-lo com base em qual computador o enviou?
iptables
pode fazer o roteamento e é bastante sofisticado. Ele faz uso do que é chamado de "tabelas", ironicamente, e assim você pode interrogar e redirecionar os dados conforme eles passam pelas várias "tabelas".
Veja este tutorial para mais informações: link .
Existem 3 tabelas primárias, mas mais podem ser adicionadas através de plugins / módulos e também podem ser desenvolvidos outros personalizados.
Os principais:
- Entrada
- Encaminhar
- Saída
Assim, quando um pacote entra na caixa, ele passa pela tabela "Entrada", onde pode ser usado. À medida que os pacotes fluem para fora da caixa, eles fluem pela tabela "Saída" e podem ser executados também na sua.
Veja este tutorial para mais informações sobre iptables
.