libnetfilter_queue: get link layer header

Patrick McHardy kaber at
Thu Feb 23 11:03:51 CET 2006

Gregor Maier wrote:
> I was wondering if it's somehow possible to aquire the complete link
> level header in libnetfilter_queue. I can get the HW Protocol
> (Ethertype) and the SRC MAC but it is also possible to get the DST MAC.
> I know that for outgoing packets the information is only available after
> the arp lookup (so in/after POSTROUTING) but for INPUT / FORWARD packets
> the DST Mac is always available. Maybe it would be a solution to set the
> DST MAC to all zeros if it's not yet known and then add a mechanism to
> pass the DST Mac to the userspace app listeing on the queue.

I agree that the current implementation isn't perfect since it always
asks the driver to fill in its own address, even if the received packet
was a broadcast packet, instead of using the data from the packet.
I've added it to my TODO list to look into this.

More information about the netfilter-devel mailing list