Purdue Wireless + NetworkManager does not provide wireless connectivity

Bug #144140 reported by Luke Hoersten
8
Affects Status Importance Assigned to Milestone
network-manager (Ubuntu)
Fix Released
Medium
Alexander Sack

Bug Description

Binary package hint: network-manager

My name is Luke Hoersten and I'm the Purdue Linux Users Group
president. Last year, Purdue University released a new wireless system
for students to connect called PAL2.0 (Purdue Air Link). It uses
WPA-Enterprise and unfortunately doesn't work with NetworkManager.
It's keeping many students from switching to Ubuntu (Purdue has 40,000
students so the amount of perspective Linux users is high).

The way PAL2.0 works is as such:
1. Students first connect to an ESSID called PAL2.0-Instructions which
serves one web page to tell Windows users how to connect to PAL2.0.
It's essentially a hidden ESSID.
2. NetworkManager connects to PAL2.0-Instructions fine. Then with NM,
one must use the "Connect to Other Wireless Network..." feature and
type PAL2.0 as the ESSID to connect to.
3. Maybe every 1 in 500 times NM is able to find PAL2.0, prompt for
the WPA-Enterprise info, and connect.

Most of the time it never connects and even sometimes crashes nm-applet.

I've got in contact with the head wireless IT guy at Purdue and asked
him for any and all info he can give. I'd appreciate if you could go
through his email and see if you can find why PAL2.0 and NM don't play
nice. Here's what he said:

---------- Forwarded message ----------
From: Case, Brandon J
Date: Sep 3, 2007 9:49 AM
Subject: RE: FW: PAL2.0 and Ubuntu
To: Luke Hoersten

Luke,

The authentication method for PAL2.0 is formally known as
WPA-Enterprise. It's configured like any other WPA-Enterprise network
would be. WPA technically specifies some kind of encryption and some
kind of authentication mechanism with EAP (be it TLS, TTLS, PEAP, etc.).
We use TKIP encryption for two reasons: it's guaranteed to work with any
WPA-compliant wireless card and most of our access points don't support
WPA2 since they are older (you'll notice we only have 11b service most
everywhere on campus). We also are using PEAP for authentication since
it's the only password-based method available: all others require a
client certificate.

To understand the PAL2.0 connection process you'll need to know some
basics about wi-fi, mainly that associated and authenticated are two
different states and that one can't happen without the other happening
first. It's always associate, then authenticate. In the case of
PAL2.0-Instructions there is no secure authentication method specified
("open" in the SSID configuration) so there is no formal authentication
process. With PAL2.0 you can associate but before any kind of even Layer
2 connectivity is allowed you must be authenticated by the access point.
In our case this is done with a standard RADIUS authentication process
(using I2A2 as the actual username/password database) and this is where
your credentials are verified and the necessary encryption keys are
negotiated. After you've been authenticated the access point allows
Layer 2 traffic which lets you obtain a DHCP address and off you go.

Our access points have VLAN support so yes there is only one set of
access points on campus that run PAL2.0-Instructions, PAL2.0, PAL and
the other SSIDs we use from time to time. From each AP, the BSSID is the
same for every SSID: the MAC address of its radio interface. The AP
keeps track of clients by SSID even though technically they're all on
the same BSSID. There is another method of handling multiple SSIDS
called mbssid which essentially successively adds to the radio MAC
address every time there is a new SSID, resulting in a unique BSSID for
each SSID. This also allows each SSID to be broadcast instead of just
one. Again, most of our access points do not support this but a handful,
comparatively, do so for consistency's sake (necessary when you manage
~1400 access points) we leave mbssid off.

The only spot of troubleshooting details I can give that would be
helpful are from my attempts to get NetworkManager working. I noticed in
/var/log/syslog that wpa_supplicant is trying to connect, repeatedly, to
an all 0's BSSID. Eventually it blacklists it but it seems as if
sometimes it connects and sometimes it does not without any real rhyme
or reason why. I had the same results with ndiswrapper and the madwifi
driver (Dell 1450 abg USB adapter and Intel 3945ABG respectively). This
could be the result of PAL2.0 not being broadcast but if the driver
properly sends and receives probe requests and responses it should be
able to determine the proper BSSID for PAL2.0 before it tries to
associate.

Let me know if you need any more details, I know that was a lot.

Brandon

Revision history for this message
Alexander Sack (asac) wrote :

Thanks for (finally) open this bug.

So if I understand what you say correctly, your APs have to be hidden because you cannot use mbssid, right?

Anyway, please attach the syslog for now.

Thanks,
 - Alexander

Changed in network-manager:
status: New → Incomplete
importance: Undecided → Medium
assignee: nobody → asac
Revision history for this message
Luke Hoersten (lukehoersten) wrote :

