I don't think this is an Ubuntu problem per se -- it is likely caused by the interaction between your wireless chipset, software driver, and the software and hardware of the wireless access point or router.
I've seen this with various devices from completely different vendors, running different OS's, and issues with connecting with wireless routers/AP's from different enterprise vendors (Cisco, Meru, Aruba, etc.). In other words, it is likely not restricted to Ubuntu.
The driver situation in Linux is getting better and better, but you may want to track down specifics for your chipset and make sure you have the most recent drivers. Also, do some searches to see if there are known issues with the brand/model of your wireless router or AP and your hardware.
Often, the most recent driver can be found on the laptop or adapter vendor's website.
What is your computer model, wireless device model, and router model (i.e., what model of "Medialink")? lspci
and/or lshw
should help you find your wireless model and perhaps chipset.
Here's some generic info:
If you haven't already, run jockey-gtk
to check your driver update status. You can also use the Super key (sometimes known as the Windows key) to open the dash, then type in "driver". "Additional drivers" should appear as an application.
If nothing appears there, please check out the "Help" option there.
It will open an info page on proprietary drivers. At the bottom of that page, there's a link for more information, with a link to "Hardware & Drivers". Click through to that, scroll to "Common Problems", and finally, check the link which is titled, "Wireless network troubleshooter". If you're lucky, you'll find something helpful there as well.
Also see Supported Wireless cards and Ubuntu Wireless Networking Documentation.
Run the following commands, one line at a time in the terminal (CTRL+ALT+T):
echo "options iwlwifi 11n_disable=1" | sudo tee /etc/modprobe.d/iwlwifi.conf
sudo modprobe -rfv iwldvm
sudo modprobe -rfv iwlwifi
sudo modprobe -v iwlwifi
What does this do? The 11n_disable
option disables 802.11n features. Adding it to /etc/modprobe.d/iwlwifi.conf
makes the change persist after reboots (because it will be part of the module config). The modprobe -rfv
commands are removing the kernel modules iwldvm
and iwlwifi
, and finally the last line modprobe -v
is adding iwlwifi
back in.
To know what those kernel modules are/do, you can run modinfo <module name> | grep description
, which will tell you the following:
iwlwifi
is an Intel(R) Wireless WiFi driver for Linux (generic Intel drivers)
iwldvm
is Intel(R) Wireless WiFi Link AGN driver for Linux (more specific drivers)
Other suggestions
Now, check the settings in the router. WPA2-AES is preferred; not any WPA and WPA2 mixed mode and certainly not TKIP. Second, if your router is capable of N speeds, You may have better luck with a channel width of 20 MHz in the 2.4 GHz band instead of automatic 20/40 MHz. I also have better luck with a fixed channel, either 1, 6 or 11, rather than automatic channel selection. After making these changes, you may need to reboot the router.
Best Answer
You can install a better driver this way:
Note You will need to reinstall the driver after each kernel upgrade.
Update I made a DKMS version of same driver. It can be installed by
If you are on Ubuntu 14.04 or 15.04, I recommend to upgrade linux-firmware from same ppa.
In this case the driver will be automatically rebuilt after kernel upgrades.
In case you install from PPA, you do not need to install from git