在 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
如何让 nmcli10.1.1.1
为ens7
接口分配 IP 地址?
我尝试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 ~]#
我应该使用什么语法来让 IP 地址显示在nmcli device show
结果中? 这样我就能从授权的外部人员处 ping 通新的 IP 地址吗?
答案1
您的 conn 修改看起来大部分是正确的,但需要在地址上放置一个网络掩码,否则它将获得默认值(可能是 /8,这可能是也可能不是您想要的)。例如,如果您需要 C 类网络(254 个主机,在您的情况下为 10.1.1.1 到 254),您可以:
nmcli con modify 'Wired connection 1' ipv4.addresses "10.1.1.2/24"
您还需要将配置应用到运行界面。我通常:
nmcli conn down "Wired Connection 1"
nmcli conn up !$
您也许可以只使用 conn up 而无需先关闭接口。
其他注意事项:您可以运行“nmcli conn show“有线连接1”来获取该设备的所有设置。最后,它还会显示所有大写的当前设置。
connection.id: virbr0
connection.stable-id: --
connection.type: bridge
connection.interface-name: virbr0
[截图]
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: --
答案2
nmcli con modify "Wired connection 1" ifname ens7 type ethernet ip4 10.1.1.2/24