Come impostare un indirizzo IP privato interno statico tramite PowerShell (classico)How to set a static internal private IP address using PowerShell (Classic)

Nella maggior parte dei casi non è necessario specificare un indirizzo IP interno statico per la macchina virtuale.In most cases, you won’t need to specify a static internal IP address for your virtual machine. Le macchine virtuali in una rete virtuale infatti ricevono automaticamente un indirizzo IP interno da un intervallo specificato.VMs in a virtual network will automatically receive an internal IP address from a range that you specify. In alcuni casi è tuttavia opportuno specificare un indirizzo IP statico per una determinata macchina virtuale,But in certain cases, specifying a static IP address for a particular VM makes sense. ad esempio se questa eseguirà DNS o sarà un controller di dominio.For example, if your VM is going to run DNS or will be a domain controller. Un indirizzo IP interno statico resta associato alla macchina virtuale anche in caso di passaggio allo stato di arresto/deprovisioning.A static internal IP address stays with the VM even through a stop/deprovision state.

Importante

Azure offre due modelli di distribuzione per creare e usare le risorse: Gestione risorse e la distribuzione classica.Azure has two different deployment models for creating and working with resources: Resource Manager and classic. Questo articolo illustra l'uso del modello di distribuzione classica.This article covers using the classic deployment model. Microsoft consiglia di utilizzare il modello di distribuzione di Resource Manager per le distribuzioni più recenti.Microsoft recommends that most new deployments use the Resource Manager deployment model.

Come verificare la disponibilità di uno specifico indirizzo IPHow to verify if a specific IP address is available

Per verificare se l'indirizzo IP 10.0.0.7 è disponibile in una rete virtuale denominata TestVnet, eseguire il comando PowerShell seguente e controllare il valore per IsAvailable:To verify if the IP address 10.0.0.7 is available in a vnet named TestVnet, run the following PowerShell command and verify the value for IsAvailable:

Test-AzureStaticVNetIP –VNetName TestVNet –IPAddress 10.0.0.7 

IsAvailable          : True
AvailableAddresses   : {}
OperationDescription : Test-AzureStaticVNetIP
OperationId          : fd3097e1-5f4b-9cac-8afa-bba1e3492609
OperationStatus      : Succeeded

Nota

Per testare il comando precedente in un ambiente sicuro, seguire le istruzioni in Creare una rete virtuale (versione classica) per creare una rete virtuale denominata TestVnet e assicurarsi che usi lo spazio degli indirizzi 10.0.0.0/8.If you want to test the command above in a safe environment follow the guidelines in Create a virtual network (classic) to create a vnet named TestVnet and ensure it uses the 10.0.0.0/8 address space.

Come specificare un indirizzo IP interno statico durante la creazione di una macchina virtualeHow to specify a static internal IP when creating a VM

Lo script di PowerShell seguente crea un nuovo servizio cloud denominato TestService, quindi recupera un'immagine da Azure, crea una macchina virtuale denominata TestVM nel nuovo servizio cloud tramite l'immagine recuperata, imposta la macchina virtuale in modo da trovarsi in una subnet denominata Subnet-1 e imposta 10.0.0.7 come indirizzo IP interno statico per la macchina virtuale:The PowerShell script below creates a new cloud service named TestService, then retrieves an image from Azure, then creates a VM named TestVM in the new cloud service using the retrieved image, sets the VM to be in a subnet named Subnet-1, and sets 10.0.0.7 as a static internal IP for the VM:

New-AzureService -ServiceName TestService -Location "Central US"
$image = Get-AzureVMImage|?{$_.ImageName -like "*RightImage-Windows-2012R2-x64*"}
New-AzureVMConfig -Name TestVM -InstanceSize Small -ImageName $image.ImageName `
| Add-AzureProvisioningConfig -Windows -AdminUsername adminuser -Password MyP@ssw0rd!! `
| Set-AzureSubnet –SubnetNames Subnet-1 `
| Set-AzureStaticVNetIP -IPAddress 10.0.0.7 `
| New-AzureVM -ServiceName "TestService" –VNetName TestVnet

Come recuperare le informazioni relative all'indirizzo IP interno statico per una macchina virtualeHow to retrieve static internal IP information for a VM

Per visualizzare le informazioni relative all'indirizzo IP interno statico per la macchina virtuale creata con lo script precedente, eseguire il comando PowerShell seguente e osservare i valori per IpAddress:To view the static internal IP information for the VM created with the script above, run the following PowerShell command and observe the values for IpAddress:

Get-AzureVM -Name TestVM -ServiceName TestService

DeploymentName              : TestService
Name                        : TestVM
Label                       : 
VM                          : Microsoft.WindowsAzure.Commands.ServiceManagement.Model.PersistentVM
InstanceStatus              : Provisioning
IpAddress                   : 10.0.0.7
InstanceStateDetails        : Windows is preparing your computer for first use...
PowerState                  : Started
InstanceErrorCode           : 
InstanceFaultDomain         : 0
InstanceName                : TestVM
InstanceUpgradeDomain       : 0
InstanceSize                : Small
HostName                    : rsR2-797
AvailabilitySetName         : 
DNSName                     : http://testservice000.cloudapp.net/
Status                      : Provisioning
GuestAgentStatus            : Microsoft.WindowsAzure.Commands.ServiceManagement.Model.GuestAgentStatus
ResourceExtensionStatusList : {Microsoft.Compute.BGInfo}
PublicIPAddress             : 
PublicIPName                : 
NetworkInterfaces           : {}
ServiceName                 : TestService
OperationDescription        : Get-AzureVM
OperationId                 : 34c1560a62f0901ab75cde4fed8e8bd1
OperationStatus             : OK

Come rimuovere un indirizzo IP interno statico da una macchina virtualeHow to remove a static internal IP from a VM

Per rimuovere l'indirizzo IP interno statico aggiunto alla macchina virtuale nello script precedente, eseguire il comando PowerShell seguente:To remove the static internal IP added to the VM in the script above, run the following PowerShell command:

Get-AzureVM -ServiceName TestService -Name TestVM `
| Remove-AzureStaticVNetIP `
| Update-AzureVM

Come aggiungere un indirizzo IP interno statico a una macchina virtuale esistenteHow to add a static internal IP to an existing VM

Per aggiungere un indirizzo IP interno statico alla macchina virtuale creata usando lo script precedente, eseguire il comando seguente:To add a static internal IP to the VM created using the script above, runt he following command:

Get-AzureVM -ServiceName TestService000 -Name TestVM `
| Set-AzureStaticVNetIP -IPAddress 10.10.0.7 `
| Update-AzureVM

Passaggi successiviNext steps

IP riservatoReserved IP

IP pubblico a livello di istanza (ILPIP)Instance-Level Public IP (ILPIP)

API REST di IP riservatiReserved IP REST APIs