据说,关闭NetworkManager服务可以禁用接口自动获取IP地址。未验证!
但是,既然NetworkManager服务和接口自动获取IP地址有关系,那么使用nmcli命令应该也可以达到相同的效果。
通过nmcli conn modify $CC ipv4.method disabled 可以禁用IPv4,自然就不会自动获取ipv4了;
也可通过nmcli conn modify $CC ipv4.method manual ,改成手动配置IP地址,这里需要同时设置IP地址,否则报错。
ipv4.method取值:[auto, link-local, manual, shared, disabled]
IFS_OLD=$IFS ;
IFS=$'\n';
for conn in $(nmcli c show |grep Wired|cut -b 1-19);
do
CC="$(echo $conn |awk '{gsub(/^\s+|\s+$/, "");print}')";
nmcli conn modify $CC ipv4.method disabled && nmcli conn up $CC && nmcli c show $CC |grep 'ipv4.method';
done;
IFS=$IFS_OLD
并没有找到更好的方法,禁用dhcp自动获取IP地址,谁有更好的方式,请给我评论留言,多谢!