Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 16 Jan 2002 02:24:10 +0100
From:      Bjoern Fischer <bfischer@Techfak.Uni-Bielefeld.DE>
To:        freebsd-net@FreeBSD.ORG
Cc:        Luigi Rizzo <luigi@info.iet.unipi.it>
Subject:   Re: bridged interfaces don't see broadcasts [update]
Message-ID:  <20020116012410.GA9286@frolic.no-support.loc>
In-Reply-To: <20020115212056.GA3520@frolic.no-support.loc>
References:  <20020115212056.GA3520@frolic.no-support.loc>

next in thread | previous in thread | raw e-mail | index | archive | help
Here an update. While Julian is looking for an netgraph solution,
I looked into Luigi's bridging code. And found something, I believe:

> net.link.ether.bridge_cfg: vr0:0,ed1:0
> net.link.ether.bridge: 1

> vr0: flags=3D8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
>         inet 192.168.43.1 netmask 0xffffff00 broadcast 192.168.43.255
>         ether 00:50:ba:23:0d:f3=20
> ed1: flags=3D8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
>         ether 00:4f:4c:02:4a:4c=20

Watch for ed1, it is not ifconfiged i.e. has no ip address. I can see
broadcasts from the vr0 segment on 192.168.43.1 but no broadcasts from
the ed1 segment.

I added some debug messages to bridge.c and if_ethersubr.c. I can see
that broadcast packets coming from vr0 are properly passed to ether_demux()
in if_ethersubr.c:ether_input() after going through the bridge forwarding
code.

Then as an experiment I ifconfiged ed1 although in bridge.c Luigi
suggests to use only one ifconfiged interface per bridge cluster:

  ifconfig inet 192.168.43.2 netmask 0xffffff00 ed1

And that did it. Almost. Now I can see broadcasts from the ed1 segment
on 192.168.43.2.

Is this the way it should work? Or should a broadcast packet, that is
bdg_forward()ed in ether_input() and therefore sent through vr0, also
be passed to the upper network layer? Then one actually *must not*
ifconfig more than one interface per bridge cluster or broadcasts will
be received twice or even more often. Uh, ugly.

There was an issue shortly on the list, a general "interface can't see
it's own broadcast", I tried the patch but it didn't help.

-Bj=F6rn


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-net" in the body of the message




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