Bug 893678

Summary: No network with wicked
Product: [openSUSE] openSUSE Tumbleweed Reporter: kevin vandeventer <pilotgi>
Component: NetworkAssignee: wicked maintainers <wicked-maintainers>
Status: RESOLVED DUPLICATE QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None CC: aplanas, bchou, bwiedemann, hacker, mt, pilotgi, pwieczorkiewicz, raul.malea, snwint
Version: 201408*Flags: pwieczorkiewicz: needinfo? (pilotgi)
Target Milestone: ---   
Hardware: x86-64   
OS: openSUSE 13.2   
See Also: https://bugzilla.suse.com/show_bug.cgi?id=893665
http://bugzilla.suse.com/show_bug.cgi?id=891645
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Bug Depends on: 895447    
Bug Blocks:    
Attachments: requested wicked config file
requested wicked ip_addr log
requested wicked status log
requested wicked log
New wicked.log
wpa_supplicant log
supplicant log with correct file path
supplicant log using my assigned wireless card
configs.log per comment 1
status logs
wicked logs
ip address logs
routes log

Description kevin vandeventer 2014-08-26 23:30:04 UTC
User-Agent:       Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Firefox/31.0

As with previous snapshots of Factory, version 20140820 installed fine but I had no network with wicked. I configured my wireless with YaST with no problems and my wireless card was assigned wls5s5 but there is no connection. After entering 'sudo wicked show-config wlp5s5' I got:

wicked: wlp5s5 configuration applied to nanny
wicked: Interface wait time reached
wlp5s5 setup-in-progress

After 'wicked ifstatus all' here's the part referring to wlp5s5:

setup-in-progress
link: #3 state device-up, mtu 1500
type: wireless
config: compat:/etc/sysconfig/network/ifcfg-wlp5s5

lo was configured with addr 127.0.0.1/8

Configuring my network with NetworkManager was successful.

Reproducible: Always

Steps to Reproduce:
1.
2.
3.
Comment 1 Pawel Wieczorkiewicz 2014-09-10 10:45:21 UTC
Please attach the following logs:
‒ set DEBUG=all in /etc/sysconfig/network/config
‒ systemctl restart wickedd
‒ wicked --debug all ifup all # systemctl restart wicked
‒ wicked ifstatus all > status.log
‒ wicked show-config > configs.log
‒ journalctl -b -o short-iso > wicked.log
‒ ip addr show > ip_addr.log
‒ ip route show > routes.log
‒ ip -6 route show >> routes.log
Comment 2 kevin vandeventer 2014-09-13 20:22:58 UTC
Created attachment 606263 [details]
requested wicked config file

I X'd out my passphrase in this file
Comment 3 kevin vandeventer 2014-09-13 20:24:39 UTC
Created attachment 606264 [details]
requested wicked ip_addr log
Comment 4 kevin vandeventer 2014-09-13 20:25:36 UTC
Created attachment 606265 [details]
requested wicked status log
Comment 5 kevin vandeventer 2014-09-13 20:26:52 UTC
Created attachment 606266 [details]
requested wicked log

Routes log was empty.
Comment 6 Pawel Wieczorkiewicz 2014-09-16 21:32:55 UTC
Are you running both NetworkManager and wicked?