I don't have the technical background to answer this question. I'm trying to get the experts from Purdue IT to jump on this thread. I'll have to wait until I go on campus Monday to grab a syslog in the right context.

Revision history for this message
Brandon Case (caseb) wrote :

I am the wireless network administrator for Purdue. Luke has gotten me involved in this issue for the technical background on how our wireless environment is put together and how it functions. To answer your question, we do not use mbssid because the hardware we have does not support it. We have Cisco Aironet 1220 units throughout most of campus and the Cisco 350 radio in them does not support mbssid at all.

Revision history for this message
Luke Hoersten (lukehoersten) wrote :

I realized after coming to campus and grabbing the syslog that I don't have the debug symbols installed. I'll have to grab those and I'll post an updated syslog tomorrow. I figured you may be able to get something out of this one in the meantime, Alex.

Revision history for this message
Brandon Case (caseb) wrote :

I got Fiesty up and running on my Dell D620 laptop this afternoon via LiveCD running from a USB pendrive. The machine has an Intel 3945ABG chipset in it and I've got it running on PAL2.0 just fine right now. Not sure what I did either, I just configured it from NetworkManager and off it went. I've attached the syslog output. What else would be helpful in determining why this worked right out of the gate?

Revision history for this message
Alexander Sack (asac) wrote :

Luke, yes please install debug symbols post the crash backtrace.

Brandon, thats great ... can you please test if this works with the latest gutsy livecd as well? You can download it from http://cdimage.ubuntu.com/daily/current/

Thanks,

 - Alexander

Revision history for this message
Alexander Sack (asac) wrote :

... one more thing, please get syslog up that fails to connect even though nm doesn't crash.

Thanks a lot,

 - Alexander

Revision history for this message
Luke Hoersten (lukehoersten) wrote :

Alexander,
Here's the syslog that fails to connect (and with Gutsy, will not attempt to connect again even if I click on PAL2.0 from the NM menu) without crashing. I'm realizing that it crashes a lot more than I thought, though, and I can only get the crash on PAL2.0.

Revision history for this message
Brandon Case (caseb) wrote :

Alexander,
Here is a syslog from Gutsy. I couldn't use my D620 for this since all that's available in the current daily builds is the alternate CD and not the live CD. So I ended up using a Dell Inspiron 700m with an Intel 2915ABG chipset in it for this test. Again, it worked just fine (after I installed the ca-certificates package). To be sure it wasn't just a fluke I left all wireless settings enabled and rebooted. It came back like a champ.

Revision history for this message
Alexander Sack (asac) wrote :

Luke, please capture a crash with debug symbols installed and with gdb attached.

Revision history for this message
Alexander Sack (asac) wrote :

Luke, I added a section for DebuggingCrashes to https://wiki.ubuntu.com/DebuggingNetworkManager ... please try if it gets you a good backtrace and attach that.

Thanks,

 - Alexander

Revision history for this message
Luke Hoersten (lukehoersten) wrote :

Thanks Alexander. I may not get to this until the weekend but I will do it.
-Luke

Revision history for this message
Luke Hoersten (lukehoersten) wrote :

I can't seem to get NM to crash again. Sometimes it crashes regularly (as seen in my first syslog post) but when I want it to crash, no luck. I'll keep trying.

Revision history for this message
Luke Hoersten (lukehoersten) wrote :

I went through my syslog compared to Brandon's and marked a line in mine (an IPv6 error) that Brandon didn't have. Also, I noticed that he connects to the network <em>after</em> the timeout period that stops my NetworkManager. Is there a way to configure NM's timeout to be greater?

Revision history for this message
Alexander Sack (asac) wrote :

please test the network-manager packages available in my ppa ( http://ppa.launchpad.net/asac/ubuntu/pool/main/n/network-manager/) ... the version to test is 0.6.5-0ubuntu16~ppa3 ... it contains a fix for hidden networks. Maybe it helps for you as well.

Revision history for this message
Alexander Sack (asac) wrote :

the hidden network fix is in gutsy. If you still see your specific problem, please reopen this bug.

Changed in network-manager:
status: Incomplete → Fix Released
Revision history for this message
Luke Hoersten (lukehoersten) wrote :

This has fixed the problem. Thanks Alex and Brandon!

Revision history for this message
kurbacik (varlott1-deactivatedaccount) wrote :

The packages libnm-glib0_0.6.5-0ubuntu2, libnm-util0_0.6.5-0ubuntu2 and network-manager_0.6.5-0ubuntu2 fix the problem for me. I can connect to PAL2.0 and the connection doesn't drop (so far!) but I still have to setup PAL2.0 every time I want to connect to the wireless network here at Purdue. Is there a way to fix this?

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.