Subject: 2.6.34 -> 3.0.23 regression?

From: Arnd Hannemann <[email-masked]>
Date: Tue, 06 Mar 2012 22:16:19 +0100

Hi,

I upgraded a router box from kernel 2.6.34 to 3.0.23.
After the upgrade my proxy redirect was not working anymore
until I manually put the LAN interface (br0) in promisc mode.

Is it expected behavior that I need to set the interface into PROMISC
mode in order to get DNAT in PREROUTING to work?
With kernel 2.6.34 this was not needed...

Details:
192.168.1.1 is a router box and default gateway for clients
  connected to 192.168.1.0/24 via br0,
  connected to internet via wlan0,
192.168.1.2 is a proxy server running squid on port 3128

Iptables rules -t nat (simplified)
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination
DNAT       tcp  -- !192.168.1.2          0.0.0.0/0           tcp dpt:80 to:192.168.1.2:3128

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination
SNAT       tcp  --  192.168.1.0/24       0.0.0.0/0           tcp dpt:3128 to:192.168.1.1

Best regards
Arnd