2014-09-13T14:56:13-0500 linux-6268 NetworkManager[824]: <info> NetworkManager state is now DISCONNECTED
2014-09-13T14:56:13-0500 linux-6268 dbus[809]: [system] Activating via systemd: service name='org.freedesktop.nm_dispatcher' unit='dbus-org.freedesktop.nm-dispatcher.service'
2014-09-13T14:56:13-0500 linux-6268 NetworkManager[824]: (NetworkManager:824): GLib-CRITICAL **: Source ID 23 was not found when attempting to remove it
2014-09-13T14:56:13-0500 linux-6268 NetworkManager[824]: <info> exiting (success)
2014-09-13T14:56:13-0500 linux-6268 dbus[809]: [system] Successfully activated service 'org.freedesktop.nm_dispatcher'
2014-09-13T14:56:14-0500 linux-6268 kernel: No iBFT detected.
2014-09-13T14:56:14-0500 linux-6268 kernel: IPv6: ADDRCONF(NETDEV_UP): wlp5s5: link is not ready
2014-09-13T14:56:14-0500 linux-6268 wpa_supplicant[803]: ioctl[SIOCSIWENCODEEXT]: Invalid argument
2014-09-13T14:56:14-0500 linux-6268 wpa_supplicant[803]: ioctl[SIOCSIWENCODEEXT]: Invalid argument
2014-09-13T14:56:14-0500 linux-6268 wickedd[2173]: unable to translate eap protocol AKA
2014-09-13T14:56:14-0500 linux-6268 wickedd[2173]: unable to translate eap protocol AKA'
2014-09-13T14:56:14-0500 linux-6268 wickedd[2173]: unable to translate eap protocol FAST
2014-09-13T14:56:14-0500 linux-6268 wickedd[2173]: lo: address 127.0.0.1 covered by a static lease
2014-09-13T14:56:14-0500 linux-6268 wickedd[2173]: lo: address ::1 covered by a static lease
2014-09-13T14:56:44-0500 linux-6268 wicked[2176]: device wlp5s5 failed: operation timed out
2014-09-13T14:56:44-0500 linux-6268 wicked[2176]: lo              up
2014-09-13T14:56:44-0500 linux-6268 wicked[2176]: wlp5s5          setup-in-progress

If so, the coexistance is not supported.
Please provide the output of: 
systemctl show -p Id network.service
Comment 7 kevin vandeventer 2014-09-16 22:48:49 UTC
Created attachment 606606 [details]
New wicked.log
Comment 8 kevin vandeventer 2014-09-16 22:51:04 UTC
The problem was I didn't log out/in after disabling NetworkManager. Now show Id network.service is Id=wicked.service.

I attached a new wicked.log.
Comment 9 Graham Davis 2014-09-20 05:53:32 UTC
Just like to say that I've got the same trouble. I've used the same settings as I did with "ifup" but can get no success making a connection with "Wicked" though NetworkManager" works OK. 

