Ubuntu 似乎提供了至少两个网络“工具集”(因为没有更好的术语)。我遇到了这两者之间的冲突。
- 网络管理员
- 更像是传统网络工具的东西(例如 ifconfig、'ifup'、/etc/network/interfaces
我经常遇到这些不同工具集之间的冲突。例如,我在家里运行 Ubuntu Desktop,我使用的是 KVM/libvirt 之类的软件,它建议我禁用 Network Manager,但禁用 Network Manager 会导致其他事情中断。
网络管理器与传统网络工具有什么区别?这两个套房可以并排运行还是我必须坚持使用其中一个?是否有文档总结了这些不同工具之间的区别?我一直找不到。
(请原谅这个问题的模糊性。我已经搜索并搜索了一个答案,但我只发现了许多与 Ubuntu 10.04/Lucid 似乎无关的模糊答案,而且我可能不完全理解 NetworkManager 的目的。但是,这似乎是一个常见问题。如果您有澄清这个问题的建议,请发表评论。)
NetworkManager
并且ifconfig
(默认情况下)不兼容(NetworkManager
不会配置中列出的接口/etc/network/interfaces
)。NetworkManager
是一种设置守护进程,可确保多个用户可以编辑网络连接,这在桌面环境中非常智能(尤其是在可能在不同无线网络之间移动的笔记本电脑上)。基本上NetworkManager
是iproute
,和.dhclient
_wpa_supplicant
ppp
ifconfig
是配置网络接口的通用工具,例如,您可以这样做:设置您的 IP、网络掩码和 MAC 地址
eth1
,然后关闭(禁用/关闭)您的接口。ifconfig
不读取任何配置文件,只执行它被告知的内容。ifup
并且是用于根据此配置网络接口的ifdown
帮助程序,将确保如果有任何需要运行的 up、down、pre-up、pre-down、post-up、post-down 脚本,它们将是。ifconfig
/etc/network/interfaces
好的,然后有
wpa_supplicant
和dhclient
。dhclient
是 DHCP 客户端 -ifup
如果为 DHCP 配置了网络接口,将使用它,NetworkManager
.wpa_supplicant
是用于在无线网络上配置加密的工具。大多数这些工具都有手册页,例如接口文件有它自己的手册页来描述该配置文件的格式。
话虽如此,我建议您删除(或禁用)
NetworkManager
,我认为NetworkManager
除了用于设置网络的 gui 工具之外,任何东西都不会被删除。如果您想在没有配置无线的情况下NetworkManager
查看此内容。这些工具集是互补的,而不是相互排斥的。
FWIW,
ifconfig
只是*config
用于配置网络接口的其他工具中的一个工具。ifup(8)
和工具是工具之上的ifdown(8)
一层*config
。您可以将它们视为辅助工具。同样,NetworkManager 高于
ifup(8)
和ifdown(8)
工具。由于缺乏更好的术语,NetworkManager 能够从以下级别编排工具(ets),以便与仅使用以下级别的工具相比更轻松地完成更高级别的任务,例如 Internet 连接共享。在典型的基于 Debian 的发行版中,您有两个用于配置网络接口的命令行实用程序:不推荐使用
ifconfig
的 fromnet-tools
和较新ip
的 fromiproute2
。但是,这两个实用程序直接配置内核并且不会保留您的配置,如果您重新启动机器,您将需要再次重新配置您的接口。
为此,您可以使用三个主要软件包:
ifupdown
NetworkManager
systemd
及其守护进程systemd-networkd
一般来说,你应该选择一个并坚持下去,即使它
ifupdown
很好用NetworkManager
,仍然会产生意想不到的配置问题。ifupdown
相当弃用但可靠,您可能会在许多旧系统上遇到它。配置存储在守护进程中
/etc/network/interfaces
并由守护进程管理,networking.service
守护进程是ifup
和ifdown
命令的包装器,它们本身也是ifconfig
(或ip
forifupdown2
)的包装器。阅读那个人在
ifupdown
。NetworkManager
由于许多图形前端可用,因此通常包含在桌面发行版中,配置存储在守护程序中
/etc/NetworkManager
并由NetworkManager.service
守护程序管理。您可以使用包含的
nmcli
或nmtui
实用程序管理配置。阅读那个人在
NetworkManager
。systemd-networkd
通常用于服务器发行版和官方继任者,
ifupdown
因为它包含在 中systemd
,配置存储在守护进程中/etc/systemd/network
并由systemd-networkd.service
守护进程管理。阅读那个人在
systemd-networkd
。dhclient
虽然不是守护程序,但
dhclient
fromisc-dhcp-client
仍然是一个非常重要的软件包,并且经常在桌面发行版中需要,因为您经常需要从 DHCP 服务器获取 IPv4。希望随着 IPv6(使用SLAAC)被慢慢采用,这可能会在不久或遥远的将来发生变化。
Network Manager 是一个 GUI 程序,用于将 Ubuntu 作为安装在桌面/笔记本电脑上的工作站操作系统处理。
ifconfig-type 实用程序是基于命令行的,在将 Ubuntu 作为服务器操作系统处理时使用,当您没有可用的图形界面时(例如,当您启动基于 Ubuntu 的 Amazon EC2 实例时) . 它们通常用于 ssh 连接。
如果您删除网络管理器,我假设您需要配置 /etc/network/interface 以使接口工作。