mirror of
https://git.proxmox.com/git/qemu-server
synced 2025-06-15 21:47:05 +00:00
config: net: avoid duplicate ipam entries on nic update
Updating the NIC of a VM when the following conditions were met: * VM is turned off * NIC is on a bridge that uses automatic dhcp * Leave bridge unchanged led to duplicate IPAM entries for the same network device. This is due to the fact that the add_next_free_cidr always ran on applying pending network changes. Now we only add a new ipam entry if either: * the value of the bridge or mac address changed * the network device has been newly added This way no duplicate IPAM entries should get created. Signed-off-by: Stefan Hanreich <s.hanreich@proxmox.com>
This commit is contained in:
parent
1c5001c2e7
commit
0565f489ff
@ -5254,11 +5254,12 @@ sub vmconfig_apply_pending {
|
||||
safe_string_ne($old_net->{macaddr}, $new_net->{macaddr})
|
||||
)) {
|
||||
PVE::Network::SDN::Vnets::del_ips_from_mac($old_net->{bridge}, $old_net->{macaddr}, $conf->{name});
|
||||
}
|
||||
}
|
||||
#fixme: reuse ip if mac change && same bridge
|
||||
PVE::Network::SDN::Vnets::add_next_free_cidr($new_net->{bridge}, $conf->{name}, $new_net->{macaddr}, $vmid, undef, 1);
|
||||
}
|
||||
} else {
|
||||
PVE::Network::SDN::Vnets::add_next_free_cidr($new_net->{bridge}, $conf->{name}, $new_net->{macaddr}, $vmid, undef, 1);
|
||||
}
|
||||
}
|
||||
};
|
||||
if (my $err = $@) {
|
||||
$add_apply_error->($opt, $err);
|
||||
|
Loading…
Reference in New Issue
Block a user