#yyds干货盘点# web安全day36:Linux脚本编写自动修改IP地址
Posted 小梁L同学
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了#yyds干货盘点# web安全day36:Linux脚本编写自动修改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
修改成功
以上是关于#yyds干货盘点# web安全day36:Linux脚本编写自动修改IP地址的主要内容,如果未能解决你的问题,请参考以下文章
#yyds干货盘点# web安全day13:简单深透测试流程
#yyds干货盘点# web安全day6:IIS之WEB服务器
#yyds干货盘点# web安全day21:学习使用最基本的批处理程序
#yyds干货盘点# web安全day7:IIS之FTP服务器