脚本
#!/bin/bash
eth0=eth0
# 正则
cidr_reg="^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])/([1-9]|[1-2][0-9]|3[12])$"
ip_reg="^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$"
# 设置网络ip
read -p "set ip(eg:192.168.1.1/24):" address
address=`echo $address | grep -Eoe ${cidr_reg}`
# 设置网关
read -p "set gateway(eg:192.168.1.254):" gateway
gateway=`echo $gateway | grep -Eoe ${ip_reg}`
# 设置dns
read -p "set dns(eg:8.8.8.8):" dns
dns=`echo $dns | grep -Eoe ${ip_reg}`
if [[ $address && $gateway ]];then
if [[ $dns ]];then
nmcli connection modify $eth0 \
connection.autoconnect yes \
ipv4.method manual \
ipv4.addresses $address \
ipv4.gateway $gateway \
ipv4.dns $dns
else
nmcli connection modify $eth0 \
connection.autoconnect yes \
ipv4.method manual \
ipv4.addresses $address \
ipv4.gateway $gateway
fi
# 激活网卡
nmcli connection up $eth0
else
echo -e "\e[31m invalid parameter!\e[0m"
fi
1.nmcli命令设置
设置网络:1.手动分配ip
[network-scripts]# nmcli connection modify ens36 \
> connection.autoconnect yes \
> ipv4.method manual \
> ipv4.addresses 192.168.190.133/24 \
> ipv4.gateway 192.168.190.2 \
> ipv4.dns 8.8.8.8
设置网络:2.自动分配ip
[network-scripts]# nmcli connection modify ens36 \
> connection.autoconnect yes \
> ipv4.method auto
激活
[root@ceph-node-1 network-scripts]# nmcli connection up ens36
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/3)
查看
[root@ceph-node-1 network-scripts]# nmcli connection show ens36
2.手动修改配置文件
vim /etc/sysconfig/network-scripts/ifcfg-ens36
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO="static"
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens36
DEVICE=ens36
ONBOOT=yes
IPADDR=192.168.190.133
PREFIX=24
GATEWAY=192.168.190.2
DNS1=8.8.8.8
UUID=418da202-9a8c-b73c-e8a1-397e00f3c6b2
IPV4_ROUTE_METRIC=0 #路由优先级