[systemd-devel] radvd and sysctl systemd under Debian
William Hay
wish at dumain.com
Fri Jan 8 08:44:57 PST 2016
I'm running a Debian Jessie ARM system whose hardware I recently upgraded. This allowed me to upgrade
the kernel to the standard Jessie kernel and switch to systemd. However I am having a few issues with
getting radvd to start on boot.
Ther kernel is:
linux-image-3.16.0-4-armmp-lpae 3.16.7-ckt20-1+deb8u2
Which has CONFIG_IPV6=y meaning the various IPV6 sysctls should be available
as soon as the /proc filesystem is mounted.
/etc/sysctl.d/ contains only 99-sysctl.conf
which is a symlink pointing to /etc/sysctl.conf
which contains the following uncommented lines:
net.ipv4.ip_forward=1
net.ipv6.conf.default.forwarding=1
net.ipv6.conf.all.forwarding=1
net.ipv6.conf.ppp0.accept_ra=2
However on boot net.ipv6.conf.all.forwarding is set to 0
Running systemctl start systemd-sysctl by hand does not change this but
running sysctl -p does.
To me it looks like systemd is not updating the sysctls either at boot or
when explicitly instructed to do so.
However even if I run sysctl -p and update the above sysctls I still
cannot start radvd via systemctl. Journalctl -u radvd complains:
Jan 08 14:52:40 stylite radvd[1436]: Starting radvd:
Jan 08 14:52:40 stylite radvd[1436]: * IPv6 forwarding seems to be disabled.
Jan 08 14:52:40 stylite radvd[1436]: * See /usr/share/doc/radvd/README.Debian
Jan 08 14:52:40 stylite radvd[1436]: * radvd will *not* be started.
This message appears to come from /etc/init.d/radvd which checks if
/proc/sys/net/ipv6/conf/all/forwarding is present and contains the value 1
which it does.
Running the above init script by hand (/bin/sh -x /etc/init.d/radvd start )does i
not appear to execute the relevant code though instead an included file causes it
to try to start radvd via systemctl (makes sense on a systemd based system I guess).
AFACT the only way I can get radvd to start reliably is to either run the radvd
binary by hand or run
systemctl stop radvd
sysctl -p
systemctl start radvd
Despite radvd not being running in the first place.
I thought this might be something to do with socket activation but clients on the network don't
seem to pick up an IPV6 address/route until radvd is kicked in this manner.
Any help with getting the sysctls applied at boot and radvd started and serving addresses/routes
would be appreciated.
Thanks in advance
William
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.freedesktop.org/archives/systemd-devel/attachments/20160108/27d352fc/attachment.sig>
More information about the systemd-devel
mailing list