def reserve_ip(ipstart, ipend):
ip_list=[]
removeip_list = models.Dhcpremoveip.objects.all()
iprange = None
for removeip in removeip_list:
ip_dict={}
ip_dict['start']=removeip.starts
ip_dict['end']=removeip.ends
ip_list.append(ip_dict)
for ip_one in ip_list:
if IP(ip_one['end']).int() <= IP(ipstart).int():
iprange = " range %s %s ;\n"%(ipstart, ipend)
if IP(ip_one['start']).int() >= IP(ipend).int():
iprange = " range %s %s ;\n"%(ipstart, ipend)
if IP(ip_one['end']).int() <= IP(ipend).int() and IP(ip_one['end']).int() >= IP(ipstart).int() and IP(ip_one['start']).int() <= IP(ipstart).int():
iprange = " range %s %s ;\n" % (ip_one['end'], ipend)
if IP(ip_one['end']).int() <= IP(ipend).int() and IP(ip_one['start']).int() >= IP(ipstart).int():
iprange = reserve_ip(ipstart, ip_one['start'])
iprange += reserve_ip(ip_one['end'], ipend)
break;
if IP(ip_one['end']).int() >= IP(ipend).int() and IP(ip_one['start']).int() >= IP(ipstart).int() and IP(ip_one['start']).int() <= IP(ipend).int():
iprange = " range %s %s ;\n" % (ipstart, ip_one['start'])
return iprange
def reserve_ip(ipstart, ipend):
ip_list=[]
removeip_list=models.Dhcpremoveip.objects.all()
iprange=Nonefor removeip inremoveip_list:
ip_dict={}
ip_dict['start']=removeip.starts
ip_dict['end']=removeip.ends
ip_list.append(ip_dict)for ip_one inip_list:if IP(ip_one['end']).int() <= IP(ipstart).int():
iprange= "range %s %s ;\n"%(ipstart, ipend)if IP(ip_one['start']).int() >= IP(ipend).int():
iprange= "range %s %s ;\n"%(ipstart, ipend)if IP(ip_one['end']).int() <= IP(ipend).int() and IP(ip_one['end']).int() >= IP(ipstart).int() and IP(ip_one['start']).int() <= IP(ipstart).int():
iprange= "range %s %s ;\n" % (ip_one['end'], ipend)if IP(ip_one['end']).int() <= IP(ipend).int() and IP(ip_one['start']).int() >= IP(ipstart).int():
iprange= reserve_ip(ipstart, ip_one['start'])
iprange+= reserve_ip(ip_one['end'], ipend)break;if IP(ip_one['end']).int() >= IP(ipend).int() and IP(ip_one['start']).int() >= IP(ipstart).int() and IP(ip_one['start']).int() <= IP(ipend).int():
iprange= "range %s %s ;\n" % (ipstart, ip_one['start'])return iprange