From: Nick Carter <ncarter100@gmail.com>
To: David Lamparter <equinox@diac24.net>
Cc: Stephen Hemminger <shemminger@linux-foundation.org>,
netdev@vger.kernel.org, davem@davemloft.net
Subject: Re: [PATCH] bridge: Forward EAPOL Kconfig option BRIDGE_PAE_FORWARD
Date: Tue, 28 Jun 2011 19:34:57 +0100 [thread overview]
Message-ID: <BANLkTikDqjErqBmfwrN6SJPgPjmmMfJw7g@mail.gmail.com> (raw)
In-Reply-To: <20110628160018.GC126252@jupiter.n2.diac24.net>
On 28 June 2011 17:00, David Lamparter <equinox@diac24.net> wrote:
> On Tue, Jun 28, 2011 at 08:10:15AM -0700, Stephen Hemminger wrote:
>> On Tue, 28 Jun 2011 17:02:57 +0200
>> David Lamparter <equinox@diac24.net> wrote:
>> > > if (skb) {
>> > > + /* Prevent Crosstalk where a Supplicant on one Port attempts to
>> > > + * interfere with authentications occurring on another Port.
>> > > + * (IEEE Std 802.1X-2001 C.3.3)
>> > > + */
>> > > + if (unlikely(!br->pae_forward &&
>> > > + skb->protocol == htons(ETH_P_PAE)))
>> >
>> > No, please don't.
>> >
>> > Linux bridging has two "grand" modes: dumb and STP enabled.
>> >
>> > If we're running a dumb bridge, we behave like an ethernet hub without
>> > any intelligence, and in that case we should absolutely forward 802.1X
>> > frames. We may have (e.g. VM) client(s) that want to authenticate with a
>> > physical switch.
>> > (For the spec, this counts as "repeater", not "bridge"/"switch")
>> >
>> > If we're running with STP enabled, then 802.1X traffic should already be
>> > caught by the general ethernet link-local multicast drop (which applies
>> > to 01:80:c2:/24 and therefore catches 802.1X too.)
>>
>> The problem is that STP is not enabled by default, and most people don't
>> know how to enable it.
>
> Yes, the default is a dumb hub (IMHO correctly so). And a dumb hub will
> forward 802.1X packets (IMHO also correctly so).
>
> Why should we specifically add a knob for EAPOL? Next we're adding one
> for STP itself, then one for LLDP, then one for Cisco's deprecated
> crap (CDP, DTP, ...) etc.
>
> If you want a dumb hub that drops EAPOL, use ebtables.
>
> -David
>
>
If we are not going to have an EAPOL knob, but we are going to act as
a repeater when STP is off then we still need these diffs to forward
the PAE group address.
(In fact we cant just act as a repeater because of the recent ethernet
bonding regression)
diff --git a/net/bridge/br_input.c b/net/bridge/br_input.c
index 90e985b..267f581 100644
--- a/net/bridge/br_input.c
+++ b/net/bridge/br_input.c
@@ -163,7 +163,8 @@ struct sk_buff *br_handle_frame(struct sk_buff *skb)
goto drop;
/* If STP is turned off, then forward */
- if (p->br->stp_enabled == BR_NO_STP && dest[5] == 0)
+ if (p->br->stp_enabled == BR_NO_STP &&
+ (dest[5] == 0 || skb->protocol == htons(ETH_P_PAE)))
goto forward;
Nick
next prev parent reply other threads:[~2011-06-28 18:34 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-06-23 21:39 [PATCH] bridge: Forward EAPOL Kconfig option BRIDGE_PAE_FORWARD Nick Carter
2011-06-23 22:29 ` Stephen Hemminger
2011-06-24 18:29 ` Nick Carter
2011-06-24 19:08 ` Stephen Hemminger
2011-06-24 21:29 ` Nick Carter
2011-06-24 23:33 ` Nick Carter
2011-06-28 15:02 ` David Lamparter
2011-06-28 15:10 ` Stephen Hemminger
2011-06-28 16:00 ` David Lamparter
2011-06-28 18:34 ` Nick Carter [this message]
2011-06-28 18:58 ` David Lamparter
2011-06-28 20:00 ` Nick Carter
2011-06-28 20:22 ` David Lamparter
2011-06-28 20:54 ` Nick Carter
2011-06-28 21:04 ` David Lamparter
2011-06-28 21:22 ` Nick Carter
2011-06-28 21:46 ` David Lamparter
2011-06-28 22:03 ` [PATCH 1/2] bridge: ignore pause & bonding frames David Lamparter
2011-06-28 22:03 ` [PATCH 2/2] bridge: pass through 802.1X & co. in 'dumb' mode David Lamparter
2011-06-29 22:56 ` Nick Carter
2011-06-28 22:10 ` [PATCH v2] bridge: ignore pause & bonding frames David Lamparter
2011-06-29 22:46 ` [PATCH] bridge: Forward EAPOL Kconfig option BRIDGE_PAE_FORWARD Nick Carter
2011-06-29 23:34 ` Stephen Hemminger
2011-07-01 10:16 ` David Lamparter
2011-07-01 14:58 ` Michał Mirosław
2011-07-01 15:16 ` bridge vs. bonding/pause frames (was: Forward EAPOL...) David Lamparter
2011-07-01 17:59 ` Michał Mirosław
2011-07-01 21:10 ` Nick Carter
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=BANLkTikDqjErqBmfwrN6SJPgPjmmMfJw7g@mail.gmail.com \
--to=ncarter100@gmail.com \
--cc=davem@davemloft.net \
--cc=equinox@diac24.net \
--cc=netdev@vger.kernel.org \
--cc=shemminger@linux-foundation.org \
/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;
as well as URLs for NNTP newsgroup(s).