根据MAC地址设定指定IP,学习SHELL尝试写的

最近接触了一些SHELL,恰巧上周五,主管跟我聊天,问我假如有200台linux服务器,是批量安装的,IP地址不固定该怎指定固定IP。
我当时的想法是根据判断MAC地址来指定。所以周末就尝试着写了一个小脚本。
 
下面是我写的内容:
mac-ip.txt存放的是MAC地址及对应的IP地址
networktest.sh是执行的脚本需配合mac-ip文件来使用。
可以配合kickstart来完成工作。
 
[root@localhost ~]# cat mac-ip.txt
00:0C:29:9E:99:04 192.168.100.101
00:0C:29:9E:99:05 192.168.100.102
00:0C:29:9E:99:06 192.168.100.103
[root@localhost ~]# cat networktest.sh
#!/bin/sh
BROADCAST=$(/sbin/ifconfig eth0|grep -i bcast|awk '{print $3}'|awk -F":" '{print $2}')
HWADDR=$(/sbin/ifconfig eth0|grep -i HWaddr|awk '{print $5}')
NETMASK=$(/sbin/ifconfig eth0|grep "inet addr"|awk '{print $4}'|awk -F":" '{print $2}')
IPADDR=$(grep $HWADDR /root/mac-ip.txt | awk '{print $2}')
cat >/etc/sysconfig/network-scripts/ifcfg-eth0<<EOF
DEVICE=eth0
BOOTPROTO=static
BROADCAST=$BROADCAST
HWADDR=$HWADDR
IPADDR=$IPADDR
NETMASK=$NETMASK
ONBOOT=yes
EOF
service network restart
 
其实也就是一个意义不大的小脚本,真正环境下使用它不合适,因为MAC地址不好统计,还不如根据主机SN编号来设定IP呢。纯当练习用了。。

你可能感兴趣的:(职场,休闲)