FS#24793 - [ifplugd] no longer works by itself, it requires net-auto-wired

Attached to Project: Arch Linux
Opened by Arthur Huillet (ahuillet) - Monday, 20 June 2011, 07:16 GMT
Last edited by Evangelos Foutras (foutrelis) - Sunday, 26 May 2013, 21:53 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Thomas Bächler (brain0)
Architecture All
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 3
Private No

Details

Starting ifplugd as a daemon in rc.conf directly used to be able to autodetect the link and establish an ethernet connection.
However, following the changes around network setup at bootup done recently, ifplugd stopped working that way and seems to require net-auto-wired.

When starting ifplugd directly, /var/log/everything.log contains the following error messages :

ifplugd(eth0)[1581]: Executing '/etc/ifplugd/ifplugd.action eth0 up'.
ifplugd(eth0)[1581]: client: Warning: This functionality is deprecated.
ifplugd(eth0)[1581]: client: Please refer to /etc/rc.conf on how to define a single wired
ifplugd(eth0)[1581]: client: connection, or use a utility such as netcfg.
ifplugd(eth0)[1581]: client: up: error fetching interface information: Device not found
ifplugd(eth0)[1581]: client: eth0 Link encap:Ethernet HWaddr 00:24:E8:CE:4C:03
ifplugd(eth0)[1581]: client: inet6 addr: fe80::224:e8ff:fece:4c03/64 Scope:Link
ifplugd(eth0)[1581]: client: UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
ifplugd(eth0)[1581]: client: RX packets:0 errors:0 dropped:0 overruns:0 frame:0
ifplugd(eth0)[1581]: client: TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
ifplugd(eth0)[1581]: client: collisions:0 txqueuelen:1000
ifplugd(eth0)[1581]: client: RX bytes:0 (0.0 b) TX bytes:668 (668.0 b)
ifplugd(eth0)[1581]: client: Interrupt:10 Memory:f6ae0000-f6b00000
ifplugd(eth0)[1581]: client: lo Link encap:Local Loopback
ifplugd(eth0)[1581]: client: inet addr:127.0.0.1 Mask:255.0.0.0
ifplugd(eth0)[1581]: client: inet6 addr: ::1/128 Scope:Host
ifplugd(eth0)[1581]: client: RX packets:0 errors:0 dropped:0 overruns:0 frame:0
ifplugd(eth0)[1581]: client: TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
ifplugd(eth0)[1581]: client: collisions:0 txqueuelen:0
ifplugd(eth0)[1581]: client: RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
ifplugd(eth0)[1581]: client: Usage: inet_route [-vF] del {-host|-net} Target[/prefix] [gw Gw] [metric M] [[dev] If]
ifplugd(eth0)[1581]: client: inet_route [-vF] add {-host|-net} Target[/prefix] [gw Gw] [metric M]
ifplugd(eth0)[1581]: client: [netmask N] [mss Mss] [window W] [irtt I]
ifplugd(eth0)[1581]: client: [mod] [dyn] [reinstate] [[dev] If]
ifplugd(eth0)[1581]: client: inet_route [-vF] add {-host|-net} Target[/prefix] [metric M] reject
ifplugd(eth0)[1581]: client: inet_route [-FC] flush NOT supported

I believe that /etc/ifplugd/ifplugd.action has not been adapted to the changes in /etc/rc.d/network and should be.

Thanks
This task depends upon

Closed by  Evangelos Foutras (foutrelis)
Sunday, 26 May 2013, 21:53 GMT
Reason for closing:  Won't fix
Additional comments about closing:  ifplugd.action was dropped in ifplugd 0.28-12.
Comment by Rémy Oudompheng (remyoudompheng) - Sunday, 21 August 2011, 12:09 GMT
Hello, is your rc.conf file adapted to latest initscripts ?
Comment by Arthur Huillet (ahuillet) - Sunday, 21 August 2011, 12:12 GMT
I used to run ifplugd as a daemon by itself, independantly from net-auto-wired & friends. It worked fine.
Now, I've modified rc.conf to make use of net-auto-wired, and everything works smoothly again, but ifplugd "on its own" should, as far as I can tell, be working as well and it's not the case (see my report).

To answer your question: yes, it is adapted, but I cannot be 100% sure that it was when I did this report. However, it should have no impact since ifplugd wasn't using anything from rc.conf - or am I missing something?

Thanks
Comment by Karl Nack (karlnack) - Saturday, 01 October 2011, 02:04 GMT
I'm a new user, so I don't know when this changed, but the problem appears to be in "/etc/ifplugd/ifplugd.action". That script simply calls "/etc/rc.d/network ifup" and "/etc/rc.d/network ifdown". However, looking in the network script, those functions are deprecated and apparently rely on an obsolete syntax in rc.conf. Changing ifplugd.action to call "/etc/rc.d/network start" and "/etc/rc.d/network stop" gets it working again. I've attached my current, working script for reference.
Comment by Greg (dolby) - Saturday, 17 November 2012, 06:10 GMT
Is this still relevant with systemd and new versions of netcfg?
Comment by Arthur Huillet (ahuillet) - Sunday, 26 May 2013, 20:53 GMT
No, this is no longer relevant. Closing.

Loading...