公司的内网IP用的比较乱,现在需要整理一下未使用的IP地址,起初从网上找了一个shell脚本,发现有好多问题,现在用这个软件很好用。

软件名字:IPMAC

使用方法:

输入起始IP和结束IP,点击开始,就会列出已经使用的IP和对应的mac地址,我们需要的是未使用的IP,总不能只有一个一个找吧,下面我这有给python脚本,可以实现通过这给收集的结果把未使用的IP列出来

脚本名字:get_avail_ip

import os
import sys
from sets import Set
def get_avail_ip():
    f=open("ipmac.txt","r")
    txt=f.read()
    f.close()
    list=txt.split("\n")
    ip_used=Set()
    for line in list:
        try:
            ip=line.split("\t")[1]
            ip_used.add(ip)
        except:
            pass
   
    ip_avail = Set(["119.147.146.%s"%x for x in range(1,254)]) - ip_used
    for ip in ip_avail: print ip

if __name__=="__main__":
    get_avail_ip()

说明:ipmac.txt是通过ipmac收集的已经使用的IP,

把脚本和ipmac.txt放在同一个目录下,执行这个python语句就可以了

D:\ipmac>python get_avail_ip.py