Hello. I'm not sure if this is the right place to ask this sort of question, but I'm having trouble configuring my router for a home network. Here is the setup:
My ISP provided me with a usual "router" that acts as a modem, router, hotspot, and switch all in one. I will refer to this device as a Wi-Fi device to differentiate it from the router I am trying to set up. The router is a small PC with four Ethernet interfaces. It runs Archlinux (fresh installation) with Systemd 256.6. The router is connected to the Wi-Fi device using an Ethernet cable. There is also a third device, a laptop with an updated Archlinux, which I will refer to as a client. It is connected to the router using Ethernet cable. My ISP supports IPv6 prefix delegation; however, I'm struggling to make it work correctly. The problem is that the client device only acquires an address from the delegated network when the networkd daemon on the router is restarted. If the client is unplugged and then plugged back into the router, or if its network daemon is restarted, or the `networkctl reconfigure enp*` command is executed, it fails to assign an address to the interface. >From the logs I attached below, particularly the tcpdump.log file, it appears that the router advertises the delegated network only once on a downlink. I'm not sure if this is normal behavior, an issue, or the root of the problem. I'm not a network expert and would appreciate any help you can offer. Please let me know if there is more information I should provide to debug the problem. I have attached router-networkd.log.gz, client-networkd.log.gz, and tcpdump.log.gz files, all captured at the same time. Around 14:53:52, I reconfigured the interface using the command `networkctl reconfigure enp*`. Bellow I share router and client configuration: Router's `/etc/systemd/netword/15-uplink.network`: ``` [Match] Name=enp2s0 [Network] DHCP=yes IPv6AcceptRA=yes IPv6Forwarding=yes [DHCPv6] WithoutRA=solicit PrefixDelegationHint=::/56 ``` Router's `15-downlink.network`: ``` [Match] Name=enp3s0 [Network] DHCP=no DHCPPrefixDelegation=yes IPv6SendRA=yes IPv6AcceptRA=no IPv6Forwarding=yes [DHCPPrefixDelegation] UplinkInterface=enp2s0 SubnetId=1 Announce=true ``` Client's `20-wired.network`: ``` [Match] Name=enp* [Network] DHCP=yes IPv6AcceptRA=yes [DHCPv4] RouteMetric=100 [DHCPv6] RouteMetric=100 [IPv6AcceptRA] RouteMetric=100 UseDNS=yes ``` The laptop is also connected to the Wi-Fi network via the wlan0 interface, but it makes no difference if it isn't connected. Also note that IPv6Forwarding is enabled in `networkd.conf`.
client-networkd.log.gz
Description: application/gzip
router-networkd.log.gz
Description: application/gzip
tcpdump.log.gz
Description: application/gzip