您现在的位置是:首页 >学无止境 >nmcli 配置IP网站首页学无止境
nmcli 配置IP
简介nmcli 配置IP
nmcli是NetworkManager的命令行管理工具。可以通过这个工具来配置网卡和连接。
1. 启动NetworkManager
sudo systemctl enable NetworkManager
sudo systemctl start NetworkManager
注意:这个网络管理服务会与 networking
冲突,因此需要先禁用 networking
:
sudo systemctl stop networking
sudo systemctl disable networking
2. 安装nmcli
sudo apt update
sudo apt install NetworkManager
3. 使用
在树莓派上,通过nmcli修改的连接会报错到这个目录下面:/etc/NetworkManager/system-connections
,修改配置后,需要重启服务,或者重启连接才能生效。建立连接后,可以直接在这个目录的文件中修改配置。
注意事项:
- 如使用
sudo nmcli con mod connection1 ipv4.method manual ipv4.addr 192.168.0.100/24
后,这个时候,只是将配置写入到上述目录的配置文件中,还没有生效,因此需要通过以下方法生效:
sudo systemctl restart NetworkManager
sudo nmcli dev con eth0
sudo nmcli con up connection1
尝试使用sudo nmcli con reload
,发现并不能使配置生效。
- 针对网卡的配置修改是单次有效,并切立即生效的。针对连接的修改,需要重启服务或者连接才能生效。
- 如果要修改IP地址,需要将
ipv4.method
属性设置成manual
,即静态分配IP地址。否则,就算重启了连接还是没有办法修改成功。 - IP地址的配置,主要把子网掩码带上。如:
192.168.0.11/24
,不带上子网掩码,很可能造成IP地址配置成功,但是子网掩码默认是255.255.255.255
的情况,这样会导致连接无法连上路由器网关。即无法 Ping 通路由器。
修改示例:
(1) 修改网卡IP地址(单次有效,服务重启失效):
sudo nmcli dev mod eth0 ipv4.method manual ipv4.addr 192.168.0.116/24
(2) 修改网卡IP地址(下次生效):
sudo nmcli con mod "$(nmcli -t -f DEVICE,NAME c s -a | grep eth0 | awk -F ":" '{print $2}')" ipv4.method manual ipv4.addr 192.168.0.119/24
上述命令只能在下次生效,立即生效请追加下面的命令:
sudo nmcli dev con eth0
或
sudo nmcli con up "$(nmcli -t -f DEVICE,NAME c s -a | grep eth0 | awk -F ":" '{print $2}')"
或
sudo systemctl restart NetworkManager
也可以指定连接名称来使用上面的命令,nmcli -t -f DEVICE,NAME c s -a | grep eth0 | awk -F ":" '{print $2}'
命令只是为了找出 eth0
网卡对应连接名称。
(3) 连接Wi-Fi
sudo nmcli dev wifi con wifi_name password 12345678
连接后的wifi,如果密码修改,可以使用这个命令更改密码后重连,也可以通过上述nmcli修改连接属性的方式修改密码重连。
风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。