クイック スタート:PowerShell を使用して仮想ネットワークを作成するQuickstart: Create a virtual network using PowerShell

仮想ネットワークによって、仮想マシン (VM) などの Azure リソースが互いにプライベートな通信を行ったりインターネットと通信したりできるようになります。A virtual network lets Azure resources, like virtual machines (VMs), communicate privately with each other, and with the internet.

このクイック スタートでは、仮想ネットワークの作成方法について説明します。In this quickstart, you learn how to create a virtual network. 仮想ネットワークを作成したら、2 つの VM を仮想ネットワークにデプロイします。After creating a virtual network, you deploy two VMs into the virtual network. 次にインターネットから VM に接続し、仮想ネットワークを介してプライベートで通信します。You then connect to the VMs from the internet, and communicate privately over the virtual network.

前提条件Prerequisites

PowerShell をインストールしてローカルで使用する場合、この記事では Azure PowerShell モジュール バージョン 5.4.1 以降が必要になります。If you choose to install and use PowerShell locally, this article requires the Azure PowerShell module version 5.4.1 or later. インストールされているバージョンを確認するには、Get-Module -ListAvailable Az を実行します。Run Get-Module -ListAvailable Az to find the installed version. アップグレードする必要がある場合は、Azure PowerShell モジュールのインストールに関するページを参照してください。If you need to upgrade, see Install Azure PowerShell module. PowerShell をローカルで実行している場合、Connect-AzAccount を実行して Azure との接続を作成することも必要です。If you're running PowerShell locally, you also need to run Connect-AzAccount to create a connection with Azure.

リソース グループと仮想ネットワークを作成するCreate a resource group and a virtual network

リソース グループと仮想ネットワークを構成するために必要な手順がいくつかあります。There are a handful of steps you have to walk through to get your resource group and virtual network configured.

リソース グループの作成Create the resource group

仮想ネットワークを作成するには、その前に、仮想ネットワークをホストするリソース グループを作成する必要があります。Before you can create a virtual network, you have to create a resource group to host the virtual network. New-AzResourceGroup を使用して Azure リソース グループを作成します。Create a resource group with New-AzResourceGroup. この例では、Eastus の場所内に CreateVNetQS-rg という名前のリソース グループを作成します。This example creates a resource group named CreateVNetQS-rg in the Eastus location:

$rg = @{
    Name = 'CreateVNetQS-rg'
    Location = 'EastUS'
}
New-AzResourceGroup @rg

仮想ネットワークの作成Create the virtual network

New-AzVirtualNetwork を使用して仮想ネットワークを作成します。Create a virtual network with New-AzVirtualNetwork. この例では、EastUS の場所内に myVNet という名前の既定の仮想ネットワークを作成します。This example creates a default virtual network named myVNet in the EastUS location:

$vnet = @{
    Name = 'myVNet'
    ResourceGroupName = 'CreateVNetQS-rg'
    Location = 'EastUS'
    AddressPrefix = '10.0.0.0/16'    
}
$virtualNetwork = New-AzVirtualNetwork @vnet

サブネットの追加Add a subnet

Azure では、仮想ネットワーク内のサブネットにリソースがデプロイされるため、サブネットを作成する必要があります。Azure deploys resources to a subnet within a virtual network, so you need to create a subnet. Add-AzVirtualNetworkSubnetConfig を使用して、default というサブネット構成を作成します。Create a subnet configuration named default with Add-AzVirtualNetworkSubnetConfig:

$subnet = @{
    Name = 'default'
    VirtualNetwork = $virtualNetwork
    AddressPrefix = '10.0.0.0/24'
}
$subnetConfig = Add-AzVirtualNetworkSubnetConfig @subnet

サブネットを仮想ネットワークに関連付けるAssociate the subnet to the virtual network

Set-AzVirtualNetwork を使用して、仮想ネットワークにサブネット構成を書き込むことができます。You can write the subnet configuration to the virtual network with Set-AzVirtualNetwork. このコマンドで、サブネットが作成されます。This command creates the subnet:

