Re: RFC: bridge netfilter vlan device name resolution

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

 



Bart De Schuymer <bdschuym@xxxxxxxxxx> wrote:
> Op 26/03/2012 22:21, Florian Westphal schreef:
> > When using a bridge with a management vlan on top (e.g. br0.1), you
> > cannot use iptables to match the input vlan device, because the vlan
> > device isn't resolved yet, i.e.  "-i br0" matches, while "-i br0.1"
> > does not, unless "net.bridge.bridge-nf-filter-vlan-tagged" (or
> > "net.bridge.bridge-nf-call-iptables") is turned off.
> >
> > This happens because bridge netfilter runs before
> > vlan device lookup, so skb->dev is set to the bridge; not
> > the vlan device on top of the bridge.
> >
> > I'd like to use iptables -t nat ... -j REDIRECT only for one particular vlan.
> >
> > Two possible solutions come to mind:
> >
> > - #1, add the vlan tag to nf_bridge info for use with physdev match:
> >    "... -m physdev --vlan-id 42 ..."
> > - #2, change bridge netfilter so that it passes in the vlan instead of
> >    the bridge as input device.
> >
> > Any other ideas on how to handle this?
> 
> I don't like approach #2: it will break existing firewall configurations 
> and I really don't see a reason why we would change the network device 
> to a non-bridge device (br0.1 isn't a bridge). Approach #1 can be 
> achieved without code changes with the nfmark field as shown below.
> 
> You can filter on the vlan id in iptables by using the nfmark field 
> intelligently, see e.g.
> http://ebtables.sourceforge.net/examples/basic.html#ex_network_separation

However, the REDIRECT target won't work with vlans on the bridge,
because skb->dev points to the bridge instead of the vlan, and thus
the REDIRECT target fails to get the ip address.

Would at least the PRE_ROUTING part of my patch be acceptable to make
REDIRECT work?

Thanks,
Florian
--
To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Netfitler Users]     [LARTC]     [Bugtraq]     [Yosemite Forum]

  Powered by Linux