Uczę się o Linux sieci na moim Kubuntu 18.04 stacji roboczej, a widzę, że zarówno tam NetworkManager
i networkd-dispatcher
są uruchomione:
oleg@eclectic:~$ sudo ps -ef | grep -i net
root 56 2 0 Oct11 ? 00:00:00 [netns]
root 1097 1 0 Oct11 ? 00:00:02 /usr/sbin/NetworkManager --no-daemon
root 1098 1 0 Oct11 ? 00:00:00 /usr/bin/python3 /usr/bin/networkd-dispatcher --run-startup-triggers
root 1250 1 0 Oct11 ? 00:00:02 /usr/sbin/inetd
root 1593 1097 0 Oct11 ? 00:00:00 /sbin/dhclient -d -q -sf /usr/lib/NetworkManager/nm-dhcp-helper...
NetworkManager
wydaje się być skonfigurowany do obsługi „wszystkiego” przez netplan
:
oleg@eclectic:~$ cat /etc/netplan/01-network-manager-all.yaml
# Let NetworkManager manage all devices on this system
network:
version: 2
renderer: NetworkManager
Wierzę, netplan
że przekazałoby wszystko, networkd
gdyby NetworkManager
nie zostało zainstalowane.
Jest tam również kilka plików /etc/network/
i nie jestem pewien, co się z nimi dzieje. Wiele pakietów wydaje się używać tego katalogu:
oleg@eclectic:~$ dpkg -S /etc/network
avahi-daemon, ifupdown2, wpasupplicant, openvpn, postfix, netbase, avahi-autoipd, wireless-tools, clamav-freshclam: /etc/network
Moje początkowe przemyślenia po pewnym Googlingu są takie NetworkManager
i networkd
oba działają, ale netplan
generują konfigurację tak, że tylko jedna z nich coś robi. Ale nie wiem, jak bym to zweryfikował, wymyślił łańcuch operacji lub skonfigurował go tak, aby pasował do moich nikczemnych planów dla manekina0.
Pytanie: Jak dokładnie NetworkManager, Networkd i Netplan współpracują ze sobą? Innymi słowy, kiedy komputer uruchamia się, które procesy ręcznie, a jakie inne procesy? W jaki sposób narzędzia z pakietów podoba net-tools
, ifupdown2
i iproute2
i katalogi jak /etc/network/
dopasowanie w tym wszystkim? I w końcu, jak mogę to sobie wyobrazić i poznać szczegóły za pomocą wiersza poleceń?
Aktualizacja: Nie szukam przeglądu wysokiego poziomu. Chcę raczej dowiedzieć się, w jaki sposób te komponenty wchodzą w interakcje, powodują konflikty lub unikają konfliktów na poziomie jądra lub podobnych.