系统相关
首页 > 系统相关> > web安全day36:Linux脚本编写自动修改IP地址

web安全day36:Linux脚本编写自动修改IP地址

作者:互联网

目录

理解脚本的作用

脚本自动修改ip

变量赋值


linux的脚本类似于windows的批处理。

理解脚本的作用

我们的需求是:上午9点设定eth0网卡ip为192.168.1.100/24 网关为192.168.1.254.下午2点重新设eth0网卡ip为172.16.1.100/24,网关为172.16.1.254

如果我们每天都这么操作,耗时耗力。我们希望用一个自动化的方式来自动修改。

我们可以使用

echo "" > /etc/sysconfig/network-scripts/ifcfg-ens38

清空网卡的信息。

然后使用

echo "DEVICE=ens38">>ifcfg-ens38
echo "TYPE=Ethernet">>ifcfg-ens38
echo "ONBOOT=yes">>ifcfg-ens38
echo "BOOTPROTO=static">>ifcfg-ens38
echo "IPADDR=192.168.1.100">>ifcfg-ens38
echo "NETMASK=255.255.255.0">>ifcfg-ens38
echo "GATEWAY=192.168.1.254">>ifcfg-ens38

逐条将网卡信息写入进去。

重启网卡,使其生效。

ifdown ens-38
ifup ens-38

这个步骤是比较麻烦的,我们希望将其写在一个文件中,通过运行该文件来更改网络信息。我们写的这个文件就是脚本。

这也就是脚本的作用,即简化人工操作流程。

脚本自动修改ip

我们新建一个fixip.sh的文件

在其中写入以下内容。

给fixip.sh文件可执行权限

chmod +x fixip.sh

使用

./fixip.sh

命令执行这个文件

检查是否执行成功

如果需求变更为随机指定不同的ip进行修改

所以我们希望这个脚本是一个交互式的脚本,即我们可手动输入ip地址,网关和子网掩码。

这就涉及到变量赋值。

我们简单理解以下变量赋值的概念

变量赋值

A=

这句话的意思是将hello赋值给A这个变量。

我们可以使用

echo $A 或者 echo "$A"

来查看变量的值

我们可以通过这种方式实现将需要修改的ip地址存放在一个变量中。

read -p "please input ipaddr:" IP

我们将之前的脚本进行修改

read -p "please input ipaddr:" IP
read -p "please input netmask:" MASK
read -p "please input gateway:" GATEWAY
cd /etc/sysconfig/network-scripts/
echo "DEVICE=ens38">>ifcfg-ens38
echo "TYPE=Ethernet">>ifcfg-ens38
echo "ONBOOT=yes">>ifcfg-ens38
echo "BOOTPROTO=static">>ifcfg-ens38
echo "IPADDR=$IP">>ifcfg-ens38
echo "NETMASK=$MASK">>ifcfg-ens38
echo "GATEWAY=$GATEWAY">>ifcfg-ens38
ifdown ens38
ifup ens38

修改成功

欢迎关注博主公众号:旁骛OtherThing,不定期更新技术干货。

 

 

标签:脚本,web,day36,ip,ifcfg,echo,网卡,ens38,IP地址
来源: https://blog.csdn.net/qq_36813857/article/details/122331310