如何安装和配置 Nmcli

[ad_1]

nmcli 是什么?

nmcli 代表网络管理命令行界面,是一种用于管理 NetworkManager 应用程序和报告网络状态的工具。 它可以用作 nm-applet 或其他类似图形客户端的替代品。 nmcli 用于显示、创建、删除、编辑、激活、停用网络连接,以及控制和显示网络设备状态。

典型用途包括:

  • 脚本:通过 nmcli 使用 NetworkManager 而不是手动管理网络连接。 nmcli 支持更适合脚本进程的简洁输出格式。 请注意,NetworkManager 甚至可以执行脚本,称为“调度程序脚本”,以响应网络事件。
  • 服务器、无头机器和终端: nmcli 工具可用于在没有图形用户界面的情况下控制 NetworkManager,包括创建、删除、编辑、启动和停止网络连接以及查看网络状态。

先决条件

在每次安装之前,应用所有软件包的所有可用升级。

apt-get update && apt-get upgrade

安装

系统更新后,我们将运行此命令安装 nmcli。

apt-get install network-manager

当提示“您想继续吗?”时按“y”。 [Y/n]”。 安装完成后,我们可以使用此命令启动网络管理器。

systemctl start NetworkManager.service 

接下来,我们将使用下面的 systemctl 命令启用网络管理器以在系统启动时启动。

systemctl enable NetworkManager.service

我们将在本文中进一步介绍更多基本的 nmcli 命令,但完整的参考可以在 nmcli 手册页中使用“man nmcli”命令找到。

句法

nmcli [option] [command] [arguments]

命令

主要的 nmcli 命令被分解为几个对象和子命令。

  • 一般的
  • 联网
  • RTC(无线电传输控制)
  • 活动监控
  • 连接管理
  • 设备管理
  • 密探

一般命令

以下是可用于 nmcli 的常规命令列表。

  • 状态 – 这显示网络管理器的状态。 我们可以使用此命令检查我们的网络设备状态
  • 主机名 – 此命令查看和修改服务器主机名。
  • 权限 – 此命令显示用户执行程序的权限。
  • 日志记录 – 此命令查看和修改日志记录级别。

句法

这些命令的具体语法如下所示。

nmcli device status 

nmcli general hostname

nmcli general permissions

nmcli general logging

联网

句法

nmcli networking { on | off | connectivity } [ARGUMENTS...]

网络命令使用 nmcli 检查网络状态,或者启用或禁用网络组件。

, 离开 – 此命令通过 nmcli 启用或禁用各种网络连接。

连通性 [check] – nmcli 获取连接状态并将单个网络配置类型保留为连接,其中包含有关每种网络连接的相关信息。

nmcli connection { show | up | down | modify | add | edit | clone | delete | monitor | reload | load | import | export } [ARGUMENTS...]

RTC(无线电传输控制)

RTC 或 radio 命令显示无线电开关的状态,并启用和禁用开关。

句法

nmcli radio { all | wifi | wwan } [ARGUMENTS…]

活动监控

monitor 命令观察设备连接状态或连接配置文件中的变化。

句法

nmcli monitor

连接管理

nmcli 中的连接命令将网络配置存储为“连接”,它描述了如何创建或连接到网络。

句法

nmcli connection { show | up | down | modify | add | edit | clone | delete | monitor | reload | load | import | export } [ARGUMENTS...]

设备管理

device 命令显示和管理所有网络接口。

句法

nmcli device { status | show | set | connect | reapply | modify | disconnect | delete | monitor | wifi | lldp } [ARGUMENTS…]

密探

代理命令作为秘密代理或 polkit 代理运行。 如果命令保持 nmcli 运行并且需要密码,请询问用户。

句法

nmcli agent { secret | polkit | all }

配置

nmcli 配置文件位于 /etc/NetworkManager/system-connections/。 由于安装后该文件夹默认为空,因此我们需要创建一个名为“dhcp-home”的连接配置文件并将其分配给设备 ens33。 由于只有一张网卡,我们将不得不切换连接配置文件。

[email protected]: nmcli con add type ethernet con-name dhcp-home ifname ens33 ipv4.method auto
Connection 'dhcp-home' (0611c2c8-83ad-40f7-b7bb-b57668af203d) successfully added.

我们可以使用此命令查看该配置文件。

cat /etc/NetworkManager/system-connectionsdhcp-home

请注意,我们通过 nmcli 命令配置的值,如 id、type、interface-name、ipv4 方法。 这种类型的连接配置文件将使用 dhcp 服务器提供的 IP 地址。

[connection]
id=dhcp-home
uuid=0611c2c8-83ad-40f7-b7bb-b57668af203d
type=ethernet
interface-name=ens33
permissions=

[ethernet]
mac-address-blacklist=

[ipv4]
dns-search=
method=auto

[ipv6]
addr-gen-mode=stable-privacy
dns-search=
method=auto

现在,要激活新的连接配置文件,请运行此命令。

[email protected]:~# nmcli con up dhcp-home 
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/1)

在这里,我们解释如何使用从 dhcp 服务器获取的动态 IP 地址创建连接配置文件。 现在让我们看看如何使用静态 IP 地址创建连接配置文件。 该配置文件将命名为 static-home,并将分配给同一个 ens33 设备。

[email protected]:~#  nmcli con add type ethernet con-name static-home  ifname ens33  ip4 192.168.253.12/24  gw4 192.168.253.2 
Connection 'static-home' (b7e6531d-b183-4791-84c1-9de0c249b583) successfully added.

现在,让我们修改static-home 连接配置文件并添加带有“nmcli con mod static-home ipv4.dns 8.8.8.8”的DNS 服务器并再次检查配置文件。 这次我们将从配置文件中grep dns。

[email protected]:~# nmcli con mod static-home  ipv4.dns 8.8.8.8
[email protected]:~# grep dns /etc/NetworkManager/system-connections/static-home 
dns=8.8.8.8;

我们可以通过 pingCodePre.com 或 google.com 来检查具有静态 IP 的连接配置文件是否配置正确。

[email protected]:~# ping CodePre.com
PING CodePre.com (67.225.187.61) 56(84) bytes of data.
64 bytes from 67.225.187.61 (67.225.187.61): icmp_seq=1 ttl=128 time=142 ms
64 bytes from 67.225.187.61 (67.225.187.61): icmp_seq=2 ttl=128 time=142 ms

PING google.com (216.58.201.110) 56(84) bytes of data.
64 bytes from prg03s02-in-f14.1e100.net (216.58.201.110): icmp_seq=1 ttl=128 time=25.3 ms

请注意,当我们添加或修改连接时,IP 地址和网关属性具有不同的名称。 添加连接时,我们会使用“ip4”和“gw4”,修改后使用“ipv4”和“gwv4”。

为了确认ens33设备的IP地址与配置文件中的相同,我们可以运行“ip addr show | grep ens33”并将其与配置文件中的地址值进行比较。

在本教程中,我们解释了 nmcli 是什么,以及如何安装和配置它。 这涵盖了 NetworkManager 或 nmcli 的基础知识。 我强烈建议我们的读者检查“人 nmcli”以更深入地了解其用法。

我们的支持团队由才华横溢的 Linux 技术人员和系统管理员组成,他们对多种网络托管技术(尤其是本文中讨论的技术)了如指掌。

如果您是完全托管的 VPS 服务器, Cloud 专用,VMWare 私有 Cloud, 私人父服务器或专用服务器所有者,并且您对执行列出的任何步骤感到不舒服,可以通过电话@800.580.4985 与我们联系,一个 聊天 或支持票以帮助您完成此过程。

[ad_2]

Related Posts