The one big thing I know of that causes these messages is a
long-standing bug in the FreeBSD and OpenBSD (and presumably NetBSD, I
don't know about that one, though) network stacks.
When sending an ICMP host unreachable response to a DF packet, some of
the packet was byte-swapped.
The bytes were *only* in the segment of the original IP packet appended
to the ICMP message for identification purposes.
Under normal conditions this packet works fine with Linux. The
connection is killed, all is fine.
When running netfilter and connection tracking, netfilter uses these
byte-swapped fields to associate the ICMP message with the original TCP
or UDP packets.
Because the fields are out-of-order, this match fails. netfilter then
drops the packet on the floor and generates the 'untracked packet'
message.
FreeBSD have fixes their network stack not that long ago. I believe that
their 5.0 release corrects the bug, but I am not sure of that. Check
with them if you really care.
I don't believe that OpenBSD have corrected this problem at this stage
but, again, I have not checked recently. Check with them if you really
care.
This bug is *only* triggered when the packet has DF set. Normal packets
don't trigger that particular buggy code path.
Daniel
-- The truth knocks on the door and you say, 'Go away, I'm looking for the truth,' and so it goes away. Puzzling... -- Robert Pirsig - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/