Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 10 Sep 2005 14:51:47 +0000
From:      Leonidas Tsampros <ltsampros@upnet.gr>
To:        Cheng Jin <chengjin@cs.caltech.edu>
Cc:        freebsd-questions@freebsd.org
Subject:   Re: ipfw out xmit trouble
Message-ID:  <20050910145147.GA3028@bifteki.lan>
In-Reply-To: <Pine.LNX.4.60.0509100029001.19120@orchestra.cs.caltech.edu>
References:  <Pine.LNX.4.60.0509100029001.19120@orchestra.cs.caltech.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, Sep 10, 2005 at 12:48:34AM -0700, Cheng Jin wrote:
> 
> Hi,
> 
> I have an ethernet bridging [xl0 fxp0] set up like the following
> 
> outside world --- [xl0 fxp0] --- test machine
> 
> xl0 and fxp0 are the two interfaces on the bridging machine.
> xl0 has an IP address (could this be the source of the problem?),
> but fxp0 doesnt.
> 
> I would like to simulate a DSL line on the xl0 side (for packets
> arriving and leaving xl0).  The commands that I use are:
> 
> sysctl -w net.link.ether.bridge_ipfw=1
> sysctl -w net.link.ether.ipfw=1  # not sure whether this is needed
> 
> ipfw -f flush
> ipfw -f pipe flush
> 
> ipfw add 65534 allow all from any to any    # just so i can login
> 
> ipfw add 65533 pipe 1 all from any to any out xmit xl0
> ipfw add 65533 pipe 2 all from any to any in recv xl0
> 
> ipfw pipe 1 config delay 20 bw 256K queue 50
> ipfw pipe 2 config delay 13 bw 3M queue 50
> 
> 
> pipe 2 works fine, but I couldn't get pipe 1 to work. ping to
> and from the test machine shows a delay about 14 ms, i.e. from
> the "in recv xl0" part.
> 
> If i change the configuration for pipe 1 to "in recv fxp0", it
> would then work, but I think packets would be queued inside
> ether_input/bdg_forward on the fxp0 side, rather than
> ether_output_frame on the xl0 side.
> 
> Even though I have stared at it for the longest time, I can't
> see anything wrong with pipe 1.
> 
> Any help would be greatly appreciated!

According to the FreeBSD Handbook, Chapter 26.5 you have to set the
following sysctl variables in order to enable bridging support:

net.link.ether.bridge.enable=1
net.link.ether.bridge.config=xl0,fxp0
net.link.ether.bridge_ipfw=1

Also you must have recompiled your kernel to include "options BRIDGE".
(you can also load the bridge.ko module with "kldload bridge")

I hope i was helpful.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050910145147.GA3028>