How to configure DHCP using Leap 15.3 JeOS for Raspberry Pi(4)

Hi all,

I’m having difficulties setting up DHCP connection on my Raspberry Pi 4, and any help would be appreciated :)! I followed the steps as presented here: [1]. (Also note the typo in one of the last commands: ‘wpa-supplicant’ should be ‘wpa_supplicant’.)

[1] https://en.opensuse.org/SDB:WiFi#How-to_connect_to_WiFi_without_the_NetworkManager

After starting wpa_supplicant, I should set up the dhclient, however none of the related commands seem to exist on my Pi:

rbp4-print:~ # which dhclient
which: no dhclient in (/sbin:/usr/sbin:/usr/local/sbin:/root/bin:/usr/local/bin:/usr/bin:/bin)
rbp4-print:~ # systemctl status dhcpcd
Unit dhcpcd.service could not be found.
rbp4-print:~ # which dhcpcd
which: no dhcpcd in (/sbin:/usr/sbin:/usr/local/sbin:/root/bin:/usr/local/bin:/usr/bin:/bin)
rbp4-print:~ # zypper se dhcpcd
Loading repository data...
Reading installed packages...
No matching items found.

Some relevant code blocks:

# ip a
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 mq state UP group default qlen 1000
    link/ether dc:a6:32:c7:a2:25 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.32/24 brd 192.168.1.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::dea6:32ff:fec7:a225/64 scope link 
       valid_lft forever preferred_lft forever
3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether dc:a6:32:c7:a2:26 brd ff:ff:ff:ff:ff:ff
    inet6 fe80::dea6:32ff:fec7:a226/64 scope link 
       valid_lft forever preferred_lft forever

# iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

wlan0     IEEE 802.11  ESSID:"RolandsRoamingResidence"  
          Mode:Managed  Frequency:2.437 GHz  Access Point: 74:AC:B9:42:04:F6   
          Bit Rate=24 Mb/s   Tx-Power=31 dBm   
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:on
          Link Quality=60/70  Signal level=-50 dBm  
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

Now the following wickedd services seem to do the DHCP fetching for ethernet, but why don’t I get a wlan0 DHCP?

# systemctl status wickedd-*.service 
● wickedd-dhcp4.service - wicked DHCPv4 supplicant service
     Loaded: loaded (/usr/lib/systemd/system/wickedd-dhcp4.service; enabled; vendor preset: disabled)
     Active: active (running) since Wed 2022-01-26 12:00:12 UTC; 2 weeks 5 days ago
   Main PID: 491 (wickedd-dhcp4)
      Tasks: 1 (limit: 4915)
     CGroup: /system.slice/wickedd-dhcp4.service
             └─491 /usr/lib/wicked/bin/wickedd-dhcp4 --systemd --foreground

Jan 26 12:00:12 rbp4-print systemd[1]: Starting wicked DHCPv4 supplicant service...
Jan 26 12:00:12 rbp4-print systemd[1]: Started wicked DHCPv4 supplicant service.
Jan 26 12:00:20 rbp4-print wickedd-dhcp4[491]: eth0: Request to acquire DHCPv4 lease with UUID cd37f161-c5b9-0000-f701-000005000000
Jan 26 12:00:24 rbp4-print wickedd-dhcp4[491]: eth0: Request to acquire DHCPv4 lease with UUID cd37f161-c5b9-0000-f701-000005000000
Jan 26 12:00:29 rbp4-print wickedd-dhcp4[491]: eth0: Committed DHCPv4 lease with address 192.168.1.32 (lease time 86400 sec, renew in 43200 sec, rebind in 75600 sec)

● wickedd-auto4.service - wicked AutoIPv4 supplicant service
     Loaded: loaded (/usr/lib/systemd/system/wickedd-auto4.service; enabled; vendor preset: disabled)
     Active: active (running) since Wed 2022-01-26 12:00:12 UTC; 2 weeks 5 days ago
   Main PID: 475 (wickedd-auto4)
      Tasks: 1 (limit: 4915)
     CGroup: /system.slice/wickedd-auto4.service
             └─475 /usr/lib/wicked/bin/wickedd-auto4 --systemd --foreground