Also like to mention that I can find no documentation for the new system. When I search for some, all I find is some for WICD, pronounced "wicked" which, I am told, has nothing to do with "Wicked".
Comment 10 Pawel Wieczorkiewicz 2014-09-22 08:44:22 UTC
(In reply to kevin vandeventer from comment #8)
> The problem was I didn't log out/in after disabling NetworkManager. Now show
> Id network.service is Id=wicked.service.
> 
> I attached a new wicked.log.

Thank you for the logs. To fully understand the problem I am afraid I would need to look into wpa_supplicant logs too.
Could you please enable wpa_supplicant into debugging mode and collect them? Thank you.

This is what wpa_supplicant manpage says about debugging mode:

The easiest way to debug problems, and to get debug log for bug reports, is to start wpa_supplicant on foreground with debugging enabled:


wpa_supplicant -c/etc/wpa_supplicant.conf -iwlan0 -d
Comment 11 Pawel Wieczorkiewicz 2014-09-22 08:47:26 UTC
(In reply to Graham Davis from comment #9)
> Just like to say that I've got the same trouble. I've used the same settings
> as I did with "ifup" but can get no success making a connection with
> "Wicked" though NetworkManager" works OK. 
> 

Please provide logs then as described in comments c#1 and c#10. Thank you.

> Also like to mention that I can find no documentation for the new system.
> When I search for some, all I find is some for WICD, pronounced "wicked"
> which, I am told, has nothing to do with "Wicked".

A lot of information you can find in the wicked's manpages as well as on  
https://github.com/openSUSE/wicked website (see doc/ and samples/ and README etc.)
Comment 12 kevin vandeventer 2014-09-23 20:21:03 UTC
(In reply to Pawel Wieczorkiewicz from comment #10)
> (In reply to kevin vandeventer from comment #8)
> > The problem was I didn't log out/in after disabling NetworkManager. Now show
> > Id network.service is Id=wicked.service.
> > 
> > I attached a new wicked.log.
> 
> Thank you for the logs. To fully understand the problem I am afraid I would
> need to look into wpa_supplicant logs too.
> Could you please enable wpa_supplicant into debugging mode and collect them?
> Thank you.
> 
> This is what wpa_supplicant manpage says about debugging mode:
> 
> The easiest way to debug problems, and to get debug log for bug reports, is
> to start wpa_supplicant on foreground with debugging enabled:
> 
> 
> wpa_supplicant -c/etc/wpa_supplicant.conf -iwlan0 -d

I installed Beta1 today and still no ip address with wicked. The result of 'sudo wicked ifup wlp5s5' was:

wicked: device wlp5s5 failed: operation timed out                                    
wlp5s5          setup-in-progress  

I'm attaching a log generated by the command you suggested. There was no /etc/wpa_supplicant.conf file or directory found.
Comment 13 kevin vandeventer 2014-09-23 20:23:08 UTC
Created attachment 607441 [details]
wpa_supplicant log
Comment 14 kevin vandeventer 2014-09-24 19:43:13 UTC
Created attachment 607719 [details]
supplicant log with correct file path

I used the recommended command but changed the file path to match my system.
Comment 15 kevin vandeventer 2014-09-24 19:47:24 UTC
Created attachment 607720 [details]
supplicant log using my assigned wireless card

I changed the command to use iwlp5s5 instead of iwlan0. If I don't send it to a log file, the command keeps outputing the same results over and over.
Comment 16 kevin vandeventer 2014-09-24 19:50:26 UTC
You can ignore my comment in comment#12 about no /etc/wpa_supplicant directory. The file path was wrong.
Comment 17 Marius Tomaschewski 2014-09-30 21:12:45 UTC
I've set up a test network with 3 different client/HWs (Atheros, Intel,
Realtek) connected to a AVM Fritz!Box 7270 and it basically works fine
(you may have to install firmware packages, e.g. kernel- or ipw-fimware).
[Also same clients on D-Link DIR-850L and Fritz!Box 6360-KD a bit].

Simple config, e.g.:

# cat /etc/sysconfig/network/ifcfg-wlp5s0 
NAME='AR242x / AR542x Wireless Network Adapter (PCI-Express)'
STARTMODE='auto'
BOOTPROTO='dhcp'
DHCLIENT_SET_DEFAULT_ROUTE='yes'

# Global settings
#WIRELESS_AP_SCANMODE='1'
#WIRELESS_WPA_DRIVER='nl80211,wext'

# Network settings
WIRELESS_ESSID='Lab5'
WIRELESS_AUTH_MODE='psk'
WIRELESS_MODE='Managed'
WIRELESS_WPA_PSK='XXXXXXXX'


When I see the current bug reports, the most common problems seem
to be triggered by a HW/firmware issues or because of improper
switching between NetworkManaged to wicked and back [bnc#895447].

Basically the old service remains running and new started or there
are multiple dhcp clients running (dhclient started manually or by
NetworkManager vs. wickedd-dhcp*), which conflict at runtime.

It is required to _stop_ the previous network.service before you
enable an another one (see also openSUSE-12.3 Release notes about
network.service).

# Look what's currently running:
systemctl     show      network.service
  or
systemctl -p Id show    network.service

# whatever is running there, stop it:
systemctl     is-active network.service && \
systemctl     stop      network.service

# disable the current network service:
systemctl     disable NetworkManager.service
   or
systemctl     disable wicked.service

# enable the new one:
systemctl     enable NetworkManager.service
   or
systemctl     enable wicked.service

# start the new one:
systemctl     start      network.service
Comment 18 kevin vandeventer 2014-10-01 10:02:34 UTC
I followed your steps to shut down NetworkManager and then start wicked. Still no IP address with my wireless card with wicked. 'ifconfig' shows wlp5s5 is up but no connection.

My /etc/sysconfig/network/ifcfg-wlp5s5 file has similar entries as the example, but I have no line like this:

#WIRELESS_WPA_DRIVER='nl80211,wext'
Comment 19 Pawel Wieczorkiewicz 2014-10-01 10:35:56 UTC
(In reply to kevin vandeventer from comment #18)
> I followed your steps to shut down NetworkManager and then start wicked.
> Still no IP address with my wireless card with wicked. 'ifconfig' shows
> wlp5s5 is up but no connection.
> 

Could you please provide logs reflecting this situation (Best would be logs like mentioned in comment#1)

> My /etc/sysconfig/network/ifcfg-wlp5s5 file has similar entries as the
> example, but I have no line like this:
> 
> #WIRELESS_WPA_DRIVER='nl80211,wext'

Should not matter as you use nl80211 anyway.
Comment 20 Marius Tomaschewski 2014-10-01 13:49:32 UTC
A "systemctl stop NetworkManager" is not sufficient -- there is a NM setting
causing to stop NM only, but not the dhclient processes started by NM...

See also bug#895447 => "systemctl --kill-who=all kill NetworkManager".

We're working on a documentation how to do it manually -- here the a paste
from current draft:

"[...]
Procedure to enable NetworkManager manually:

1) First, stop the running network (wicked) service to get a clean state (configuration may differ):

systemctl     is-active network.service && \
systemctl     stop      network.service

2) Then, stop the wicked-daemon services as well:

systemctl     is-active wickedd.service && \ 
systemctl     stop      wickedd.service

3) Disable wicked, enable NetworkManager.service (creates alias link):

systemctl disable wicked.service 
systemctl --force enable NetworkManager.service

4) Start the NetworkManager service via the alias link:

systemctl     start     network.service

or directly:

systemctl start NetworkManager.service


Procedure to disable NetworkManager and switch to wicked.service manually:

1) Stop the running NetworkManager.service:

systemctl     is-active NetworkManager.service && \ 
systemctl --kill-who=all kill NetworkManager.service

Note: The normal NetworkManager.service stop action stops NetworkManager, but leaves processes such as dhcp clients running to not break network connectivity when it is restarted on update or there is a remote fs mounted while shutdown. The --kill-who=all kill action ensures to stop them too as they conflict with the wicked service using a different implementation.

2) Disable NetworkManager, enable wicked.service (creates alias link):

