如何使用 nmcli 将 IP 地址添加到接口?

Cod*_*Med 3 networking rhel centos network-interface nmcli

在 CentOS 7 虚拟机上,我有一个名为 的界面ens7,如下所示:

[root@localhost ~]# nmcli con show
NAME                UUID                                  TYPE            DEVICE 
Wired connection 1  448101d7-1f8f-4b78-ad90-7efd5be23b08  802-3-ethernet  ens7   
eth0                d976f7ca-ab7f-4fd0-ab2b-6213815bd1a1  802-3-ethernet  eth0   
Run Code Online (Sandbox Code Playgroud)

如何让 nmcli10.1.1.1为接口分配 IP 地址ens7

我尝试nmcli con modify 'Wired connection 1' ipv4.addresses "10.1.1.2"从虚拟机内输入,但没有成功,如 `` 的结果所示,如下所示:

[root@localhost ~]# nmcli con modify 'Wired connection 1' ipv4.addresses "10.1.1.2"
[root@localhost ~]# nmcli device show
GENERAL.DEVICE:                         eth0
...lots of stuff related to eth0

GENERAL.DEVICE:                         ens7
GENERAL.TYPE:                           ethernet
GENERAL.HWADDR:                         52:54:00:8F:3B:14
GENERAL.MTU:                            1500
GENERAL.STATE:                          70 (connecting (getting IP configuration))
GENERAL.CONNECTION:                     Wired connection 1
GENERAL.CON-PATH:                       /org/freedesktop/NetworkManager/ActiveConnection/64
WIRED-PROPERTIES.CARRIER:               on

GENERAL.DEVICE:                         lo
...lots of stuff related to lo
[root@localhost ~]#
Run Code Online (Sandbox Code Playgroud)

我应该使用什么语法来让 IP 地址显示在结果中nmcli device show 这样我就能从授权的外部人员处 ping 通新的 IP 地址吗?

Mat*_*Pie 5

您的 conn 修改看起来大部分是正确的,但需要在地址上放置一个网络掩码,否则它将获得默认值(可能是 /8,这可能是也可能不是您想要的)。例如,如果您需要 C 类网络(254 个主机,在您的情况下为 10.1.1.1 到 254),您可以:

nmcli con modify 'Wired connection 1' ipv4.addresses "10.1.1.2/24"
Run Code Online (Sandbox Code Playgroud)

您还需要将配置应用到运行界面。我通常:

nmcli conn down "Wired Connection 1"
nmcli conn up !$
Run Code Online (Sandbox Code Playgroud)

您也许可以只使用 conn up 而无需先关闭接口。

其他注意事项:您可以运行“nmcli conn show“有线连接1”来获取该设备的所有设置。最后,它还会显示所有大写的当前设置。

connection.id:                          virbr0
connection.stable-id:                   --
connection.type:                        bridge
connection.interface-name:              virbr0
Run Code Online (Sandbox Code Playgroud)

[截图]

IP4.ADDRESS[1]:                         192.168.122.1/24
IP4.GATEWAY:                            --
IP4.ROUTE[1]:                           dst = 192.168.122.0/24, nh = 0.0.0.0, mt = 0
IP6.GATEWAY:                            --
Run Code Online (Sandbox Code Playgroud)