$virtualNetwork | Set-AzVirtualNetwork

仮想マシンを作成するCreate virtual machines

仮想ネットワーク内に 2 つの VM を作成します。Create two VMs in the virtual network.

最初の VM を作成するCreate the first VM

New-AzVM を使用して最初の VM を作成します。Create the first VM with New-AzVM. 次のコマンドを実行すると、資格情報の入力が求められます。When you run the next command, you're prompted for credentials. VM のユーザー名とパスワードを入力します。Enter a user name and password for the VM:

$vm1 = @{
    ResourceGroupName = 'CreateVNetQS-rg'
    Location = 'EastUS'
    Name = 'myVM1'
    VirtualNetworkName = 'myVNet'
    SubnetName = 'default'
}
New-AzVM @vm1 -AsJob

-AsJob オプションを使用すると、バックグラウンドで VM が作成されます。The -AsJob option creates the VM in the background. 次の手順に進むことができます。You can continue to the next step.

Azure でバックグラウンドで VM の作成を開始すると、次のような内容が返されます。When Azure starts creating the VM in the background, you'll get something like this back:

Id     Name            PSJobTypeName   State         HasMoreData     Location             Command
--     ----            -------------   -----         -----------     --------             -------
1      Long Running... AzureLongRun... Running       True            localhost            New-AzVM

2 つ目の VM を作成するCreate the second VM

このコマンドを使用して 2 番目の VM を作成します。Create the second VM with this command:

$vm2 = @{
    ResourceGroupName = 'CreateVNetQS-rg'
    Location = 'EastUS'
    Name = 'myVM2'
    VirtualNetworkName = 'myVNet'
    SubnetName = 'default'
}
New-AzVM @vm2

別のユーザーとパスワードを作成する必要があります。You'll have to create another user and password. Azure で VM を作成するには数分かかります。Azure takes a few minutes to create the VM.

重要

Azure の処理が完了するまで、次の手順に進まないでください。Don't continue with the next step until Azure's finished. 処理の完了は、PowerShell に出力が返されることでわかります。You'll know it's done when it returns output to PowerShell.

インターネットから VM に接続するConnect to a VM from the internet

VM のパブリック IP アドレスを取得するには、Get-AzPublicIpAddress を使用します。To get the public IP address of the VM, use Get-AzPublicIpAddress.

この例では、myVm1 VM のパブリック IP アドレスを返しています。This example returns the public IP address of the myVm1 VM:

$ip = @{
    Name = 'myVM1'
    ResourceGroupName = 'CreateVNetQS-rg'
}
Get-AzPublicIpAddress @ip | select IpAddress

お使いのローカル コンピューターでコマンド プロンプトを開きます。Open a command prompt on your local computer. mstsc コマンドを実行します。Run the mstsc command. <publicIpAddress> を最後の手順で返されたパブリック IP アドレスに置き換えます。Replace <publicIpAddress> with the public IP address returned from the last step:

注意

ローカル コンピューター上の PowerShell プロンプトからこれらのコマンドを実行済みで、Az PowerShell モジュール バージョン 1.0 以降を使用している場合、そのインターフェイスで続行できます。If you've been running these commands from a PowerShell prompt on your local computer, and you're using the Az PowerShell module version 1.0 or later, you can continue in that interface.

mstsc /v:<publicIpAddress>
  1. メッセージが表示されたら、 [Connect] を選択します。If prompted, select Connect.

  2. VM の作成時に指定したユーザー名とパスワードを入力します。Enter the user name and password you specified when creating the VM.

    注意

    場合によっては、 [その他] > [別のアカウントを使用する] を選択して、VM の作成時に入力した資格情報を指定する必要があります。You may need to select More choices > Use a different account, to specify the credentials you entered when you created the VM.

  3. [OK] を選択します。Select OK.

  4. 証明書の警告を受け取ることがあります。You may receive a certificate warning. この場合は、 [はい] または [続行] を選択します。If you do, select Yes or Continue.

