</varlistentry>
<varlistentry>
<term><varname>IPv6AcceptRouterAdvertisements=</varname></term>
- <listitem><para>Configures Accept Router Advertisements.
- This is enabled if local forwarding is disabled.
- Disabled if local forwarding is enabled.
- Takes a boolean. Defaults to unset.
- </para></listitem>
+ <listitem><para>Force the setting of <filename>accept_ra</filename>
+ (router advertisements) setting for the interface.
+ When unset, the kernel default is used, and router
+ advertisements are accepted only when local forwarding
+ is disabled for that interface.
+ Takes a boolean. If true, router advertisements are
+ accepted, when false, router advertisements are ignored,
+ independently of the local forwarding state.</para>
+
+ <para>See
+ <ulink url="https://www.kernel.org/doc/Documentation/networking/ip-sysctl.txt">ip-sysctl.txt</ulink>
+ in the kernel documentation, but note that systemd's
+ setting of <constant>1</constant> corresponds to
+ kernel's setting of <constant>2</constant>.</para>
+ </listitem>
</varlistentry>
<varlistentry>
<term><varname>Bridge=</varname></term>
* disabled if local forwarding is enabled).
* If set, ignore or enforce RA independent of local forwarding state.
*/
- if (link->network->ipv6_accept_ra < 0) {
+ if (link->network->ipv6_accept_ra < 0)
/* default to accept RA if ip_forward is disabled and ignore RA if ip_forward is enabled */
v = "1";
- } else if (link->network->ipv6_accept_ra > 0) {
+ else if (link->network->ipv6_accept_ra > 0)
/* "2" means accept RA even if ip_forward is enabled */
v = "2";
- } else {
+ else
/* "0" means ignore RA */
v = "0";
- }
+
p = strjoina("/proc/sys/net/ipv6/conf/", link->ifname, "/accept_ra");
r = write_string_file(p, v, 0);