]> git.proxmox.com Git - pve-manager.git/commitdiff
pve5to6: add IP check to misc
authorMira Limbeck <m.limbeck@proxmox.com>
Thu, 27 Jun 2019 13:45:35 +0000 (15:45 +0200)
committerThomas Lamprecht <t.lamprecht@proxmox.com>
Thu, 27 Jun 2019 15:37:39 +0000 (17:37 +0200)
Adds the same check we run in pve-cluster before joining a node to make
sure the hostname resolves to a configured IP.

Signed-off-by: Mira Limbeck <m.limbeck@proxmox.com>
PVE/CLI/pve5to6.pm

index cb27fd638b4363ab7864842cb36eb2379008d55b..65552a3575b48e910f6b3f5ed554deccef3c9cf6 100644 (file)
@@ -366,6 +366,17 @@ sub check_misc {
        if defined($cts);
     log_warn("$running_guests running guests detected - consider migrating/stopping them.")
        if $running_guests > 0;
+
+    my $host = PVE::INotify::nodename();
+    my $local_ip = eval { PVE::Network::get_ip_from_hostname($host) };
+    if ($@) {
+       log_warn("Failed to resolve hostname to IP - $@");
+    } else {
+       my $cidr = Net::IP::ip_is_ipv6($local_ip) ? "$local_ip/128" : "$local_ip/32";
+       my $configured_ips = PVE::Network::get_local_ip_from_cidr($cidr);
+       my $ip_count = scalar(@$configured_ips);
+       log_warn("IP must be configured exactly once on local node - defined $ip_count times") if ($ip_count != 1);
+    }
 }
 
 __PACKAGE__->register_method ({