Linux下批量添加IP

有时候,我们购买了100个以上的IP,难道都要一个一个的来写配置文件吗?Linux这么批量添加IP?可否做到一个配置文件即可?可以!
一.Centos下。
可以在/etc/sysconfig/network-scripts下创建一个range文件

vi /etc/sysconfig/network-scripts/ifcfg-eth0-range0

输入一下

DEVICE=eth0
BOOTPROTO=static
IPADDR_START=64.120.228.163
IPADDR_END=64.120.228.166
CLONENUM_START=8
NETMASK=255.255.255.248
ONBOOT=yes

CLONENUM_START — 网络克隆接口的启始号. # eg “1″ 生成的网络接口会从 eth0:1开始。
IPADDR_START=起始IP
IPADDR_END=结尾IP

然后重启网络让IP生效: service network restart
二.Debian下
debian下不支持centos这种格式,我们写了个脚本来批量添加ip。

# !/bin/bash
for ((i=0;i<=101;i=i+1));
do
    echo "auto eth0:$i">>/etc/network/interfaces
    echo "iface eth0:$i inet static">>/etc/network/interfaces
    let j=$i+3
    echo -e "\taddress 104.238.202.$j">>/etc/network/interfaces
    echo -e "\tnetmask 255.255.255.128">>/etc/network/interfaces
    echo -e "\tgateway 104.238.202.1">>/etc/network/interfaces
    echo "  ">>/etc/network/interfaces
done

当然脚本里面的数值你需要自己改动一下。
如果脚本报错Syntax error: Bad for loop variable,你需要把系统默认的shell从dash换成bash。

dpkg-reconfigure dash

选择No即可

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注