2009-08-12 17:25:53

by Luis R. Rodriguez

[permalink] [raw]
Subject: Re: Multiple SSID

On Wed, Aug 12, 2009 at 10:04 AM, Stephen
Hemminger<[email protected]> wrote:
> I have a dumb questions. How does one setup multiple SSID's with
> current (ie not madwifi) wireless API?
>
> 1. I assume need to run multiple instances of hostapd with different
>   config. Will that work?

Yes. But the next question is how to create new wlan%d AP interfaces.
That is answered below.

> 2. Since IP address is attached to device (wlan0), how can each SSID
>   have different IP address? Use vlan's?

The new 'iw' [2] utility could be used to create monitor interfaces or
ad-hoc interfaces for example. We decided to only allow you to create
an "AP" type of interface with a utility that handles the MLME in
userspace, such a utility is hostapd. You will need to use the nl80211
driver with hosatpd [2]. We have documented the supported wireless
modes in our wiki [3], I suppose that could use some updating.

Anyway I believe AP-enabled devices right now only support creating 1
AP interfface. I believe the exception to this right now is ath9k
through the private virtual interface stuff Jouni created, but to be
honest I have to go and review that to make sure you can create 2 APs.

Typically drivers (MadWifi) which supported multiple BSSs (therefore
with two SSIDs) would allow you to do this by creating BSSes on the
same channel. The ath9k virtual interface thing allows you to create
interfaces on *separate* channels, and provides its own scheduler,
which you can tune, for switching back and forth.

[1] http://wireless.kernel.org/en/users/Documentation/iw
[2] http://wireless.kernel.org/en/users/Documentation/hostapd
[3] http://wireless.kernel.org/en/users/Documentation/modes

> 3. Do vlan's work on wireless (ath9k)?

Not sure what is required to support vlans.

Luis


2009-08-12 17:36:12

by Johannes Berg

[permalink] [raw]
Subject: Re: Multiple SSID

On Wed, 2009-08-12 at 10:25 -0700, Luis R. Rodriguez wrote:
> On Wed, Aug 12, 2009 at 10:04 AM, Stephen
> Hemminger<[email protected]> wrote:
> > I have a dumb questions. How does one setup multiple SSID's with
> > current (ie not madwifi) wireless API?
> >
> > 1. I assume need to run multiple instances of hostapd with different
> > config. Will that work?
>
> Yes. But the next question is how to create new wlan%d AP interfaces.
> That is answered below.

Huh, no, that's not really true. You can run one hostapd with multiple
BSSes, in theory, except driver_nl80211.c doesn't have all the code for
it yet. Should be fairly simple though to implement, just needs a list
of BSSes in that file.

> > 3. Do vlan's work on wireless (ath9k)?

Well, not in the 802.1q sense. VLANs exist our terminology as a way to
separate (by using different group keys and different local netdevs)
stations connected to the same BSS. This should work, with radius or
with static configuration, but I never tried.

johannes


Attachments:
signature.asc (801.00 B)
This is a digitally signed message part

2009-08-12 17:59:58

by Ben Greear

[permalink] [raw]
Subject: Re: Multiple SSID

On 08/12/2009 10:25 AM, Luis R. Rodriguez wrote:
> On Wed, Aug 12, 2009 at 10:04 AM, Stephen
> Hemminger<[email protected]> wrote:
>> I have a dumb questions. How does one setup multiple SSID's with
>> current (ie not madwifi) wireless API?

> Anyway I believe AP-enabled devices right now only support creating 1
> AP interfface. I believe the exception to this right now is ath9k
> through the private virtual interface stuff Jouni created, but to be
> honest I have to go and review that to make sure you can create 2 APs.

We're *still* working on virtualizing ath5k. Over the last few days,
we have gotten this working pretty well, including virtual APs, virtual STAs with
WPA & no security. I haven't tested WEP lately.

We are chasing a few remaining buglets and optimizations currently.

I have a page up here to help get started using this:
http://www.candelatech.com/oss/vsta.html

NOTE: The .31 tree mentioned there has a bunch of other patches in it
that we use for various purposes. There is no clean way to get *just*
our wifi changes at this point.

We plan to submit the patches upstream, but there is a lot of churn in wifi code
so it will be a bit longer before we can get the patches tested on stable
code and then ported to the development branches.

I haven't tried out ath9k yet, but look forward to it once we get
ath5k nailed down.

Thanks,
Ben

--
Ben Greear <[email protected]>
Candela Technologies Inc http://www.candelatech.com


2009-08-12 19:41:55

by Stephen Hemminger

[permalink] [raw]
Subject: Re: Multiple SSID

On Wed, 12 Aug 2009 10:25:34 -0700
"Luis R. Rodriguez" <[email protected]> wrote:

> On Wed, Aug 12, 2009 at 10:04 AM, Stephen
> Hemminger<[email protected]> wrote:
> > I have a dumb questions. How does one setup multiple SSID's with
> > current (ie not madwifi) wireless API?
> >
> > 1. I assume need to run multiple instances of hostapd with different
> >   config. Will that work?
>
> Yes. But the next question is how to create new wlan%d AP interfaces.
> That is answered below.
>
> > 2. Since IP address is attached to device (wlan0), how can each SSID
> >   have different IP address? Use vlan's?
>
> The new 'iw' [2] utility could be used to create monitor interfaces or
> ad-hoc interfaces for example. We decided to only allow you to create
> an "AP" type of interface with a utility that handles the MLME in
> userspace, such a utility is hostapd. You will need to use the nl80211
> driver with hosatpd [2]. We have documented the supported wireless
> modes in our wiki [3], I suppose that could use some updating.
>
> Anyway I believe AP-enabled devices right now only support creating 1
> AP interfface. I believe the exception to this right now is ath9k
> through the private virtual interface stuff Jouni created, but to be
> honest I have to go and review that to make sure you can create 2 APs.
>
> Typically drivers (MadWifi) which supported multiple BSSs (therefore
> with two SSIDs) would allow you to do this by creating BSSes on the
> same channel. The ath9k virtual interface thing allows you to create
> interfaces on *separate* channels, and provides its own scheduler,
> which you can tune, for switching back and forth.
>
> [1] http://wireless.kernel.org/en/users/Documentation/iw
> [2] http://wireless.kernel.org/en/users/Documentation/hostapd
> [3] http://wireless.kernel.org/en/users/Documentation/modes

The existing API creates another entity 'phy0' which lives in
yet another namespace, it is not a filesystem or a network device.
The only way to enumerate these is the 'iw phy' which is okay,
but does this work with hotplug (it doesn't go through udev?)
and what about network namespaces?