Re: Reject on a Bridge

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

 



On 2008-09-04, Grant Taylor <gtaylor@xxxxxxxxxxxxxxxxx> wrote:
> On 09/03/08 17:41, Gilad Benjamini wrote:
>> I am using iptables to run a firewall on a bridge. The bridge
>> consists of eth1 and eth2. Neither interface, nor the bridge itself,
>> have an IP address. eth0, which is not on the bridge, does have an IP
>> address.
>>
>> Am I missing something, or is this a real problem ?
>
> I'm not sure where the rejection is going to come from.  At least as I
> understand it the rejection comes from a system (with an IP) in the path
> that is refusing to pass the packet.  Thus I don't see how the bridge
> can reject the packet because there is no source IP to send the
> rejection from.  Can you add an IP to the bridge interface that is with
> in the subnet that is being bridged through it so that there is a source
> IP for the rejection?

That does make it pretty clear.  Rejecting an IP packet is done with
another IP packet.  Packets have to come from a layer-3 interface, of
a machine with an IP, so it doesn't make sense that an interface
that's not participating in IP itself could send a
ICMP-host-prohibited message if it doesn't have an IP from which to
send the message.

I understand you want to reject with an RST packet, but that packet
still has to come from somewhere.  It sounds like you want the rule to
fabricate an RST packet from the intended recipient of whatever you're
blocking.  I doubt the kernel will send any packets (let alone forged
ones) from an interface where IP is not bound.

Perhaps an easier solution would be to just DROP the unwanted traffic,
rather than REJECT.
--
To unsubscribe from this list: send the line "unsubscribe netfilter" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Netfilter Development]     [Linux Kernel Networking Development]     [Netem]     [Berkeley Packet Filter]     [Linux Kernel Development]     [Advanced Routing & Traffice Control]     [Bugtraq]

  Powered by Linux