Hi,

Fw marking using IP Tables does not work on an Ethernet bridge. Is it
possible to set up the mark using iptables so that the packet can be
directly routed to a predefined class using a mark value?

The advantage of this would be the one can use conntrack etc. to track
connections and forward the packets to the correct class.

Example:

tc qdisc del dev eth0 root
tc qdisc add dev eth0 root handle 1: htb default 10

tc class add dev eth0 parent 1: classid 1:1 htb rate 512kbit ceil 512kbit
tc class add dev eth0 parent 1:1 classid 1:10 htb rate 128kbit ceil 256kbit
tc class add dev eth0 parent 1:1 classid 1:22 htb rate 64kbit ceil 256kbit
prio 3
tc class add dev eth0 parent 1:1 classid 1:80 htb rate 64kbit ceil 128kbit
prio 3

# traditional method of classifying traffic into flowids

tc filter add dev eth0 parent 1:1 protocol ip prio 3 u32 match ip sport 22
0xffff flowid 1:22
tc filter add dev eth0 parent 1:3 protocol ip prio 3 u32 match ip sport 80
0xffff flowid 1:80

-------

What I want to achieve is as follows

#set predefined marks
iptables -t mangle -A PREROUTING -i eth0 -p tcp --sport 22 -m state --state
ESTABLISHED -j MARK --set-mark 22
iptables -t mangle -A PREROUTING -i eth0 -p tcp --sport 80  -m state --state
ESTABLISHED -j MARK --set-mark 80

Now I want to be able to forward packets marked 22 to class 1:22 and those
marked 80 sent to class 1:80 without using the tc fw filter ( as it does not
work on bridges ).

Any help or pointers shall be highly appreciated.

Thanks

Rajesh

Reply via email to