use PVE::Cluster qw(cfs_read_file cfs_write_file cfs_register_file cfs_lock_file);
use PVE::Tools;
use JSON;
-use NetAddr::IP;
+use NetAddr::IP qw(:lower);
+
use Net::IP;
use Digest::SHA;
while(1) {
$iplist++;
last if $iplist eq $broadcast;
- my $ip = $iplist->addr();
+ my $ip = $iplist->canon();
next if defined($dbsubnet->{ips}->{$ip});
$freeip = $ip;
last;
use Net::Subnet qw(subnet_matcher);
use Net::IP;
+use NetAddr::IP qw(:lower);
use PVE::Cluster qw(cfs_read_file cfs_write_file cfs_lock_file);
use PVE::Network::SDN::Dns;
return if !$subnet || !$ip;
+ my $ipaddr = new NetAddr::IP($ip);
+ $ip = $ipaddr->canon();
+
my $ipamid = $zone->{ipam};
my $dns = $zone->{dns};
my $dnszone = $zone->{dnszone};
sub del_ip {
my ($zone, $subnetid, $subnet, $ip, $hostname) = @_;
- return if !$subnet;
+ return if !$subnet || !$ip;
+
+ my $ipaddr = new NetAddr::IP($ip);
+ $ip = $ipaddr->canon();
my $ipamid = $zone->{ipam};
my $dns = $zone->{dns};