Comment 23 for bug 53387

Revision history for this message
Heinrich Kruger (heindsight-deactivatedaccount) wrote :

I have been having the same problem. When I boot up, my eth1 is brought up, but wpa_supplicant is not started, so I have to manually bring eth1 down and up again to get my wireless networking working. Disabling the ifupdown udev rule has fixed the problem, so I'm fairly certain that this bug is caused by udev bringing up the interface too early, so that wpa_supplicant fails to start. I thought perhaps the problem might be that / is still mounted read-only when udev brings up the interface?

Perhaps a fix would be to somehow modify the udev rule so that it does not trigger at boot time? I don't know if there's a way to do this, but surely the intention of this rule is to do hotplugging of network devices after bootup, rather than bringing up interfaces at boot (that's what /etc/init.d/networking is for). So perhaps instead of bringing up the interface, the udev rule should call a script that tests whether the system is booted up already and then brings up the interface.

Here's my interfaces file:

auto lo eth1

iface lo inet loopback

iface eth0 inet dhcp

iface eth1 inet manual
    wpa_roam /etc/wpa_supplicant.conf

iface solis-air inet dhcp

iface huisnet inet static
    address 192.168.0.2
    netmask 255.255.255.0
    broadcast 192.168.0.255

iface default inet dhcp

And my wpa_supplicant.conf:

# allow config file overwrite
update_config=1

# path to UNIX socket control interface
ctrl_interface=/var/run/wpa_supplicant

# scanning mode
ap_scan=2

# auth timeout
dot11RSNAConfigSATimeout=90

# Ad-Hoc home network
network={
    priority=2
    id_str="huisnet"
    scan_ssid=1
    ssid="Hein"
    mode=1
    key_mgmt=NONE
    auth_alg=SHARED
    group=WEP104
    wep_key0=<key>
    wep_tx_keyidx=0
}

# SOLIS_AIR
network={
    priority=2
    id_str="solis-air"
    ssid="SOLIS-AIR"
    scan_ssid=1
    key_mgmt=IEEE8021X
    eap=TTLS
    phase2="auth=PAP"
    identity="<username>"
    password="<password>"
}

# other (open)
network={
    key_mgmt=NONE
}