灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:2079回复:0

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

楼主#
更多 发布于:2011-10-02 11:44
最近接触了一些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呢。纯当练习用了……

喜欢0 评分0
游客

返回顶部