我在使用网络管理器命令行界面将 IP 地址方法设置为手动时遇到问题。这是我期望起作用的命令:
[me@computer]$ sudo nmcli connection modify 'Wired connection 1' ipv4.method manual ipv4.addresses 192.168.2.180/24
Error: failed to modify ipv4.method: 'manual ipv4.addresses 192.168.2.180/24' not among [auto, link-local, manual, shared, disabled].
仅单独指定 ipv4.method 命令也不起作用。
[me@computer]$ sudo nmcli connection modify 'Wired connection 1' ipv4.method manual
Error: Failed to modify connection 'Wired connection 1': (32) ipv4.addresses: property is missing
将其设置为自动可以按照我的预期工作。
[sri@s6000-devel gui3]$ sudo nmcli connection modify 'Wired connection 1' ipv4.method auto
预期的最终结果是在配置脚本中设置 BOOTPROTO 参数。
cat /etc/sysconfig/network-scripts/ifcfg-Wired_connection_1
TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
NAME="Wired connection 1"
UUID=1d578ea5-7164-44b2-xxxx-xxxxxxxx
ONBOOT=yes
HWADDR=E0:3F:49:xx:xx:xx
PEERDNS=yes
PEERROUTES=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
谁能告诉我我做错了什么?如何让 nmcli 在启动时禁用 DHCP 并使用手动 IP 地址?
这是我的操作系统:
[me@computer]$ uname -a
Linux me.computer.com 3.18.5-101.fc20.x86_64 #1 SMP Mon Feb 2 20:58:23 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
这是已安装的 nmcli 版本。
[sri@s6000-devel gui3]$ nmcli -v
nmcli tool, version 0.9.9.0-46.git20131003.fc20
编辑
尝试 chexum 提供的命令版本给出以下答案。
sudo nmcli conn modify "Wired connection 1" ipv4.addresses 192.168.2.180/24 ipv4.gateway 192.168.2.1 ipv4.method manual
Error: failed to modify ipv4.addresses: '192.168.2.180/24 ipv4.gateway
192.168.2.1 ipv4.method manual' is not valid (use ip[/prefix] [gateway]).
我敢打赌解决方案是升级到最新版本。我们将会看到。
答案1
这财产丢失错误表明它需要立即更改更多属性。手册中还有一个部分nmcli-examples(5)
显示了此消息:
Do you also want to set 'ipv4.method' to 'manual'? [yes]: yes
所以我宁愿同时更改所有属性,这似乎对我有用:
# nmcli conn modify "Wired connection 1" ipv4.addresses 192.2.0.100/24 ipv4.gateway 192.0.2.254 ipv4.method manual
不过,要恢复,更容易:
# nmcli conn modify "Wired connection 1" ipv4.method auto
也许您想要更改更多属性(例如 DNS 或 ipv6 相关配置),因此请使用以下命令检查接口上的所有可用属性:
# nmcli conn show "Wired connection 1"
答案2
最好先使用 等创建新连接ipv4.address
。ipv4.gateway
例如:
nmcli connection add con-name New-connection type ethernet ipv4.addresses 192.168.1.23 ipv4.gateway 192.168.1.23 ifname enp0s3
执行此操作后,您可以修改 的连接ipv4.method manual
。
nmcli connection modify New-connection ipv4.method manual
然后你需要运行
nmcli con reload
或者
reboot
现在检查有关您的连接的完整信息:
nmcli connection show New-connection
我敢打赌这肯定会成功,不会出现任何错误。