You are not logged in.
I use a wireless WPA2 connection on my Thinkpad T60, which was working flawlessly until the last big update(netcfg, systemd, new kernel, etc) I performed.
First, here is my current config, as updated after the update to fit with the new netcfg standard.
rc.conf:
DAEMONS=(<left out> iptables !network @net-profiles)/etc/conf.d/netcfg:
#NETWORKS=(menu)
NETWORKS=(@wlanHome @wlanWork)
## Specify the name of your wired interface for net-auto-wired
WIRED_INTERFACE="eth0"
## Specify the name of your wireless interface for net-auto-wireless
WIRELESS_INTERFACE="wlan0"wlanHome:
CONNECTION="wireless"
DESCRIPTION="A wpa_supplicant configuration based wireless connection"
ESSID="MyESSID"
INTERFACE="wlan0"
SECURITY="wpa-config"
WPA_CONF="/etc/network.d/wpa_supplicant_home.conf"
IP="dhcp" wpa_supplicant_home.conf
### wpa_supplicant configuration file ###############################
#update_config=1
# global configuration (shared by all network blocks)
ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=users
# IEEE 802.1X/EAPOL version
eapol_version=1
# AP scanning/selection
ap_scan=1
# EAP fast re-authentication
fast_reauth=1
# networks
network={
ssid="MyESSID"
psk=mypsk
}After updating to the most recent systemd, which I actually do not use but I need udev, and the newest netcfg and kernel, I get the following issues. In chronological order from boot to a connection:
My driver is loaded, and wlan0 appears to be not ready
[ 8.661036] iwl3945: Intel(R) PRO/Wireless 3945ABG/BG Network Connection driver for Linux, in-tree:s
[ 8.661040] iwl3945: Copyright(c) 2003-2011 Intel Corporation
[ 8.717930] iwl3945 0000:03:00.0: Tunable channels: 13 802.11bg, 23 802.11a channels
[ 8.717934] iwl3945 0000:03:00.0: Detected Intel Wireless WiFi Link 3945ABG
[ 8.718089] iwl3945 0000:03:00.0: irq 47 for MSI/MSI-X
[ 8.849617] ieee80211 phy0: Selected rate control algorithm 'iwl-3945-rs'
[ 16.247700] iwl3945 0000:03:00.0: loaded firmware version 15.32.2.9
[ 16.317137] ADDRCONF(NETDEV_UP): wlan0: link is not readyThen, My system boots and I get the following error:
find: "/var/run/network//suspend/": No such file or directoryAccording to the wiki, this is a known bug and you can just create the directory. However, it does already exist, and it gets correctly created after boot if it doesn't. Anyway, it does not seem to give any problems, except that I did not have it before.
With my system up and running, I do not appear to have a connection. The led indicating whether it tries to connect is off too. So, I use the command(omitting lines I forgot, but the core is there):
$ netcfg wlanHome # wpa_supplicant -i wlan0 -c /etc/network.d/wpa_supplicant_home.conf does the same
ctrl_iface exists and seems to be in use - cannot override it
Delete '/var/run/wpa_supplicant/wlan0' manually if it is not used anymoreAfter deleting the file, I try again and it does connect.
From dmesg:
[ 286.333845] ADDRCONF(NETDEV_UP): wlan0: link is not ready
[ 288.413937] ADDRCONF(NETDEV_UP): wlan0: link is not ready
[ 291.910604] wlan0: authenticate with 00:1f:33:bd:01:c7 (try 1)
[ 291.910714] wlan0: deauthenticating from 00:1f:33:bd:01:c7 by local choice (
reason=2)
[ 291.911019] wlan0: authenticate with 00:1f:33:bd:01:c7 (try 1)
[ 291.916739] wlan0: authenticated
[ 291.921285] wlan0: failed to insert Dummy STA entry for the AP (error -17)
[ 291.923668] wlan0: associate with 00:1f:33:bd:01:c7 (try 1)
[ 291.927818] wlan0: RX AssocResp from 00:1f:33:bd:01:c7 (capab=0x411 status=0
aid=3)
[ 291.927829] wlan0: associated
[ 291.927835] wlan0: moving STA 00:1f:33:bd:01:c7 to state 1
[ 291.927840] wlan0: moving STA 00:1f:33:bd:01:c7 to state 2
[ 291.929500] ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[ 292.982214] wlan0: moving STA 00:1f:33:bd:01:c7 to state 3
[ 301.943222] wlan0: disassociating from 00:1f:33:bd:01:c7 by local choice (re
ason=3)
etc....With my connection working, I noticed that it really loses the connection often, as much as twice a minute. Dmesg show it keeps disassociating and reassociating.
So, while I can fix the above in a dirty way by letting the wpa_supplicant/wlan0 be removed on every boot, and by writing a script that does a quick module remove and add, I would prefer a cleaner and more permanent solution. Any thoughts or suggestions?
Last edited by Firestone (2012-06-12 12:54:04)
Offline
While it may be a module/driver problem I encourage you to try Wicd which usually works smooth.
Enjoying i3wm w/ lifebar + j4-dmenu-desktop + tab_windows / fish shell / Emacs / tmux / Konsole / KDE apps
Arch + Linux-libre kernel: ParabolaGNULinux.org
Offline
After a good read, and some trial and error, I have discovered the cause.
My netcfg config:
NETWORKS=(@wlanHome @wlanWork)
...Both apply to the same interface; wlan0. This causes race conditions, which leads to the issue described in the opening post. Changing it to the following fixed it:
NETWORKS=(wlanHome wlanWork)
...Last edited by Firestone (2012-06-12 12:53:39)
Offline
Instead of backgrounding all your profiles (which indeed causes race conditions if multiple profiles use the same interface), you can background net-profiles in rc.conf:
DAEMONS=(... @net-profiles ...)
You'll have the benefits of a backgrounded startup, without the drawbacks of interfering profiles. The only catch is that daemons after net-profiles can no longer be sure to have a working network, but in case you background all your profiles that is not the case anyway.
Offline