利用nmcli配置网络的脚本
·
为了方便在虚拟机或其他Linux服务器上配置网络,可以利用nmcli设置网络固定地址。
先查找网络名称:
nmcli device status
DEVICE TYPE STATE CONNECTION
ens160 ethernet 已连接 ens160
lo loopback 连接(外部) lo
创建setup_network.sh 文件内容如下:
#!/bin/bash
# 定义网络参数(可根据实际环境修改)
INTERFACE="ens160"
IP_ADDR="192.168.5.76/22"
GATEWAY="192.168.4.1"
VAR_DNS_SERVER=("223.5.5.5" "114.114.114.114")
DNS="${VAR_DNS_SERVER[@]}"
echo "正在配置网卡: $INTERFACE ..."
# 1. 配置静态 IP 地址
nmcli connection modify $INTERFACE \
ipv4.addresses $IP_ADDR \
ipv4.gateway $GATEWAY \
ipv4.dns $DNS \
ipv4.method manual
nmcli connection modify $INTERFACE ipv4.dns "${DNS}"
# 2. 重启网络连接使配置生效
nmcli connection up $INTERFACE
# 3. 验证配置是否生效
echo "网络配置完成,当前 IP 信息如下:"
ip addr show $INTERFACE | grep "inet "
设置脚本可执行
chmod +x setup_network.sh
sudo ./setup_network.sh
查看网络设置的命令:
[root@localhost ~]# nmcli device status
DEVICE TYPE STATE CONNECTION
ens160 ethernet 已连接 ens160
lo loopback 连接(外部) lo
[root@localhost ~]# ip addr show ens160
2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:0c:29:9f:2a:6f brd ff:ff:ff:ff:ff:ff
inet 192.168.5.75/22 br192.16850.7.255 scope global noprefixroute ens160
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fe9f:2a6f/64 scope link noprefixroute
valid_lft forever preferred_lft forever
[root@localhost ~]# ip route show
default 192.168.4.1 dev ens160 proto static metric192.168
192.168.4.0/22 dev ens160 proto kernel scope lrc 192.168.5.75 metric 100
[root@localhost ~]# cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 223.5.5.5
nameserver 114.114.114.114
......
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐



所有评论(0)