Re: How to re-send out the packets captured by my hook function atNF_IP_PRE_ROUTING

From: David G.
Date: Wed Apr 26 2006 - 11:30:01 EST


Real Oneone wrote:
> Hi, I plugged a callback function into netfilter at the hook point of
> NF_IP_PRE_ROUTING, tring to capture all the packets, make
> some changes to some of them, and invoke skb->dev->hard_start_xmit to
> send them out directly. However, the kernel crashed before I could get
> any printked information.
>
> If you have any idea of how to send the received packets out, please tell me.

You might want to explore the possibilities of the existing "ip_queue"
kernel extension instead, it was design to do packet
capture/inspection/changing in userspace.

FireFlier works that way ( http://fireflier.sourceforge.net/ ) and so
does inlined snort (http://www.snort.org/docs/snort_manual/node7.html).

You can take a look at:
http://www.linuxia.de/netfilter.en.html#userspace and
http://www.cs.princeton.edu/~nakao/libipq.htm for an example application.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/