| 13 Jan 2026 |
hexa | Redacted or Malformed Event | 23:17:23 |
hexa | networkConfig.LinkLocalAddressing = "no";
linkConfig.RequiredForOnline = "carrier";
| 23:25:35 |
| 14 Jan 2026 |
kdn | those:
# /etc/systemd/network/40-kdn-eth0.link -> /nix/store/mf70gsqvh5wl8cwh1p3xsqxv9y1ibm12-unit-40-kdn-eth0.link/40-kdn-eth0.link
[Match]
PermanentMACAddress=a8:b8:e0:04:10:b5
[Link]
AlternativeName=kdn-eth0
# /etc/systemd/network/40-kdn-eth1.link -> /nix/store/q1k4c8f4qb7mc1sm8km2hz2nbbxddvfm-unit-40-kdn-eth1.link/40-kdn-eth1.link
[Match]
PermanentMACAddress=a8:b8:e0:04:10:b6
[Link]
AlternativeName=kdn-eth1
# /etc/systemd/network/40-kdn-eth2.link -> /nix/store/im6yiqnpvhm38c8d5m8yh7bgdv8nnwh2-unit-40-kdn-eth2.link/40-kdn-eth2.link
[Match]
PermanentMACAddress=a8:b8:e0:04:10:b7
[Link]
AlternativeName=kdn-eth2
# /etc/systemd/network/40-kdn-eth3.link -> /nix/store/x5y7jci9c398zrgqmgkdjp41vk9ph196-unit-40-kdn-eth3.link/40-kdn-eth3.link
[Match]
PermanentMACAddress=a8:b8:e0:04:10:b8
[Link]
AlternativeName=kdn-eth3
# /etc/systemd/network/50-lan.netdev -> /nix/store/g7cf6rwsxspmvzff0a0hmgkcz1jhxv6x-unit-50-lan.netdev/50-lan.netdev
[NetDev]
Kind=bond
Name=lan
[Bond]
LACPTransmitRate=fast
MIIMonitorSec=100ms
Mode=802.3ad
TransmitHashPolicy=layer2+3
# /etc/systemd/network/50-kdn-eth0.network -> /nix/store/83zl1q7nad1g0bvd8aa0zis4nf2dnakc-unit-50-kdn-eth0.network/50-kdn-eth0.network
[Match]
Name=kdn-eth0
[Network]
Bond=lan
# /etc/systemd/network/50-kdn-eth1.network -> /nix/store/fhj39fmf5j0k8y0g0innkvpf1r43md7v-unit-50-kdn-eth1.network/50-kdn-eth1.network
[Match]
Name=kdn-eth1
[Network]
Bond=lan
# /etc/systemd/network/50-kdn-eth2.network -> /nix/store/xd5k24s4lgp8a2qc5dzh4mpgmlv9x9xs-unit-50-kdn-eth2.network/50-kdn-eth2.network
[Match]
Name=kdn-eth2
[Network]
Bond=lan
# /etc/systemd/network/50-kdn-eth3.network -> /nix/store/npn6c8c57m81svayxxck343m1gvykhz3-unit-50-kdn-eth3.network/50-kdn-eth3.network
[Match]
Name=kdn-eth3
[Network]
Bond=lan
# /etc/systemd/network/50-lan.network -> /nix/store/z2jg1xs6z9fgb64367dynnhyqffwmvm0-unit-50-lan.network/50-lan.network
[Match]
Name=lan
[Link]
RequiredForOnline=yes
[Network]
BindCarrier=kdn-eth0 kdn-eth1 kdn-eth2 kdn-eth3
DHCP=true
IPv6AcceptRA=true
IPv6LinkLocalAddressGenerationMode=stable-privacy
IPv6PrivacyExtensions=true
LinkLocalAddressing=ipv6
UseDomains=true
[DHCPv4]
RouteMetric=100
[DHCPv6]
RouteMetric=100
| 00:47:50 |
kdn | * those:
kdn@brys ~/d/g/n/nix-configs> ssh pwet sudo networkctl cat 40-kdn-eth{0,1,2,3}.link 50-lan.netdev 50-{kdn-eth{0,1,2,3},lan}.network
# /etc/systemd/network/40-kdn-eth0.link -> /nix/store/mf70gsqvh5wl8cwh1p3xsqxv9y1ibm12-unit-40-kdn-eth0.link/40-kdn-eth0.link
[Match]
PermanentMACAddress=a8:b8:e0:04:10:b5
[Link]
AlternativeName=kdn-eth0
# /etc/systemd/network/40-kdn-eth1.link -> /nix/store/q1k4c8f4qb7mc1sm8km2hz2nbbxddvfm-unit-40-kdn-eth1.link/40-kdn-eth1.link
[Match]
PermanentMACAddress=a8:b8:e0:04:10:b6
[Link]
AlternativeName=kdn-eth1
# /etc/systemd/network/40-kdn-eth2.link -> /nix/store/im6yiqnpvhm38c8d5m8yh7bgdv8nnwh2-unit-40-kdn-eth2.link/40-kdn-eth2.link
[Match]
PermanentMACAddress=a8:b8:e0:04:10:b7
[Link]
AlternativeName=kdn-eth2
# /etc/systemd/network/40-kdn-eth3.link -> /nix/store/x5y7jci9c398zrgqmgkdjp41vk9ph196-unit-40-kdn-eth3.link/40-kdn-eth3.link
[Match]
PermanentMACAddress=a8:b8:e0:04:10:b8
[Link]
AlternativeName=kdn-eth3
# /etc/systemd/network/50-lan.netdev -> /nix/store/g7cf6rwsxspmvzff0a0hmgkcz1jhxv6x-unit-50-lan.netdev/50-lan.netdev
[NetDev]
Kind=bond
Name=lan
[Bond]
LACPTransmitRate=fast
MIIMonitorSec=100ms
Mode=802.3ad
TransmitHashPolicy=layer2+3
# /etc/systemd/network/50-kdn-eth0.network -> /nix/store/83zl1q7nad1g0bvd8aa0zis4nf2dnakc-unit-50-kdn-eth0.network/50-kdn-eth0.network
[Match]
Name=kdn-eth0
[Network]
Bond=lan
# /etc/systemd/network/50-kdn-eth1.network -> /nix/store/fhj39fmf5j0k8y0g0innkvpf1r43md7v-unit-50-kdn-eth1.network/50-kdn-eth1.network
[Match]
Name=kdn-eth1
[Network]
Bond=lan
# /etc/systemd/network/50-kdn-eth2.network -> /nix/store/xd5k24s4lgp8a2qc5dzh4mpgmlv9x9xs-unit-50-kdn-eth2.network/50-kdn-eth2.network
[Match]
Name=kdn-eth2
[Network]
Bond=lan
# /etc/systemd/network/50-kdn-eth3.network -> /nix/store/npn6c8c57m81svayxxck343m1gvykhz3-unit-50-kdn-eth3.network/50-kdn-eth3.network
[Match]
Name=kdn-eth3
[Network]
Bond=lan
# /etc/systemd/network/50-lan.network -> /nix/store/z2jg1xs6z9fgb64367dynnhyqffwmvm0-unit-50-lan.network/50-lan.network
[Match]
Name=lan
[Link]
RequiredForOnline=yes
[Network]
BindCarrier=kdn-eth0 kdn-eth1 kdn-eth2 kdn-eth3
DHCP=true
IPv6AcceptRA=true
IPv6LinkLocalAddressGenerationMode=stable-privacy
IPv6PrivacyExtensions=true
LinkLocalAddressing=ipv6
UseDomains=true
[DHCPv4]
RouteMetric=100
[DHCPv6]
RouteMetric=100
| 00:49:44 |
hexa | any .network file for the bond interface? | 00:50:32 |
hexa | ah, the bond interface is lan | 00:51:00 |
hexa | so no vlans on top or anything | 00:51:12 |
hexa | DHCP=true means DHCPv4 and DHCPv6 | 00:51:30 |
hexa | you likely only want DHCP=ipv4 | 00:51:53 |
hexa |
LinkLocalAddressing=ipv6
is probably redundant
| 00:52:12 |
hexa | because networkd will not generally set up "link-local" IPv4 addresses (APIPA) | 00:52:40 |
kdn | riight, I don't have DHCPv6 server set up yet on the lan | 00:53:43 |
hexa | and you probably don't want or need one | 00:53:58 |
kdn | shouldn't I still get a DHCPv4 lease even if the DHCPv4 failed? | 00:55:25 |
kdn | what I'm seeing right now that lan interface is simply down | 00:55:34 |
kdn | * shouldn't I still get a DHCPv4 lease even if the DHCPv6 failed? | 00:55:54 |
hexa | it should only be down if networkd has no match block for it | 00:56:27 |
hexa | * it should only be down if networkd has no match block in a network conifg for it | 00:56:35 |
hexa | * it should only be down if networkd has no match block in a network config for it | 00:56:41 |
hexa | I'm not sure BindCarrier is super useful | 00:56:49 |
hexa | if the four links are down, then the lan link will be down anyway | 00:57:11 |
kdn | the four links are up | 00:57:25 |
hexa | yeah, I'm saying the BindCarrier= config is redundant | 00:57:41 |
kdn | so BindCarriers= is equivalent to the Bond on the other side? | 00:58:50 |
kdn | * so BindCarriers= is equivalent to the Bond= on the other side? | 00:58:55 |
kdn | * so BindCarrier= is equivalent to the Bond= on the other side? | 00:59:04 |
hexa | you don't need an equivalent | 00:59:08 |
hexa | you define a bond, various interfaces join the bond | 00:59:22 |
hexa | all that happens in netdevs | 00:59:26 |
kdn | I don't think I have a netdev for the children interfaces | 00:59:59 |