public string GetPrivateIp(string nicName)
        {
            var retry = 5;
            var i     = 0;

            while (i < retry)
            {
                using (var client = new NetworkManagementClient(_credentials))
                {
                    try
                    {
                        client.SubscriptionId = _servicePrincipal.Subscription;
                        var    network = NetworkInterfacesOperationsExtensions.GetAsync(client.NetworkInterfaces, GroupName, nicName).GetAwaiter().GetResult();
                        string ip      = network.IpConfigurations[0].PrivateIPAddress;
                        return(ip);
                    }
                    catch (Exception e)
                    {
                        if (i + 1 == retry)
                        {
                            throw;
                        }
                        else
                        {
                            Util.Log($"Encounter error {e.Message} and retry");
                        }
                    }
                };
                i++;
            }
            throw new Exception("Fail to get private IP");
        }
Exemple #2
0
 public string GetPrivateIp(string nicName)
 {
     using (var client = new NetworkManagementClient(_credentials))
     {
         client.SubscriptionId = _servicePrincipal.Subscription;
         var    network = NetworkInterfacesOperationsExtensions.GetAsync(client.NetworkInterfaces, GroupName, nicName).GetAwaiter().GetResult();
         string ip      = network.IpConfigurations[0].PrivateIPAddress;
         return(ip);
     }
 }
        public static async Task <string> GetVMPublicIP(string VMID, string resourceGroup)
        {
            var vm = await AzureMgmtCredentials.Instance.Azure.VirtualMachines.GetByResourceGroupAsync(resourceGroup, VMID);

            using (var client = new NetworkManagementClient(AzureMgmtCredentials.Instance.Credentials))
            {
                string networkInterfaceId = vm.NetworkInterfaceIds[0].Split('/').Last();
                client.SubscriptionId = AzureMgmtCredentials.Instance.SubscriptionId;
                var network =
                    await NetworkInterfacesOperationsExtensions.GetAsync(client.NetworkInterfaces,
                                                                         resourceGroup, networkInterfaceId);

                string publicIPResourceId = network.IpConfigurations[0].PublicIPAddress.Id;

                var ip = await AzureMgmtCredentials.Instance.Azure.PublicIPAddresses.GetByIdAsync(publicIPResourceId);

                return(ip.IPAddress);
            }
        }
Exemple #4
0
        public String GetPublicIpAdresss(string subId, string resourceGroup, string vmName)
        {
            foreach (IVirtualMachine virtualmachine in azure.VirtualMachines.List())
            {
                Console.WriteLine("Addresss");
                Console.WriteLine(virtualmachine.GetPrimaryPublicIPAddress().IPAddress);
                Console.WriteLine("Name");
                Console.WriteLine(virtualmachine.Name);
                Console.WriteLine("ResourceGroupName");
                Console.WriteLine(virtualmachine.ResourceGroupName);
                if (virtualmachine.ResourceGroupName.ToLower().Equals(resourceGroup.ToLower()) && virtualmachine.Name.ToLower().Equals(vmName.ToLower()))
                {
                    return(virtualmachine.GetPrimaryPublicIPAddress().IPAddress);
                }
            }
            // var ipadress = azure.VirtualMachines.GetById(vmName).GetPrimaryPublicIPAddress().IPAddress;
            //Console.WriteLine("Addresss");
            //Console.WriteLine(ipadress);
            // Console.ReadLine();
            var
                credentials = SdkContext.AzureCredentialsFactory.FromServicePrincipal(clientId
                                                                                      , clientsecrett, tenantId
                                                                                      , AzureEnvironment.AzureGlobalCloud);
            var client = new ComputeManagementClient(credentials);

            client.SubscriptionId = subId;

            VirtualMachineInner vm = VirtualMachinesOperationsExtensions.GetAsync(client.VirtualMachines, resourceGroup, vmName).Result;

            var networkName = vm.NetworkProfile.NetworkInterfaces[0].Id.Split('/').Last();

            var clientNetwork = new NetworkManagementClient(credentials);

            clientNetwork.SubscriptionId = subId;
            var    network = NetworkInterfacesOperationsExtensions.GetAsync(clientNetwork.NetworkInterfaces, resourceGroup, vmName).Result;
            string ip      = network.IpConfigurations[0].PrivateIPAddress;

            return(ip);
        }