J'apprends la mise en réseau Linux sur ma station de travail Kubuntu 18.04, et je vois là que les deux NetworkManager
et networkd-dispatcher
fonctionnent:
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
semble être configuré pour gérer "tout" par netplan
:
oleg@eclectic:~$ cat /etc/netplan/01-network-manager-all.yaml
# Let NetworkManager manage all devices on this system
network:
version: 2
renderer: NetworkManager
Je crois que tout netplan
serait remis à networkd
s'il NetworkManager
n'était pas installé.
Il y a aussi un tas de fichiers /etc/network/
, et je ne sais pas ce qui les gère. De nombreux packages semblent utiliser ce répertoire:
oleg@eclectic:~$ dpkg -S /etc/network
avahi-daemon, ifupdown2, wpasupplicant, openvpn, postfix, netbase, avahi-autoipd, wireless-tools, clamav-freshclam: /etc/network
Mes premières réflexions après une recherche sur Google sont les suivantes NetworkManager
et networkd
fonctionnent toutes les deux, mais netplan
génèrent une configuration telle qu'une seule fait réellement quelque chose. Mais je ne sais pas comment je vérifierais cela, déterminerais la chaîne des opérations ou le configurerais pour convenir à mes plans néfastes pour dummy0.
Question: Comment exactement NetworkManager, networkd et netplan fonctionnent-ils ensemble? En d'autres termes, au démarrage de l'ordinateur, quels processus transmettent quoi à quels autres processus? Comment les outils de paquets comme net-tools
, ifupdown2
et iproute2
et répertoires comme /etc/network/
dans tout cela? Et enfin, comment puis-je comprendre cela moi-même et apprendre les détails en utilisant la ligne de commande?
Mise à jour: je ne cherche pas un aperçu de haut niveau. Je veux plutôt savoir comment ces composants interagissent, sont en conflit ou évitent les conflits au niveau du noyau ou similaire.