ฉันกำลังเรียนรู้เกี่ยวกับเครือข่าย 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
ความคิดเริ่มต้นของฉันหลังจาก Googling บางอย่างเป็นเช่นนั้นNetworkManager
และnetworkd
กำลังทำงานอยู่ทั้งคู่ แต่netplan
สร้างการกำหนดค่าที่มีเพียงคนเดียวที่กำลังทำอะไรบางอย่าง แต่ฉันไม่รู้ว่าฉันจะตรวจสอบสิ่งนี้ได้อย่างไรลองหาสายโซ่ของการดำเนินงานหรือกำหนดค่าให้เหมาะกับแผนการชั่วร้ายของฉันสำหรับ dummy0
คำถาม: NetworkManager, networkd และ netplan ทำงานร่วมกันได้อย่างไร กล่าวอีกนัยหนึ่งเมื่อคอมพิวเตอร์บูทขึ้นกระบวนการใดที่ส่งมอบกระบวนการอื่น ๆ วิธีการทำเครื่องมือจากแพคเกจที่ต้องการnet-tools
, ifupdown2
และiproute2
และไดเรกทอรีเช่น/etc/network/
พอดีทั้งหมดนี้หรือไม่? และในที่สุดฉันจะเข้าใจสิ่งนี้ด้วยตนเองและเรียนรู้รายละเอียดโดยใช้บรรทัดคำสั่งได้อย่างไร
อัปเดต:ฉันไม่ได้มองหาภาพรวมระดับสูง ค่อนข้างฉันต้องการทราบว่าองค์ประกอบเหล่านี้มีการโต้ตอบขัดแย้งหรือหลีกเลี่ยงความขัดแย้งในระดับเคอร์เนลหรือคล้ายกัน