I've been using debian with 2.6.26 kernel; now I've started to test 2.6.32 for my needs. And I've noticed that u32 filter behaves differently for, namely, "
To discover the tendency, I've run my tests on ubuntu server with 3.0.0-12 kernel. And I've found that I can not match packets by VLAN id at all:
# this worked in 2.6.26: /sbin/tc filter add dev world0 parent 1:0 prio 100 protocol 802.1q \ u32 match u16 0x0ed8 0x0fff at -4 \ flowid 1:fe51
So, that's the preface.
I've built 3.2.11 (latest stable) and in all my tests it appeared impossible to catch any protocol but
all, which seems to be quite the same as
ip now). But when catching
any it appeared impossible to match vlan tag or the like, with negative
at value, too.