From: Stephen Hemminger <shemminger@osdl.org>
To: Lionel Litty <llitty@gmail.com>
Cc: bridge@lists.osdl.org
Subject: Re: [Bridge] Setting the interfaces in promiscuous mode
Date: Thu, 16 Sep 2004 11:09:55 -0700 [thread overview]
Message-ID: <20040916110955.6347a4e9@dell_ss3.pdx.osdl.net> (raw)
In-Reply-To: <5f3f2c610409160928252d34b1@mail.gmail.com>
On Thu, 16 Sep 2004 12:28:46 -0400
Lionel Litty <llitty@gmail.com> wrote:
> Hello,
>
> I have been using the bridging facilities provided by Linux (vanilla
> 2.6.7 SMP with UML skas host patch applied) to bridge a regular
> physical ethernet network (on interface eth0) with a virtual network
> (on interface tap0, cf uml_switch,
> http://user-mode-linux.sourceforge.net/networking.html). A couple of
> virtual machines (run using user-mode linux, a tool that enables you
> to run linux inside linux) are connected to the virtual network.
>
> This is the script I use to set up the bridge:
>
> brctl addbr br0
> ifconfig eth0 0.0.0.0 promisc up
> ifconfig tap0 0.0.0.0 promisc up
> ifconfig br0 abc.def.ghi.jkl netmask 255.255.255.0 up
> brctl stp br0 off #This is to ensure the bridge does not send spanning
> tree protocol packets.
> brctl setfd br0 1
> brctl sethello br0 1
> brctl addif br0 eth0
> brctl addif br0 tap0
>
> This worked fine. I then tried to set the two interfaces (eth0, tap0)
> in non-promiscuous mode. My expectation was that the bridge would not
> work anymore. Nevertheless, it kept working and my two networks were
> still bridged. Virtual machines on the tap0 side of the bridge were
> still able to communicate with physical machines on the eth0 side.
> Moreover, network benchmarks showed that performance on the machine I
> use as a bridge were better, which indicates that setting the
> interfaces in non promiscuous mode had an influence on the behavior of
> the network stack (which is not surprising).
>
> I am puzzled by the fact that interfaces do not need to be in
> promiscuous mode for the bridge to function properly. Anyone has an
> idea why?
promiscuous mode is tracked in the kernel with a counter, the kernel
won't change the actual hardware until the counter goes to zero. This is
why running something like tcpdump which changes interface to promiscuous mode
will have no effect on the bridge. How did you
force the interface out of non-promiscious mode? You may not changed anything.
Also promiscuous on tap means nothing really since there is no hardware
filtering.
next prev parent reply other threads:[~2004-09-16 18:09 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-09-16 16:28 [Bridge] Setting the interfaces in promiscuous mode Lionel Litty
2004-09-16 18:09 ` Stephen Hemminger [this message]
2004-09-16 20:43 ` Lionel Litty
2004-09-16 21:06 ` Stephen Hemminger
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20040916110955.6347a4e9@dell_ss3.pdx.osdl.net \
--to=shemminger@osdl.org \
--cc=bridge@lists.osdl.org \
--cc=llitty@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox