ifb and ppp

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


My goal is to setup an ingress traffic shaping on my PPPOE DSL line with ifb. 

My old imq stuff used iptables marks (like 'iptables -t mangle -A 
PREROUTING -p tcp --sport 22 -m length --length :500 -j MARK --set-mark 31') 
to classify the traffic and since i am lazy, i tried to to reuse them with 
ifb. But no luck: iptables marks the packets well, but tc doesn't see the 
marks on ifb0.

May be my problem is somewhere between ppp0 and ifb0, so for a basic test, I 
tried this:

tc qdisc add dev ppp0 ingress
modprobe ifb
ip link set up dev ifb0
tc filter add dev ppp0 parent ffff: protocol ip prio 10 u32 \
   match u32 0 0 flowid 1:1 \
   action mirred egress redirect dev ifb0

and run:

root@router:/# tcpdump -i ifb0 -n
tcpdump: WARNING: ifb0: no IPv4 address assigned
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on ifb0, link-type EN10MB (Ethernet), capture size 96 bytes
12:38:29.584451 PPPoE  [ses 0x7dc] IP > 
UDP, length 84
12:38:29.585924 PPPoE  [ses 0x7dc] IP > GREv1, call 
24388, seq 1868, ack 3210, length 205: compressed PPP data
12:38:29.600506 PPPoE  [ses 0x7dc] IP truncated-ip - 256 bytes missing! > UDP, length 359

Looks like the packetes are still pppoe en-capsuled. Is this the correct 
behavior? This only occurs on ppp0, on other devices (like eth0) my iptables 
marks are matched by tc. What can I do to get my iptables marks working on 
ppp0 again?

my system is a debian etch with kernel from backports, newer iptables and 
newer iproute2:
root@router:~# uname -a
Linux router 2.6.21-2-k7 #1 SMP Fri Jul 13 16:18:53 UTC 2007 i686 GNU/Linux
root@router:~# iptables -V
iptables v1.3.8
root@router:~# tc -V
tc utility, iproute2-ss070710

Thanks in advance.
LARTC mailing list

[Bugtraq]     [Fedora Legacy]     [GCC Help]     [Yosemite News]     [Yosemite Photos]     [IP Tables]     [Netfilter Devel]     [Fedora Users]

Powered by Linux