关于Network Manager中Device与Connection的区别及特性的技术咨询
Network Manager中Device与Connection的区别及特性详解
嘿,刚接触Network Manager的时候确实容易把Device和Connection搞混,我来结合你用的Ubuntu 20.04场景,给你拆解清楚这俩的核心差异和各自特性!
核心区别一句话讲透
Device是实际存在的网络接口(硬件/虚拟),Connection是可以复用的网络配置模板。
举个生活化的例子:你电脑上的无线网卡就是一个Device,而你家里WiFi的SSID、密码、IP设置,公司WiFi的一套配置,就是两个不同的Connection——切换网络其实就是把不同的Connection“绑定”到同一个无线网卡Device上。
Device的具体特性
- 是系统中真实存在的网络接口实体,对应
/sys/class/net/目录下的设备(比如eth0、wlan0、tun0这类) - 有明确的状态标识:用
nmcli device status可以看到,比如connected(已绑定活跃Connection)、disconnected(未绑定)、unmanaged(Network Manager不管理这个接口) - 同一时间只能绑定一个活跃的Connection——总不能让一个网卡同时连两个WiFi吧?
- 类型多样:既可以是物理设备(以太网网卡、无线网卡),也可以是虚拟设备(VPN隧道接口、网桥、VLAN子接口)
Connection的具体特性
- 是存储在系统中的配置文件集合,默认存放在
/etc/NetworkManager/system-connections/目录下(文件是加密的,避免明文泄露密码) - 包含完整的网络配置细节:IP地址(静态/动态DHCP)、DNS服务器地址、路由规则、WiFi的SSID/加密方式/密码、VPN的认证参数等
- 具备复用性:同一个Connection可以绑定到多个兼容的Device上——比如你有两台无线网卡,都可以用同一个“公司WiFi”Connection来连接
- 支持多配置共存:你可以创建N个Connection,但同一时间只有绑定到Device的那个是活跃的,其他都是待激活状态
- 按网络类型分类:常见的有
802-3-ethernet(以太网)、802-11-wireless(WiFi)、vpn、bridge等,用nmcli connection show可以列出所有已保存的Connection
实际操作小示例(Ubuntu 20.04下)
- 查看所有Device状态:
nmcli device status - 查看所有已保存的Connection:
nmcli connection show - 将指定Connection绑定到Device激活:
nmcli connection up "MyHomeWiFi" ifname wlan0
备注:内容来源于stack exchange,提问作者Alakananda S
相关产品推荐
相关产品推荐

