A network manager lets you manipulate network connection settings in so called "profiles" – such as whether you want to be online or offline from the internet. There are 5 solutions to choose from, but all of them are mutually exclusive; you should not run two of these simultaneously. Note: The CLI tool "ip" is not part of any network manager. "NetworkManager" is just the name of one netw. manager, like grapefruit is a fruit.
|Network manager||GUI||Arch_ISO||CLI tools||PPP support e.g. Android modem||DHCP client||Systemd units|
|ConnMan||yes unofficial||no||connmanctl||yes, with ofono||internal||connman.service|
|yes||dhcpcd or firstname.lastname@example.org |
dhcpcd or dhclient
|systemd_networkd||no||yes||networkctl||No https://github.com/systemd/systemd/issues/481||internal||systemd-networkd.service, systemd-resolved.service|
bummer! This shows a huge dilemma: networkD has no GUI, lacks ppp – but the NM-GUI sucks e.g. with advanced configs such as pppoE-VLAN and the QML nm-applet (disappeared in 2019?) sucks like hell. Only some phreaks use either of the 3 the other managers (conn-man, wicked, netCTL), probably because their distro's package-manager installed them erroneously and now their old manager is totally broken.