使用nmcli分配静态IP地址


14

因此,我试图为VM提供一个静态IP地址,这种情况特别棘手。

VM在具有自己的公共IP范围的ESXi群集上运行。

我让它(一个sorta)使用一个IPv4地址,除了每次启动时都会重新分配它,现在摆弄nmcli之后,我无法获得分配给它的任何IPv4地址。

接口是ens32,我已更改ipv4.addressesXXX.XXX.120.44/24(想要具有address 120.44),XXX.XXX.120.1将其设置为网关,并将其设置为手动。

是否有人对为什么这种方法不起作用有任何见解?所有联机指南均适用于较早的网络服务,而不适用于NetworkManager。


所以必须不惜一切代价通过网络管理员吗?
phk

1
还是有可用的DHCP?这将把复杂性推到DHCP服务器上,仅要求节点使用DHCP。
thrig

希望您不要介意,但我将标题更改为更通用。
garethTheRed

@phk fedora 23不喜欢您启用网络,因此您不能使用较旧的配置系统
Space Bear

您没有nmtui吗?
TheLovelySausage

Answers:


25

尝试:

# nmcli con add con-name "static-ens32" ifname ens32 type ethernet ip4 xxx.xxx.120.44/24 gw4 xxx.xxx.120.1
# nmcli con mod "static-ens32" ipv4.dns "xxx.xxx.120.1,8.8.8.8"
# nmcli con up "static-ens32" iface ens32

接下来,找到其他连接并将其删除。例如:

# nmcli con show
NAME         UUID                 TYPE           DEVICE
ens32        ff9804db5-........   802-3-ethernet --
static-ens32 a4b59cb4a-........   802-3-ethernet ens32
# nmcli con del ens32

下次重新启动时,您应该建立static-ens32连接,因为它是唯一可用的连接。


我试图从全新安装的原始起点开始执行此操作,这需要一些不同的命令序列。您是否愿意展示如何从头开始安装全新的CentOS 7?这是链接:unix.stackexchange.com/questions/349607/…–
CodeMed

0

单个IPv4地址为/ 32。/ 24指定一个网络,在这种情况下为XXX.XXX.120。[0-255]。尝试将ipv4.address条目更改为,XXX.XXX.120.44/32然后看看会发生什么。如果那行不通,则我必须问注释中的相同问题-是否需要NetworkManager,或者我们可以使用其他方式配置地址吗?


nmcli希望IP地址带有CIDR表示法的子网掩码。
garethTheRed

我玩过/ 24/16和/ 32都没有的CIDR表示法。
太空熊

0

将/ 32(单个)更改为/ 24(网络)可解决ipv4.addresses分配范围和第一个IP地址的问题。

我认为在您的情况下,“手动”可能是个问题。手册可能会告诉nm根本不管理或不处理dhcp。您是否尝试过“共享”,然后使用ipv4.addresses而不是ipv4.address1?或者,如果是手动的,则ipv4.address1可能是正确的,而不是ipv4.addresses。

您是否查看过/ var / log / syslog?dnsmasq在我的系统中说32太小,nmcli报告错误输出中“太小”。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.