systemctl disable NetworkManager.service 
systemctl --force enable wicked.service

3) Start the new network.service, which now is wicked.service:

systemctl start wicked.service

or via the alias link:

systemctl start network.service

The wickedd daemon service are started automatically via dependencies.[...]"
Comment 21 kevin vandeventer 2014-10-01 22:20:15 UTC
(In reply to Marius Tomaschewski from comment #20)
> A "systemctl stop NetworkManager" is not sufficient -- there is a NM setting
> causing to stop NM only, but not the dhclient processes started by NM...
> 
> See also bug#895447 => "systemctl --kill-who=all kill NetworkManager".
> 
> We're working on a documentation how to do it manually -- here the a paste
> from current draft:
> 
> "[...]
> Procedure to enable NetworkManager manually:
> 
> 1) First, stop the running network (wicked) service to get a clean state
> (configuration may differ):
> 
> systemctl     is-active network.service && \
> systemctl     stop      network.service
> 
> 2) Then, stop the wicked-daemon services as well:
> 
> systemctl     is-active wickedd.service && \ 
> systemctl     stop      wickedd.service
> 
> 3) Disable wicked, enable NetworkManager.service (creates alias link):
> 
> systemctl disable wicked.service 
> systemctl --force enable NetworkManager.service
> 
> 4) Start the NetworkManager service via the alias link:
> 
> systemctl     start     network.service
> 
> or directly:
> 
> systemctl start NetworkManager.service
> 
> 
> Procedure to disable NetworkManager and switch to wicked.service manually:
> 
> 1) Stop the running NetworkManager.service:
> 
> systemctl     is-active NetworkManager.service && \ 
> systemctl --kill-who=all kill NetworkManager.service
> 
> Note: The normal NetworkManager.service stop action stops NetworkManager,
> but leaves processes such as dhcp clients running to not break network
> connectivity when it is restarted on update or there is a remote fs mounted
> while shutdown. The --kill-who=all kill action ensures to stop them too as
> they conflict with the wicked service using a different implementation.
> 
> 2) Disable NetworkManager, enable wicked.service (creates alias link):
> 
> systemctl disable NetworkManager.service 
> systemctl --force enable wicked.service
> 
> 3) Start the new network.service, which now is wicked.service:
> 
> systemctl start wicked.service
> 
> or via the alias link:
> 
> systemctl start network.service
> 
> The wickedd daemon service are started automatically via dependencies.[...]"
I tried this method also but still no IP address for wlp5s5. I tried rebooting but that didn't help. 

The results of 'wicked ifup wlp5s5' was the same as before:

