PowerShell을 사용하여 고정 내부 개인 IP 주소를 설정하는 방법(클래식)

대부분의 경우 가상 머신에 고정 내부 IP 주소를 지정할 필요가 없습니다. 가상 네트워크의 VM은 사용자가 지정한 범위의 내부 IP 주소를 자동으로 받습니다. 그러나 특정한 상황에서는 특정 VM에 고정 IP 주소를 지정하는 것이 적합한 경우도 있습니다. 예를 들어 VM에서 DNS를 실행하거나 VM을 도메인 컨트롤러로 구성하는 경우입니다. 고정 내부 IP 주소는 중지 상태 및 프로비전 해제 상태에서도 VM에 유지됩니다.

중요

Azure에는 리소스를 만들고 사용하기 위한 Resource Manager 및 클래식이라는 두 가지 배포 모델이 있습니다. 이 문서에서는 클래식 배포 모델 사용에 대해 설명합니다. 대부분의 새 배포는 Resource Manager 배포 모델을 사용하는 것이 좋습니다.

Azure PowerShell Service Management 모듈 설치

다음 명령을 실행하기 전에 머신에 Azure PowerShell Service Management 모듈이 설치되어 있는지 확인합니다. Azure PowerShell Service Management 모듈의 버전 기록은 PowerShell 갤러리에서 Azure 모듈을 참조하세요.

특정 IP 주소를 사용할 수 있는지 확인하는 방법

IP 주소 10.0.0.7TestVnet이라는 이름의 VNet에서 사용할 수 있는지 확인하려면 다음 PowerShell 명령을 실행하고 IsAvailable 값을 확인합니다.

Test-AzureStaticVNetIP –VNetName TestVNet –IPAddress 10.0.0.7 

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

참고

안전한 환경에서 위 명령을 테스트하려는 경우 가상 네트워크 만들기(클래식)의 지침에 따라 TestVnet이라는 이름의 VNet을 만들어 10.0.0.0/8 주소 공간을 사용하도록 합니다.

VM을 만들 때 고정 내부 IP를 지정하는 방법

아래의 PowerShell 스크립트는 TestService라는 새 클라우드 서비스를 만들고 Azure에서 이미지를 검색합니다. 그다음에 이 이미지를 사용하여 새 클라우드 서비스에 TestVM이라는 VM을 만들고 이 VM을 Subnet-1이라는 서브넷에 속하도록 설정하고 VM의 고정 내부 IP로 10.0.0.7을 설정합니다.

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

VM의 고정 내부 IP 정보를 검색하는 방법

위의 스크립트를 사용하여 만든 VM의 고정 내부 IP 정보를 보려면 다음 PowerShell 명령을 실행하고 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

VM에서 고정 내부 IP를 제거하는 방법

위의 스크립트에서 VM에 추가된 고정 내부 IP를 제거하려면 다음 PowerShell 명령을 실행합니다.

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

기존 VM에 고정 내부 IP를 추가하는 방법

위의 스크립트를 사용하여 만든 VM에 고정 내부 IP를 추가하려면 다음 명령을 실행합니다.

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

다음 단계

예약된 IP

인스턴스 수준 공용 IP(ILPIP)

예약된 IP REST API