Jan 26 12:00:12 rbp4-print systemd[1]: Starting wicked AutoIPv4 supplicant service...
Jan 26 12:00:12 rbp4-print systemd[1]: Started wicked AutoIPv4 supplicant service.

● wickedd-nanny.service - wicked network nanny service
     Loaded: loaded (/usr/lib/systemd/system/wickedd-nanny.service; enabled; vendor preset: disabled)
     Active: active (running) since Wed 2022-01-26 12:00:12 UTC; 2 weeks 5 days ago
   Main PID: 507 (wickedd-nanny)
      Tasks: 1 (limit: 4915)
     CGroup: /system.slice/wickedd-nanny.service
             └─507 /usr/sbin/wickedd-nanny --systemd --foreground

Jan 26 12:00:12 rbp4-print systemd[1]: Starting wicked network nanny service...
Jan 26 12:00:12 rbp4-print systemd[1]: Started wicked network nanny service.

● wickedd-dhcp6.service - wicked DHCPv6 supplicant service
     Loaded: loaded (/usr/lib/systemd/system/wickedd-dhcp6.service; enabled; vendor preset: disabled)
     Active: active (running) since Wed 2022-01-26 12:00:12 UTC; 2 weeks 5 days ago
   Main PID: 501 (wickedd-dhcp6)
      Tasks: 1 (limit: 4915)
     CGroup: /system.slice/wickedd-dhcp6.service
             └─501 /usr/lib/wicked/bin/wickedd-dhcp6 --systemd --foreground

Jan 26 12:00:12 rbp4-print systemd[1]: Starting wicked DHCPv6 supplicant service...
Jan 26 12:00:12 rbp4-print systemd[1]: Started wicked DHCPv6 supplicant service.
Jan 26 12:00:20 rbp4-print wickedd-dhcp6[501]: eth0: Request to acquire DHCPv6 lease with UUID cd37f161-c5b9-0000-f701-000006000000 in mode auto
Jan 26 12:00:24 rbp4-print wickedd-dhcp6[501]: eth0: Request to acquire DHCPv6 lease with UUID cd37f161-c5b9-0000-f701-000006000000 in mode auto


:slight_smile: I’m leaving this up for any future person that come googling.

Turns out you shouldn’t even use wpa_supplicant. Internet configuration is done by wicked; and although I couldn’t find any good documentation online I managed to get it setup properly.

# wicked ifstatus all
lo              up
      link:     #1, state up
      type:     loopback
      config:   compat:suse:/etc/sysconfig/network/ifcfg-lo
      leases:   ipv4 static granted
      leases:   ipv6 static granted
      addr:     ipv4 127.0.0.1/8 [static]
      addr:     ipv6 ::1/128 [static]

eth0            up
      link:     #2, state up, mtu 1500
      type:     ethernet, hwaddr dc:a6:32:c7:a2:25
      config:   compat:suse:/etc/sysconfig/network/ifcfg-eth0
      leases:   ipv4 dhcp granted
      leases:   ipv6 dhcp requesting
      addr:     ipv4 192.168.1.32/24 [dhcp]
      route:    ipv4 default via 192.168.1.1 proto dhcp

wlan0           up
      link:     #3, state up, mtu 1500
      type:     wireless, state established, ssid [redacted], WPA2-PSK
      config:   compat:suse:/etc/sysconfig/network/ifcfg-wlan0
      leases:   ipv4 dhcp granted
      leases:   ipv6 dhcp requesting
      addr:     ipv4 192.168.1.35/24 [dhcp]


Under /etc/sysconfig/network/ you should find a ‘ifcfg.template’. Copy that to ifcfg-wlan0 (or whatever your wifi card is called) and open it in your favorite editor. That document is excellently commented, but also has a lot of options! Set up your ‘STARTMODE’ and ‘BOOTPROTO’, and then search for ‘WIRELESS_ESSID’. There you’ll need to set up what SSID you want to use, and a bit further your password.

Good luck any future readers!:wink:

@RlndVt:

Or, here – <https://doc.opensuse.org/documentation/leap/reference/html/book-reference/cha-network.html#sec-network-manconf>