wicked: device wlp5s5 failed: operation timed out
wlp5s5  setup-in-progress
Comment 22 kevin vandeventer 2014-10-01 22:34:53 UTC
Is it relevant that /etc/wicked/ifconfig is empty?
Comment 23 Pawel Wieczorkiewicz 2014-10-02 12:37:04 UTC
(In reply to kevin vandeventer from comment #22)
> Is it relevant that /etc/wicked/ifconfig is empty?

No it does not matter. Wicked supports different sources of configuration e.g. compat (/etc/sysconfig/network/ifcfg-* files) which is the default one and its native XML format (/etc/wicked/ifconfig/*.xml files) and firmware which is used for iBFT configuration.

You use compat, so /etc/wicked/ifconfig/ can be left empty.
Comment 24 kevin vandeventer 2014-10-05 00:01:40 UTC
Created attachment 608962 [details]
configs.log per comment 1
Comment 25 kevin vandeventer 2014-10-05 00:03:13 UTC
Created attachment 608963 [details]
status logs
Comment 26 kevin vandeventer 2014-10-05 00:03:57 UTC
Created attachment 608964 [details]
wicked logs
Comment 27 kevin vandeventer 2014-10-05 00:06:53 UTC
Created attachment 608965 [details]
ip address logs
Comment 28 kevin vandeventer 2014-10-05 00:16:49 UTC
I've attached new logs after following the latest manual shutdown/start up commands. After creating these logs, I connected a ethernet cable for the first time. I was able to get an ip address with wicked via ethernet. 

As a gentle reminder, I opened this bug after a fresh install of Beta 1 on my desktop. The default network service after the install is wicked and there was no network connection after setup with YaST. 

If there is a conflict between NetworkManager and wicked it must be there without me even starting NM for the first time after a fresh install. 

I also noticed in the latest wicked log that it says NetworkManager is starting just like in the previous log.
Comment 29 kevin vandeventer 2014-10-05 00:19:47 UTC
Created attachment 608966 [details]
routes log

I've attached the routes log after establishing a connection via ethernet.
Comment 30 Marius Tomaschewski 2014-10-27 15:16:51 UTC
Your logs show, that NetworkManager is still running.

Use:
  systemctl --kill-who=all kill NetworkManager.service
  systemctl stop    NetworkManager.service
  systemctl disable NetworkManager.service
  systemctl --force enable wicked.service
  systemctl --force enable wpa_supplicant.service
  systemctl daemon-reload

then either:
  systemctl restart wpa_supplicant.service
  systemctl restart wickedd.service
  systemctl restart wicked.service
or:
  reboot

finally, provide the output of (redirect to file to attach it later):
  systemctl status network.service wickedd.service wpa_supplicant.service NetworkManager.service
  ps axwww | grep -E "dhc|NetworkManager" | grep -v grep

the results should be:
  wicked.service (network.service), wickedd.service, wpa_supplicant.service
  -> loaded/enabled and active
and
  NetworkManager.service
  -> loaded/_disabled_ and _inactive
and there is no dhcp client other than wickedd-dhcp* running.

(In reply to kevin vandeventer from comment #28)
> If there is a conflict between NetworkManager and wicked it must be there
> without me even starting NM for the first time after a fresh install. 

_yes_

yast2-network is unable to switch properly between NetworkManager and
wicked and stop NetworkManager properly/completely.

When NetworkManager and wicked* are running at the same time, both are
trying to (re)configure wpa_supplicant and both are statring dhcp clients
and (re)configuring the same interfaces.

That is, as long as they run at the same time, it will not work and it
is simply a duplicate of the another bug -> I'm resolving as such now.

When you boot and wicked is unable to set up an interface _and_ there
are no conflicting engines such as NetworkManager running -> please
open a new bug report and provide logs as requested.

*** This bug has been marked as a duplicate of bug 895447 ***
Comment 31 Graham Davis 2015-09-05 12:41:12 UTC
This bug was marked as a duplicate of #895447 but I don't believe that it is. In any case, it has been solved in recent releases of Tumbleweed. I've just installed Leap 42.1-m2 and, not only did it work, it worked during the installation phase! I think this was also the case with m1. I've never before been able to get wireless to work during installation from DVD.

One new thing I noticed is that ifup needed the "IP4 forwarding" box to be ticked before it would work; this is no longer the case with "Wicked". One less thing to remember is good - especially at my age.

Thanks to whoever fixed this.