VM 間の通信Communicate between VMs

  1. myVm1 のリモート デスクトップで、PowerShell を開きます。In the Remote Desktop of myVm1, open PowerShell.

  2. ping myVm2」と入力します。Enter ping myVm2.

    次のような内容が返されます。You'll get something like this back:

    PS C:\Users\myVm1> ping myVm2
    
    Pinging myVm2.ovvzzdcazhbu5iczfvonhg2zrb.bx.internal.cloudapp.net
    Request timed out.
    Request timed out.
    Request timed out.
    Request timed out.
    
    Ping statistics for 10.0.0.5:
        Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),
    

    インターネット制御メッセージ プロトコル (ICMP) を使用しているため、ping は失敗します。The ping fails, because it uses the Internet Control Message Protocol (ICMP). 既定では、Windows ファイアウォールを介した ICMP は許可されていません。By default, ICMP isn't allowed through your Windows firewall.

  3. 後の手順で myVm2myVm1 への ping を許可するには、次のコマンドを入力します。To allow myVm2 to ping myVm1 in a later step, enter this command:

    New-NetFirewallRule –DisplayName "Allow ICMPv4-In" –Protocol ICMPv4
    

    このコマンドを実行すると、Windows ファイアウォールを介して ICMP を受信できます。That command lets ICMP inbound through the Windows firewall.

  4. myVm1 へのリモート デスクトップ接続を閉じます。Close the remote desktop connection to myVm1.

  5. インターネットから VM に接続する」の手順を繰り返します。Repeat the steps in Connect to a VM from the internet. 今回は myVm2 に接続します。This time, connect to myVm2.

  6. myVm2 VM のコマンド プロンプトで ping myvm1 と入力します。From a command prompt on the myVm2 VM, enter ping myvm1.

    次のような内容が返されます。You'll get something like this back:

    C:\windows\system32>ping myVm1
    
    Pinging myVm1.e5p2dibbrqtejhq04lqrusvd4g.bx.internal.cloudapp.net [10.0.0.4] with 32 bytes of data:
    Reply from 10.0.0.4: bytes=32 time=2ms TTL=128
    Reply from 10.0.0.4: bytes=32 time<1ms TTL=128
    Reply from 10.0.0.4: bytes=32 time<1ms TTL=128
    Reply from 10.0.0.4: bytes=32 time<1ms TTL=128
    
    Ping statistics for 10.0.0.4:
        Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
    Approximate round trip times in milli-seconds:
        Minimum = 0ms, Maximum = 2ms, Average = 0ms
    

    myVm1 から応答を受信します。これは、前の手順で myVm1 VM での Windows ファイアウォール経由の ICMP を許可したためです。You receive replies from myVm1, because you allowed ICMP through the Windows firewall on the myVm1 VM in a previous step.

  7. myVm2 へのリモート デスクトップ接続を閉じます。Close the remote desktop connection to myVm2.

リソースをクリーンアップするClean up resources

仮想ネットワークと VM を完了したら、Remove-AzResourceGroup を使用して、リソース グループとそのすべてのリソースを削除します。When you're done with the virtual network and the VMs, use Remove-AzResourceGroup to remove the resource group and all the resources it has:

Remove-AzResourceGroup -Name 'CreateVNetQS-rg' -Force

次のステップNext steps

このクイック スタートでは次のようにします。In this quickstart:

  • 既定の仮想ネットワークと 2 つの VM を作成しました。You created a default virtual network and two VMs.
  • インターネットから 1 つの VM に接続し、2 つの VM の間でプライベート通信を行いました。You connected to one VM from the internet and communicated privately between the two VMs.

仮想ネットワークでは、VM 間のプライベート通信に制限はありません。Private communication between VMs is unrestricted in a virtual network.

各種 VM ネットワーク通信の構成の詳細については、次の記事に進んでください。Advance to the next article to learn more about configuring different types of VM network communications: