在Ubuntu/Debian上安装和使用NetworkManager(NMCLI)

本文介绍在Ubuntu/Debian系统上安装和使用NetworkManager(NMCLI)的方法,它是一种用于管理计算机上网络的工具,功能有灵活的网络可视化、全面的网络管理、内置根本原因分析功能、完全可定制的内容、内置设备和接口轮询功能、单击网络故障排除、广泛的报告功能、多种集成选项、越来越大的网络发现。

在Ubuntu、Debian系统上安装NetworkManager

默认情况下,NetworkManager存在于Ubuntu、Debian系统上,下面演示在Ubuntu、Debian系统中安装NetworkManager的两种方法。

1、使用APT在Ubuntu、Debian系统上安装NetworkManager

NetworkManager在默认ubuntu、Debian系统的APT存储库中可用,可按如下方式安装:

sudo apt-get install network-manager

启动并启用Network Manager,如下所示:

sudo systemctl start NetworkManager.service 

sudo systemctl enable NetworkManager.service

2、使用Snap在Ubuntu、Debian系统上安装NetworkManager。

NetworkManager也可以在Snap商店中使用,可以安装在Ubuntu、Debian系统上,安装并启用Snap,如下所示:

sudo apt install snapd

sudo systemctl enable --now snapd.socket

sudo ln -s /var/lib/snapd/snap /snap

然后使用以下命令安装NetworkManager:

snap install network-manager

安装完成后,可进行验证:

snap connections network-manager

样本输出:

在Ubuntu/Debian上安装和使用NetworkManager(NMCLI)

安装完成后,Network Manager将自动启动并在后台运行,使用以下命令检查其状态:

$ sudo systemctl status NetworkManager.service

NetworkManager.service - Network Manager

Loaded: loaded (/lib/systemd/system/NetworkManager.service; enabled; vendor preset: enabled)

Active: active (running)

在Ubuntu、Debian系统上使用NetworkManager NMCLI

NMCLI是一个网络实用工具,允许我们管理网络配置。有几个命令可以用来管理网络。

1、修改网络连接

使用NMCLI修改网络连接需要我们从列出网络连接开始,使用以下命令:

nmcli connection show

会输出AME、UUID、TYPE和DEVICE,如Wired connection 1  ac98eab7-1ad3-4cf0-93a0-210bfe3bb7e2  ethernet  enp0s3。

2、显示活动连接

上面的命令显示了所有的连接,但是如果您想查看活动的或向上的连接,您将在上面的命令中添加--active命令:

nmcli connection show --active

使用连接配置文件名称,您可以查看以下附加信息:

nmcli connection show "Wired connection 1"

在Ubuntu/Debian上安装和使用NetworkManager(NMCLI)

3、使用NMCLI添加和修改网络连接

使用NMCLI,可以使用以下语法向Ubuntu、Debian系统添加新连接:

sudo nmcli connection add type <network-type> ifname <connection-name>

使用NMCLI,可以使用以下语法对现有网络连接进行调整和配置,例如在静态和DHCP配置之间进行切换:

sudo nmcli connection modify <connection-id> <parameter> <value>

现在,让我们看看可以使用NMCLI添加和修改连接的配置。我们将首先为连接添加NetworkManager连接配置文件。对我来说,这是以太网连接,我将添加一个名为My New connection的连接配置文件:

nmcli connection add con-name My-New-Connection ifname enp0s3 type ethernet

样本输出:

Connection 'My-New-Connection' (a6b26540-4c06-4a80-a0fa-a2868e4006e5) successfully added.

添加连接配置文件后,我们将进行以下调整。设置您自己的IP地址、网关、DNS服务器。

要设置网络连接的自动启动,请使用:

nmcli connection modify My-New-Connection connection.autoconnect yes

1].使用/24子网掩码设置静态IPv4地址

例如,我们将修改现有连接到静态IP_Address,并更改子网/24,如果没有此规范,它将使用默认掩码分配一个IP,这可能会在以后引起问题:

sudo nmcli connection modify My-New-Connection ipv4.address 192.168.100.157/24

2].使用/64子网掩码设置静态IPv6地址

nmcli connection modify My-New-Connection ipv6.addresses 2001:db8:1::1/64

3].设置IPv4/IPv6默认网关

##For IPv4

nmcli connection modify My-New-Connection ipv4.gateway 192.168.100.1

##For IPv6

nmcli connection modify My-New-Connection ipv6.gateway 2001:db8:1::fffe

4].设置IPv4/IPv6 DNS服务器

##For IPv4

nmcli connection modify My-New-Connection ipv4.dns "192.168.100.200"

##For IPv6

nmcli connection modify My-New-Connection ipv6.dns "2001:db8:1::ffbb"

5].将IPv4和IPv6连接方法设置为自动

##For IPv4

nmcli connection modify My-New-Connection ipv4.method auto

##For IPv6

nmcli connection modify My-New-Connection ipv6.method auto

要使所做的更改生效,您需要激活配置文件:

$ nmcli connection up My-New-Connection

connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/2)

现在检查活动连接:

nmcli connection show --active

验证设置的IP_Address:

hostname -I

192.168.100.120 192.168.100.157

从输出中,我有两个IP地址,一个是主IP,另一个是新连接配置文件我的新连接添加的辅助IP。您可以使用下面的ip a命令检查附加信息:

在Ubuntu/Debian上安装和使用NetworkManager(NMCLI)

4、使用NMCLI管理设备

NMCLI实用工具还可用于管理以下设备:

1].显示设备状态:

sudo nmcli -p dev status

2].修改设备配置

在修改设备配置之前,首先需要获取设备信息:

sudo nmcli device show

样本输出:

在Ubuntu/Debian上安装和使用NetworkManager(NMCLI)

使用设备信息,可以使用以下语法修改设备设置:

$ sudo nmcli device modify <interface-name> <parameter> <value>

###OR

$ sudo nmcli dev mod <interface-name> <parameter> <value>

请记住,以上更改是暂时的,可以使用以下命令重置为默认设置:

sudo nmcli dev reapply interface-name

如果在使用NMCLI设备管理器时遇到问题,请使用以下命令查找帮助:

sudo nmcli device help

在Ubuntu/Debian上安装和使用NetworkManager(NMCLI)

注:基本使用方法就是这样了,掌握了以上内容,就可以独自使用NetworkManager NMCLI管理网络连接和网络设备了。

栏目相关文章