一键修改IP多实例
一键修改IP多实例-v1
#!/bin/bash
#2020-03-01
#auto change ip
#By Flyaway
######################
grep "dhcp" /etc/sysconfig/network-scripts/ifcfg-ens33
if [ $? -eq 0 ];then
cat >/etc/sysconfig/network-scripts/ifcfg-ens33 <<EOF
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.1.19
PREFIX=24
GATEWAY=192.168.1.1
DNS1=114.114.114.114
EOF
fi
cat /etc/sysconfig/network-scripts/ifcfg-ens33
systemctl restart network
ifconfig
一键修改IP多实例-v2
#!/bin/bash
#2020-03-01
#auto change ip
#By Flyaway
######################
ETH_FIX="24"
ETH_NAME="ens33"
ETH_WAY="192.168.1.1"
ETH_IP="192.168.1.19"
ETH_DNS="114.114.114.114"
ETH_BAK="/data/backup/$(date +%Y%m%d%H%M%S)"
ETH_DIR="/etc/sysconfig/network-scripts/"
cd $ETH_DIR
if [ ! -d $ETH_BAK ];then
mkdir -p $ETH_BAK
fi
\cp ifcfg-$ETH_NAME $ETH_BAK
grep "dhcp" ifcfg-$ETH_NAME
if [ $? -eq 0 ];then
cat >ifcfg-$ETH_NAME <<EOF
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
DEVICE=$ETH_NAME_
ONBOOT=yes
IPADDR=$ETH_IP
PREFIX=$ETH_FIX
GATEWAY=$ETH_WAY
DNS1=$ETH_DNS
EOF
fi
cat ifcfg-$ETH_NAME
systemctl restart network
ifconfig $ETH_NAME
一键修改IP多实例-v3
#!/bin/bash
#2020-03-01
#auto change ip
#By Flyaway
######################
ETH_IP="$1"
ETH_FIX="24"
ETH_NAME="ens33"
ETH_WAY="192.168.1.1"
ETH_DNS="114.114.114.114"
ETH_DIR="/etc/sysconfig/network-scripts/"
ETH_BAK="/data/backup/`date +%Y%m%d%H%M%S`"
if [ $# -eq 0 ];then
echo -e "\033[32m------------------------\033[0m"
echo -e "\033[32mUsage:{/bin/sh $0 192.168.1.xxx}\033[0m"
exit 1
fi
cd $ETH_DIR
if [ ! -d $ETH_BAK ];then
mkdir -p $ETH_BAK
fi
\cp ifcfg-$ETH_NAME $ETH_BAK
#CHECK_NUM=`grep "dhcp" ifcfg-$ETH_NAME|wc -l`
#if [ $CHECK_NUM -eq 1 ];then
grep "dhcp" ifcfg-$ETH_NAME
if [ $? -eq 0 ];then
cat >ifcfg-$ETH_NAME <<EOF
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
DEVICE=$ETH_NAME_
ONBOOT=yes
IPADDR=$ETH_IP
PREFIX=$ETH_FIX
GATEWAY=$ETH_WAY
DNS1=$ETH_DNS
EOF
fi
cat ifcfg-$ETH_NAME
systemctl restart network
ifconfig $ETH_NAME
一键修改IP多实例-v4
#!/bin/bash
#2020-03-01
#auto change ip
#By Flyaway
######################
ETH_IP="$1"
ETH_FIX="24"
ETH_NAME="ens33"
ETH_WAY="192.168.1.1"
ETH_DNS="114.114.114.114"
ETH_DIR="/etc/sysconfig/network-scripts/"
ETH_BAK="/data/backup/`date +%Y%m%d%H%M%S`"
if [ $# -eq 0 ];then
echo -e "\033[32m------------------------\033[0m"
echo -e "\033[32mUsage:{/bin/sh $0 192.168.1.xxx}\033[0m"
exit 1
fi
cd $ETH_DIR
if [ ! -d $ETH_BAK ];then
mkdir -p $ETH_BAK
fi
\cp ifcfg-$ETH_NAME $ETH_BAK
#CHECK_NUM=`grep "dhcp" ifcfg-$ETH_NAME|wc -l`
#if [ $CHECK_NUM -eq 1 ];then
grep "dhcp" ifcfg-$ETH_NAME
if [ $? -eq 0 ];then
cat >ifcfg-$ETH_NAME <<EOF
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
DEVICE=$ETH_NAME_
ONBOOT=yes
IPADDR=$ETH_IP
PREFIX=$ETH_FIX
GATEWAY=$ETH_WAY
DNS1=$ETH_DNS
EOF
else
read -p "The server static ipaddr alreaby exist,please ensure change other static ip?" INPUT
if [ $INPUT == "yes" -o $INPUT == "y" -o $INPUT == "Y" ];then
cat >ifcfg-$ETH_NAME <<EOF
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
DEVICE=$ETH_NAME_
ONBOOT=yes
IPADDR=$ETH_IP
PREFIX=$ETH_FIX
GATEWAY=$ETH_WAY
DNS1=$ETH_DNS
EOF
fi
fi
cat ifcfg-$ETH_NAME
systemctl restart network
ifconfig $ETH_NAME
一键修改IP多实例-v5
#!/bin/bash
#2020-03-01
#auto change ip
#By Flyaway
######################
ETH_IP="$1"
ETH_FIX="24"
ETH_NAME="ens33"
ETH_WAY="192.168.1.1"
ETH_DNS="114.114.114.114"
ETH_DIR="/etc/sysconfig/network-scripts/"
ETH_BAK="/data/backup/`date +%Y%m%d%H%M%S`"
function change_ip(){
cat >ifcfg-$ETH_NAME <<EOF
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
DEVICE=$ETH_NAME_
ONBOOT=yes
IPADDR=$ETH_IP
PREFIX=$ETH_FIX
GATEWAY=$ETH_WAY
DNS1=$ETH_DNS
EOF
cat ifcfg-$ETH_NAME
echo -e "\033[32m IP 修改成功请查看:\033[0m"
}
if [ $# -eq 0 ];then
echo -e "\033[32m------------------------\033[0m"
echo -e "\033[32mUsage:{/bin/sh $0 192.168.1.xxx}\033[0m"
exit 1
fi
cd $ETH_DIR
if [ ! -d $ETH_BAK ];then
mkdir -p $ETH_BAK
fi
\cp ifcfg-$ETH_NAME $ETH_BAK
#CHECK_NUM=`grep "dhcp" ifcfg-$ETH_NAME|wc -l`
#if [ $CHECK_NUM -eq 1 ];then
grep "dhcp" ifcfg-$ETH_NAME
if [ $? -eq 0 ];then
change_ip
else
echo -e "\033[32m------------------------\033[0m"
cat ifcfg-$ETH_NAME
read -p "The server static ipaddr alreaby exist,please ensure change other static ip?" INPUT
if [ $INPUT == "yes" -o $INPUT == "y" -o $INPUT == "Y" ];then
change_ip
fi
fi
#cat ifcfg-$ETH_NAME
systemctl restart network
#ifconfig $ETH_NAME
一键修改IP多实例-v6
#!/bin/bash
#2020-03-01
#auto change ip
#By Flyaway
######################
ETH_IP="$1"
ETH_FIX="24"
ETH_NAME="ens33"
ETH_WAY="192.168.1.1"
ETH_DNS="114.114.114.114"
ETH_DIR="/etc/sysconfig/network-scripts/"
ETH_BAK="/data/backup/`date +%Y%m%d%H%M%S`"
#定义函数:
function change_ip(){
cat >ifcfg-$ETH_NAME <<EOF
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
DEVICE=$ETH_NAME
ONBOOT=yes
IPADDR=$ETH_IP
PREFIX=$ETH_FIX
GATEWAY=$ETH_WAY
DNS1=$ETH_DNS
EOF
cat ifcfg-$ETH_NAME
echo -e "\033[32m IP 修改成功请查看:\033[0m"
}
#判断$1是否输入IP,不输入则退出:
if [ $# -eq 0 ];then
echo -e "\033[32m------------------------\033[0m"
echo -e "\033[32mUsage:{/bin/sh $0 192.168.1.xxx}\033[0m"
exit 1
fi
#判断目录是否存在,不存在则创建:
cd $ETH_DIR
if [ ! -d $ETH_BAK ];then
mkdir -p $ETH_BAK
fi
#修改IP之前拷贝原网卡文件:
\cp ifcfg-$ETH_NAME $ETH_BAK
#CHECK_NUM=`grep "dhcp" ifcfg-$ETH_NAME|wc -l`
#if [ $CHECK_NUM -eq 1 ];then
grep "dhcp" ifcfg-$ETH_NAME
if [ $? -eq 0 ];then
#引用函数:(动态IP修改为静态IP)
change_ip
else
#静态IP修改为其他静态IP:
echo -e "\033[32m------------------------\033[0m"
cat ifcfg-$ETH_NAME
read -p "The server static ipaddr alreaby exist,please ensure change other static ip?" INPUT
if [ $INPUT == "yes" -o $INPUT == "y" -o $INPUT == "Y" ];then
change_ip
fi
fi
#实现修改之前确认是否修改,如果不修改需要恢复原IP信息:
read -p "The server ip change succeded,restart network.service yes or no?" INPUT
if [ $INPUT == "yes" -o $INPUT == "y" -o $INPUT == "Y" ];then
systemctl restart network
else
\cp $ETH_BAK/ifcfg-$ETH_NAME $ETH_DIR
cat ifcfg-$ETH_NAME
fi
一键修改IP多实例-v7
#!/bin/bash
#2020-03-01
#auto change ip
#By Flyaway
######################
ETH_IP="$1"
ETH_FIX="24"
ETH_NAME="ens33"
ETH_WAY="192.168.1.1"
ETH_DNS="114.114.114.114"
ETH_DIR="/etc/sysconfig/network-scripts/"
ETH_BAK="/data/backup/`date +%Y%m%d%H%M%S`"
#定义函数:
function change_ip(){
cat >ifcfg-$ETH_NAME <<EOF
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
DEVICE=$ETH_NAME
ONBOOT=yes
IPADDR=$ETH_IP
PREFIX=$ETH_FIX
GATEWAY=$ETH_WAY
DNS1=$ETH_DNS
EOF
cat ifcfg-$ETH_NAME
echo -e "\033[32m IP 修改成功请查看:\033[0m"
}
#判断$1是否输入IP,不输入则退出:
if [ $# -eq 0 ];then
echo -e "\033[32m------------------------\033[0m"
echo -e "\033[32mUsage:{/bin/sh $0 请输入将需要修改的IP:}\033[0m"
exit 1
fi
#while 判断用户输入的IP是否正确,如果不正确,让其循环输入,直到正确为止:
while true
do
IP1=$(echo $ETH_IP|cut -d"." -f1)
IP2=$(echo $ETH_IP|cut -d"." -f2)
IP3=$(echo $ETH_IP|cut -d"." -f3)
IP4=$(echo $ETH_IP|cut -d"." -f4)
if [ ! -z $IP1 ];then
if [ $IP1 -ge 1 -a $IP1 -le 255 -a $IP2 -ge 0 -a $IP2 -le 255 -a $IP3 -ge 0 -a $IP3 -le 255 -a $IP4 -ge 0 -a $IP4 -le 255 ];then
echo $ETH_IP
break
else
echo -e "\033[32m--------------------\033[0m"
read -p "Please retry input server ip: " ETH_IP
fi
fi
read -p "Please retry input server ip: " ETH_IP
done
#判断目录是否存在,不存在则创建:
cd $ETH_DIR
if [ ! -d $ETH_BAK ];then
mkdir -p $ETH_BAK
fi
#修改IP之前拷贝原网卡文件:
\cp ifcfg-$ETH_NAME $ETH_BAK
#CHECK_NUM=`grep "dhcp" ifcfg-$ETH_NAME|wc -l`
#if [ $CHECK_NUM -eq 1 ];then
grep "dhcp" ifcfg-$ETH_NAME
if [ $? -eq 0 ];then
#引用函数:(动态IP修改为静态IP)
change_ip
else
#静态IP修改为其他静态IP:
echo -e "\033[32m------------------------\033[0m"
cat ifcfg-$ETH_NAME
read -p "The server static ipaddr alreaby exist,please ensure change other static ip?" INPUT
if [ $INPUT == "yes" -o $INPUT == "y" -o $INPUT == "Y" ];then
change_ip
fi
fi
#实现修改之前确认是否修改,如果不修改需要恢复原IP信息:
read -p "The server ip change succeded,restart network.service yes or no?" INPUT
if [ $INPUT == "yes" -o $INPUT == "y" -o $INPUT == "Y" ];then
systemctl restart network
else
\cp $ETH_BAK/ifcfg-$ETH_NAME $ETH_DIR
cat ifcfg-$ETH_NAME
fi
一键修改IP多实例的更多相关文章
- Win7+xp命令行 一键修改IP、DNS
这里提供了一个简便方法:(该方法为Win7下的,XP下的见最后一行) 第一步:新建一个txt文件 第二步:在文件中添加如下内容: netsh interface ip set address name ...
- KingbaseES R3 集群一键修改集群用户密码案例
案例说明: 在KingbaseES R3集群的最新版本中增加了kingbase_monitor.sh一键修改集群用户密码的功能,本案例是对此功能的测试. kingbaseES R3集群一键修改密码说明 ...
- KingbaseES R6 集群sys_monitor.sh change_password一键修改集群用户密码
案例说明: kingbaseES R6集群用户密码修改,需要修改两处: 1)修改数据库用户密码(alter user): 2)修改.encpwd文件中用户密码: 可以通过sys_monitor.sh ...
- linux修改IP
linux命令行修改IP的2个方法 2010-12-30 10:25:50 分类: LINUX 方式一: ifconfig eth0 192.168.1.18 netmask 255.255.255 ...
- CentOS(RedHat)命令行永久修改IP地址、网关、DNS
1.修改IP地址vim /etc/sysconfig/network-scripts/ifcfg-eth0DEVICE=eth0 #网卡名称BOOTPROTO=static #获取ip的方式(stat ...
- windows自动修改ip的bat文件
@echo off title --IP自动设置 -- MODE con: COLS=80 lines=30 color 0a :main cls echo 按提示操作 echo. echo 设置为无 ...
- Linux下如何修改ip地址
在Linux的系统下如何才能修改IP信息 以前总是用ifconfig修改,重启后总是得重做.如果修改配置文件,就不用那么麻烦了- A.修改ip地址 即时生效: # ifconfig eth0 192. ...
- CentOS 设置网络(修改IP&修改网关&修改DNS)--update.14.08.15
自己电脑上装的虚拟机用桥接方式连接物理机,虚拟机重启后ip会发生变化,非常阻碍Xshell的连接和hosts指定的dns. 通过修改IP为static模式,保持IP不变. ============== ...
- windows 命令修改IP
修改ip: netsh -c interface ip set address name="本地连接" source=static addr=192.168.11.100 mask ...
- Linux命令行修改IP、网关、DNS的方法
Linux中在命令行中修改IP地址.网关.DNS的方法. 网卡eth0 IP修改为 102.168.0.1 复制代码代码如下: ifconfig eth0 102.168.0.1 netmask ...
随机推荐
- 一文了解io包中的discard类型
1. 引言 io.discard是Go语言标准库提供一个结构体类型,其在丢弃不需要的数据场景下非常好用.本文我们将从io.discard 类型的基本定义出发,讲述其基本使用和实现原理,接着简单描述 i ...
- 如何在 Windows Server 2022 阿里云服务器上搭建自己的 MQTT 服务器。
一.简介 最近,在做一个项目的时候,需要在线管理网络继电器,以前也做过硬件的项目,但是这样的项目不多.现在我想实现一个在线可以接受网络继电器发送的信号,也可以向网络继电器发送命令,控制其的运行.这个功 ...
- js闭包的一些笔记
闭包 闭包是一个可以访问外部作用域的内部函数,即使这个外部作用域已经执行结束 作用域 作用域决定这个变量的生命周期及其可见性.当我们创建一个函数,就会生成一个新的作用域. 通过var创建的变量只有函数 ...
- 何为DDD
从这一刻开始,请大家忘记自己是一名技术人员,用业务的角度来思考问题. 1.什么是DDD DDD(Domain-driven design,领域驱动设计),是一个很好的应用于微服务架构的方法论 DDD要 ...
- XCTF-CGfsb
考察知识点 PWN.格式化字符串漏洞 题目链接 https://adworld.xctf.org.cn/task/answer?type=pwn&number=2&grade=0&am ...
- C++欧几里得算法求最大公约数和最小公倍数
定义 最大公约数即为 Greatest Common Divisor,常缩写为 gcd. 一组整数的公约数,是指同时是这组数中每一个数的约数的数. 一组整数的最大公约数,是指所有公约数里面最大的一个. ...
- SQL 注入学习手册【笔记】
SQL 注入基础 [若本文有问题请指正] 有回显 回显正常 基本步骤 1. 判断注入类型 数字型 or 字符型 数字型[示例]:?id=1 字符型[示例]:?id=1' 这也是在尝试闭合原来的 sql ...
- quarkus数据库篇之四:本地缓存
欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 本文是<quarkus数据库篇> ...
- 解决git出现fatal: detected dubious ownership in repository at XXXXX的错误
在window环境下,使用git命令时报错fatal: detected dubious ownership in repository at XXXXXX,图片如下 解决方法如下 添加一行代码 gi ...
- Api接口如何防止被刷?
当今,越来越多的应用程序和服务都提供了API接口,使得开发人员可以方便地与这些应用程序和服务进行交互.但是,由于API接口是公开的,因此很容易被黑客利用,对系统造成损害.为了确保API接口的安全性 ...