i have a pi400 that I use as samba server, using wicked with fixed ip address. This worked without problem.
I tried to move to systemd-networkd:
I created a file 05-eth0.network in /etc/systemd/network
I disabled wicked, enabled systemd-networkd and systemd-resolved via systemctl command and reboot.
There was no network and ip a showed that eth0 was down
# ip a
...
2: eth0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether e4:5f:01:08:e1:2c brd ff:ff:ff:ff:ff:ff
I tried to set it up
# ip link set eth0 up
[3031.8875931] T1617] could not attach to PHY
[3031.8900015] T1617] bcmgenet fd580000.ethernet eth0: failed to connect to PHY
RTNETLINK answers: No such device
I tried then to go back with wicked : disabled systemd-networkd, systemd-resolved, enabled wicked and reboot but the network eth0 device was still down and “ip link set eth0 up” gives the same error.
Looking in Yast I see that the network use wicked. Device eth0 is present and configured with a static address.
Module genet is loaded
boven:~ # ls /l /etc/resolv.conf
ls: cannot access '/l': No such file or directory
/etc/resolv.conf
boven:~ # ls -l /etc/resolv.conf
-rw-r--r-- 1 root root 65 May 24 16:51 /etc/resolv.conf
boven:~ # cat /etc/resolv.conf
search xs4all.nl
nameserver 195.121.1.34
nameserver 195.121.1.66
boven:~ #
Result:
boven:~ # ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether ec:8e:b5:da:0d:0d brd ff:ff:ff:ff:ff:ff
altname enp1s0
inet 10.0.0.154/24 brd 10.0.0.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 2a02:a465:d34e:1:ee8e:b5ff:feda:d0d/64 scope global dynamic mngtmpaddr noprefixroute
valid_lft 6941sec preferred_lft 3341sec
inet6 fe80::ee8e:b5ff:feda:d0d/64 scope link
valid_lft forever preferred_lft forever
3: wlan0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether 94:e9:79:76:e6:cd brd ff:ff:ff:ff:ff:ff
altname wlp2s0
boven:~ # ip route
default via 10.0.0.138 dev eth0 proto static
10.0.0.0/24 dev eth0 proto kernel scope link src 10.0.0.154
boven:~ #
And you say you “disabled wicked” without providing any details. There are several services with the string “wicked” in the name. Did you disable all of them?
This sounds like hardware or driver issue. Usual next step in troubleshooting is full hardware reset (cold boot after making sure all power supplies/batteries/whatever are unplugged). But quick search shows similar problems in the past caused by delay in hardware initialization. So test the latest kernel and if it still fails, try to open bug report.
You may be correct (as so often) and I am more or less a hardware noob. But I do not quite follow this. From what I read in the first post:
It worked with Wicked.
Switch to systemd.networkd and it does not work.
Switching back to Wicked and it does not work.
What can happen to the hardware/driver in between that after switching back to the same software method now stumbles into a hardware problem that apparently wasn’t there before?
Yes it was also my first feeling,
currently with wicked I have the following units
# systemctl list-units wick*
UNIT LOAD ACTIVE SUB DESCRIPTION
wicked.service loaded active exited wicked managed network interfaces
wickedd-auto4.service loaded active running wicked AutoIPv4 supplicant service
wickedd-dhcp4.service loaded active running wicked DHCPv4 supplicant service
wickedd-dhcp6.service loaded active running wicked DHCPv6 supplicant service
wickedd-nanny.service loaded active running wicked network nanny service
wickedd.service loaded active running wicked network management service daemon
LOAD = Reflects whether the unit definition was properly loaded.
ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
SUB = The low-level unit activation state, values depend on unit type.
6 loaded units listed. Pass --all to see loaded but inactive units, too.
To show all installed unit files use 'systemctl list-unit-files'.
trying to restart wicked gives
# systmctl restart wicked
[11942.658125] T774]could not attach to PHY
[11942.658928] T774] bcmgenet fd580000.ethernet eth0 failed to connect to PHY
maybe arvidjaar is right and it is a hardware problem but how to confirm this >:(
I halted the system and removed the power. After one hour I tried again with same result
I tested with a new cable and with the delivered raspian linux and I have also the same problem>:(.
So the Ethernet port is probably dead but as it is on the motherboard I cannot replace it.
Strange that it died when I tried systemd-networkd.:
On the raspberry Pi 400 there is still a wifi on board but I don’t have one my HP server. I need to buy a new small unit.