1

I have built a Linux based router for a network testing environment. The machine has 4 physical ethernet ports

  1. wan
  2. lan0
  3. lan1
  4. lan2

All 3 lan* interfaces are bridged on my lan device. I am running dnsmasq to provide DHCP/DNS on the lan interface. I am trying to use SLAAC IPv6 addresses instead of DHCPv6 assigned addresses and am using DHCPv6 for other information (so stateless DHCPv6). All other computers on my lan correctly assign themselves addresses via SLAAC. However even though dnsmasq is sending router advertisements on the lan interface my wan interface is somehow seeing it and autoconfiguring itself. I have run wireshark on my wan interface and there are no incoming router advertisements actually coming over the network.

I have even tried turning off slaac on my wan interface by setting the net.ipv6.conf.wan.autoconf key to 0 via sysctl but it still gets an address.

Is there any other way that this could be happening.

1
  • I'm under the impression that a host will undergo stateless configuration for a network prefix if and only if the router advertisement has an option block for this network prefix where the 'A' flag is set. Can you confirm that in your RA message (icmpv6.type=134), the option block corresponding to the /64 network for which you get a SLAAC address has it == '0' (unset)? Is your wan interface running a dhcp6 client to get a prefix from upstream (e.g. dhcpv6-PD)?
    – init_js
    Commented Sep 6, 2016 at 4:52

1 Answer 1

0

The problem turns out not to be network or kernel related but rather related to systemd running on this system. systemd-networkd isn't filtering the multicast messages related to router advertisement appropriately or respecting the sysctl values for turning slaac off for a interface. So it was processing the RA and adding the IP itself.

2
  • How did you fix it?
    – John Oxley
    Commented Mar 3, 2019 at 22:55
  • I stopped using systemd-networkd. They may have since fixed the issue though.
    – Matt
    Commented Jul 12, 2019 at 14:29

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .