Setting up eth0 as a bridge port and also having an IP address on it
is confusing. Better perhaps to run dhclient on the bridge interface
itself.
For filtering packets as you indicate, it should be possible to do
that using ebtables. I don't know details about it though.
With this filtering, you can probably filter the outgoing DHCP
requests from br0 to go out only on eth0 and not through eth1. (They
will be broadcast, so they will get sent out of both ports normally.)
On Jan 6, 2008 4:51 AM, Casper Gripenberg
<casper.gripenberg@kotiportti.fi> wrote:>
> Hi. I'm trying to run a bridge between my "internal"
> network (eth1) and the external internet (eth0). I.e.
> a very basic setup.
>
> But I also want the bridge to have an IP address. I
> read the docs here:
> http://www.linux-foundation.org/en/Net:Bridge
>
> Which say to set the forwarding delay to 0 and then run
> dhclient on eth0:
>
> # ifconfig eth0 0.0.0.0
> # ifconfig eth1 0.0.0.0
> # brctl setfd br0 0
> # brctl addif br0 eth0
> # dhclient eth0
> # brctl addif br0 eth1
> # ifconfig br0 up
>
> The bridge works fine as a bridge, and eth0 gets
> an IP address (although it takes a very long time
> for the dhclient to aquire it).
>
> But I can't reach the eth0 address from anywhere
> except localhost. And I can't get out of the bridge
> either to any other address..even though the routing
> table it set up correctly I get destination unreachable
> when I try to ping an external IP address from the
> bridge box (logged in through the console).
>
> What I want is for the bridge to have an IP address
> and then I want to allow access to specific ports on
> the bridge depending on if the packets are coming in
> through eth0 or eth1. Is this possible to do?
>
> Thanks.
>
> Casper