我正在学习关于Linux的Kubuntu我18.04工作站上的网络,我看到有两个NetworkManager
和networkd-dispatcher
正在运行:
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
似乎通过以下方式配置为处理“一切” netplan
:
oleg@eclectic:~$ cat /etc/netplan/01-network-manager-all.yaml
# Let NetworkManager manage all devices on this system
network:
version: 2
renderer: NetworkManager
我相信如果没有安装,netplan
一切都会顺利进行。networkd
NetworkManager
中也有一堆文件/etc/network/
,我不确定该如何处理。许多软件包似乎使用此目录:
oleg@eclectic:~$ dpkg -S /etc/network
avahi-daemon, ifupdown2, wpasupplicant, openvpn, postfix, netbase, avahi-autoipd, wireless-tools, clamav-freshclam: /etc/network
我的一些谷歌搜索后,最初的想法是,NetworkManager
并networkd
都在运行,但netplan
生成配置,使得只有一个是真的在做事情。但是我不知道如何验证这一点,弄清楚操作链或配置它以适合我对dummy0的恶意计划。
问题: NetworkManager,网络和netplan到底如何协同工作?换句话说,随着计算机的启动,哪个进程将什么交给其他进程?如何从工具包一样net-tools
,ifupdown2
和iproute2
和目录,如/etc/network/
嵌入这一切?最后,我如何自己弄清楚这一点并使用命令行学习详细信息?
更新:我不是在寻找高层次的概述。相反,我想知道这些组件如何在内核级别或类似级别进行交互,冲突或避免冲突。