Unable to have internet via wire connection without enabling wifi

I just setup a minipc aimed to be used as a home server with Leap 15.4. It has both ethernet and wifi interface. The network setup uses wicked service.

The goals are:

  1. Use static ip for the ethernet to connect to the internet (wire connection to my router).
  2. Turn off its wifi completely but get it ready when I need it to connect wirelessly.

I did (in Yast2-network settings repeatedly):
1). set up the static ip for eth0
2). DHCP for wifi connection (wlan0), including choosing SSID and filling in the password.
3). Tried setting up the wlan0 network card boot up mode either to manually or never.
4). In ‘route’ tab added the gateway ip (my router) (ticking default) and chose ‘eth0’ as destination.

The problem starts when I reboot since it can not even connect to the router.

‘ip addr’ showed the static ip I setup, but ‘ip route’ showed nothing. So the issue is that it doesn’t use my router ip as gateway.

I confirmed the above setup in ‘yast2-network setting’. OK out again but it would now turn on the wifi. Especially ‘ip route’ could then show my router ip but it said to be connected using the wlan0 ip address.

I then tried ‘sudo ip link set wlan0 down’, which killed wifi, but along with my internet, since ‘ip route’ became empty again. After many reboots and attempts it’s the same cycle.

Ethernet doesn’t accept my default gateway ip, wifi would rob the gateway ip setting to itself when I confirm the setup in Yast2.

As a result I can’t have internet without turning off wifi.

Sorry for the last confusing sentence in the OP, I wanted to say

As a result I can’t have internet without turning on wifi.

Show full output of

ip l
ip a
ip r
ip -6 r
cat /etc/sysconfig/network/ifcfg-eth0

While I was trying to post the output I noticed what’s wrong. Sorry for the silly post.
The static IP address I put was 192.168.1.5/32, which should have been 192.168.1.5/24.
It’s because in Yast2-network settings-static IP, the subnet mask value is default to 32 for some unknown reason. I didn’t change it coz my understanding of subnet is kinda vague. :blush:
Now that I put the right value, ip route can get the correct ip and it’s connected.