デュアルスタック ネットワークと共に Azure 仮想マシンを作成する
- [アーティクル]
-
-
この記事では、Azure portal を使用して Azure に仮想マシンを作成します。 デュアルスタック ネットワークと共に仮想マシンが手順の一部として作成されます。 この記事の手順を完了するには、Azure portal、Azure CLI、Azure PowerShell のいずれかから選択します。 完了すると、仮想マシンでは IPv4 と IPv6 の通信がサポートされます。
前提条件
- このチュートリアルには、Azure CLI のバージョン 2.0.28 以降が必要です。 Azure Cloud Shell を使用している場合は、最新バージョンが既にインストールされています。
- アクティブなサブスクリプションが含まれる Azure アカウント。 無料でアカウントを作成できます。
- ローカルにインストールされた Azure PowerShell または Azure Cloud Shell。
- Azure PowerShell にサインインして、使うサブスクリプションを選びます。 詳細については、「Azure PowerShell を使用してサインインする」を参照してください。
- お使いの Az. Network モジュールが 4.3.0 以降であることを確認します。 インストールされているモジュールを確認するには、コマンド Get-InstalledModule-Name "Az.Network" を使用します。 モジュールの更新が必要な場合は、コマンド Update-Module -Name "Az. ネットワーク"。
PowerShell をインストールしてローカルで使用する場合、この記事では Azure PowerShell モジュール バージョン 5.4.1 以降が必要になります。 インストールされているバージョンを確認するには、Get-Module -ListAvailable Az
を実行します。 アップグレードする必要がある場合は、Azure PowerShell モジュールのインストールに関するページを参照してください。 PowerShell をローカルで実行している場合、Connect-AzAccount
を実行して Azure との接続を作成することも必要です。
リソース グループと仮想ネットワークを作成する
このセクションでは、Azure portal で仮想マシン用のリソース グループとデュアルスタック仮想ネットワークを作成します。
Azure portal にサインインします。
ポータルの上部にある検索ボックスに、「仮想ネットワーク」と入力します。 検索結果で、[仮想ネットワーク] を選択します。
[+ 作成] を選択します。
[仮想ネットワークの作成] の [基本] タブで、次の情報を入力するか選択します。
設定 |
値 |
プロジェクトの詳細 |
|
サブスクリプション |
サブスクリプションを選択します。 |
Resource group |
[新規作成] を選択します。 [名前] に「myResourceGroup」と入力します。
を選択します。 |
インスタンスの詳細 |
|
名前 |
「myVNet」と入力します。 |
リージョン |
[米国東部 2] を選択します。 |
[IP アドレス] タブを選ぶか、[次へ]>[次へ] を選びます。
既定の IPv4 アドレス空間 10.0.0.0/16 のままにします。 既定値がない場合、または異なる場合は、「10.0.0.0/16」という IPv4 アドレス空間を入力します。
既定のサブネットを選択します。
[サブネットの編集] ページで、[サブネット名] に「myBackendSubnet」と入力して、[保存] を選びます。
ドロップダウン メニューの [IPv6 アドレス空間の追加] を選びます。
[IPv6 アドレス空間]で、既定のアドレス空間を編集し、その値を 2404:f800:8000:122::/63 に変更します。
IPv6 のサブネットを追加するには、[+ サブネットの追加] を選んで、次の情報を入力するか選びます。
設定 |
値 |
サブネット |
|
サブネット名 |
「myBackendSubnet」と入力します。 |
アドレス範囲 |
既定値の 2404:f800:8000:122:: をそのまま使います。 |
規模 |
既定値の /64 をそのまま使います。 |
[追加] を選択します。
[確認および作成] を選択します。
[作成] を選択します
このセクションでは、Azure CLI を使って仮想マシン用のリソース グループ デュアルスタック仮想ネットワークを作成します。
az group create を使用して、myResourceGroup という名前のリソース グループを場所 eastus2 に作成します。
az group create \
--name myResourceGroup \
--location eastus2
仮想ネットワークを作成するには、az network vnet create を使用します。
az network vnet create \
--resource-group myResourceGroup \
--location eastus2 \
--name myVNet \
--address-prefixes 10.0.0.0/16 2404:f800:8000:122::/63 \
--subnet-name myBackendSubnet \
--subnet-prefixes 10.0.0.0/24 2404:f800:8000:122::/64
このセクションでは、Azure PowerShell を使って仮想マシン用のデュアルスタック仮想ネットワークを作成します。
New-AzResourceGroup を使用して myResourceGroup という名前のリソース グループを eastus2 に作成します。
$rg =@{
Name = 'myResourceGroup'
Location = 'eastus2'
}
New-AzResourceGroup @rg
New-AzVirtualNetwork と New-AzVirtualNetworkSubnetConfig を使用して、仮想ネットワークを作成します。
## Create backend subnet config ##
$subnet = @{
Name = 'myBackendSubnet'
AddressPrefix = '10.0.0.0/24','2404:f800:8000:122::/64'
}
$subnetConfig = New-AzVirtualNetworkSubnetConfig @subnet
## Create the virtual network ##
$net = @{
Name = 'myVNet'
ResourceGroupName = 'myResourceGroup'
Location = 'eastus2'
AddressPrefix = '10.0.0.0/16','2404:f800:8000:122::/63'
Subnet = $subnetConfig
}
New-AzVirtualNetwork @net
パブリック IP アドレスを作成する
このセクションでは、Azure portal で IPv4 と IPv6 の 2 つのパブリック IP アドレスを作成します。
IPv4 パブリック IP アドレスを作成する
ポータルの上部にある検索ボックスに、「パブリック IP アドレス」と入力します。 検索結果から [パブリック IP アドレス] を選択します。
[+ 作成] を選択します。
[パブリック IP アドレスの作成] で、次の情報を入力または選択します。
設定 |
値 |
プロジェクトの詳細 |
|
サブスクリプション |
サブスクリプションを選択します。 |
Resource group |
[myResourceGroup] を選択します。 |
場所 |
[米国東部 2] を選択します。 |
可用性ゾーン |
[ゾーン冗長] を選択します。 |
インスタンスの詳細 |
|
名前 |
「myPublicIP-IPv4」と入力します。 |
IP バージョン |
[IPv4] を選択します。 |
SKU |
規定値である [標準] のままにします。 |
レベル |
既定値の [地域] のままにします。 |
IP アドレスの割り当て |
|
ルーティング設定 |
既定値の [Microsoft ネットワーク] のままにします。 |
アイドル タイムアウト (分) |
既定値の [4] のままにします。 |
DNS 名ラベル |
「myPublicIP-IPv4」と入力します。 |
[確認および作成]、[作成] の順に選択します。
IPv6 パブリック IP アドレスを作成する
ポータルの上部にある検索ボックスに、「パブリック IP アドレス」と入力します。 検索結果から [パブリック IP アドレス] を選択します。
[+ 作成] を選択します。
[パブリック IP アドレスの作成] で、次の情報を入力または選択します。
設定 |
値 |
プロジェクトの詳細 |
|
サブスクリプション |
サブスクリプションを選択します。 |
Resource group |
[myResourceGroup] を選択します。 |
場所 |
[米国東部 2] を選択します。 |
可用性ゾーン |
[ゾーン冗長] を選択します。 |
インスタンスの詳細 |
|
名前 |
「myPublicIP-IPv6」と入力します。 |
IP バージョン |
[IPv6] を選択します。 |
SKU |
規定値である [標準] のままにします。 |
レベル |
既定値の [地域] のままにします。 |
IP アドレスの割り当て |
|
DNS 名ラベル |
「myPublicIP-IPv6」と入力します。 |
[確認および作成]、[作成] の順に選択します。
このセクションでは、Azure CLI を使って IPv4 と IPv6 の 2 つのパブリック IP アドレスを作成します。
パブリック IP アドレスを作成するには、az network public-ip create を使用します。
az network public-ip create \
--resource-group myResourceGroup \
--name myPublicIP-Ipv4 \
--sku Standard \
--version IPv4 \
--zone 1 2 3
az network public-ip create \
--resource-group myResourceGroup \
--name myPublicIP-Ipv6 \
--sku Standard \
--version IPv6 \
--zone 1 2 3
このセクションでは、IPv4 と IPv6 の 2 つのパブリック IP アドレスを作成します。
New-AzPublicIpAddress を使用して、パブリック IP アドレスを作成します。
$ip4 = @{
Name = 'myPublicIP-IPv4'
ResourceGroupName = 'myResourceGroup'
Location = 'eastus2'
Sku = 'Standard'
AllocationMethod = 'Static'
IpAddressVersion = 'IPv4'
Zone = 1,2,3
}
New-AzPublicIpAddress @ip4
$ip6 = @{
Name = 'myPublicIP-IPv6'
ResourceGroupName = 'myResourceGroup'
Location = 'eastus2'
Sku = 'Standard'
AllocationMethod = 'Static'
IpAddressVersion = 'IPv6'
Zone = 1,2,3
}
New-AzPublicIpAddress @ip6
仮想マシンの作成
このセクションでは、仮想マシンとそのサポート リソースを作成します。
仮想マシンの作成
ポータルの上部にある検索ボックスに、「仮想マシン」と入力します。 検索結果から [仮想マシン] を選択します。
[+ 作成] を選択し、[Azure 仮想マシン] を選択します。
[基本] タブで、次の情報を入力または選択します。
設定 |
値 |
プロジェクトの詳細 |
|
サブスクリプション |
サブスクリプションを選択します。 |
Resource group |
[myResourceGroup] を選択します。 |
インスタンスの詳細 |
|
仮想マシン名 |
「myVM」と入力します。 |
リージョン |
[米国東部 2] を選択します。 |
可用性のオプション |
[インフラストラクチャ冗長は必要ありません] を選択します。 |
セキュリティの種類 |
[Standard] を選択します。 |
Image |
[Ubuntu Server 20.04 LTS - Gen2] を選択します。 |
サイズ |
既定のサイズを選択します。 |
管理者アカウント |
|
認証の種類 |
[SSH 公開キー] を選択します。 |
ユーザー名 |
ユーザー名を入力します。 |
SSH 公開キーのソース |
[新しいキーの組を生成] を選択します。 |
キーの組名 |
「mySSHKey」と入力します。 |
受信ポートの規則 |
|
パブリック受信ポート |
[なし] を選択します。 |
[ネットワーク] タブを選択するか、または [次へ: ディスク]、[次へ: ネットワーク] の順に選択します。
[ネットワーク] タブで、次の情報を入力または選択します。
設定 |
値 |
ネットワーク インターフェイス |
|
仮想ネットワーク |
[myVNet] を選択します。 |
Subnet |
[myBackendSubnet (10.1.0.0/24,2404:f800:8000:122:/64)] を選択します。 |
パブリック IP |
[myPublicIP-IPv4] を選択します。 |
NIC ネットワーク セキュリティ グループ |
[Advanced] \(詳細設定) を選択します。 |
ネットワーク セキュリティ グループを構成する |
[新規作成] を選択します。 [名前] に、「myNSG」と入力します。
を選択します。 |
[Review + create](レビュー + 作成) を選択します。
[作成] を選択します。
新しいキー ペアの生成 が表示されます。 [Download private key and create resource](秘密キーをダウンロードしてリソースを作成する) を選択します。
秘密キーがローカル コンピューターにダウンロードされます。 秘密キーをコンピューター上のディレクトリにコピーします。 次の例では、~/.ssh になっています。
ネットワーク インターフェイスが自動的に作成され、作成時に選択した仮想ネットワークに接続されます。 このセクションでは、既存のネットワーク インターフェイスに IPv6 構成を追加します。
ポータルの上部にある検索ボックスに、「仮想マシン」と入力します。 検索結果から [仮想マシン] を選択します。
[myVM] または既存の仮想マシン名を選択します。
[設定] の [ネットワーク] を選択します。
既定のネットワーク インターフェイスの名前は myvmxx で、xx は乱数です。 この例では myvm281 です。 [ネットワーク インターフェイス:] の横にある [myvm281] を選択します。
そのネットワーク インターフェイスのプロパティの [設定] で、[IP 構成] を選択します。
[IP 構成] で [+ 追加] を選択します。
[IP 構成の追加] で、次の情報を入力または選択します。
設定 |
値 |
名前 |
「Ipv6config」と入力します。 |
IP バージョン |
[IPv6] を選択します。 |
プライベート IP アドレスの設定 |
|
配賦 |
既定値の [動的] のままにします。 |
パブリック IP アドレス |
[関連付け] を選択します。 |
パブリック IP アドレス |
[myPublicIP-IPv6] を選択します。 |
[OK] を選択します。
このセクションでは、仮想マシンとそのサポート リソースを作成します。
ネットワーク インターフェイスを作成する
az network nic create を使用して、仮想マシンのネットワーク インターフェイスを作成します。 以前に作成したパブリック IP アドレスと NSG は、NIC に関連付けられています。 ネットワーク インターフェイスは、前に作成した仮想ネットワークに接続されています。
az network nic create \
--resource-group myResourceGroup \
--name myNIC1 \
--vnet-name myVNet \
--subnet myBackEndSubnet \
--network-security-group myNSG \
--public-ip-address myPublicIP-IPv4
IPv6 IP 構成を作成する
NIC に対して IPv6 構成を作成するには、az network nic ip-config create を使用します。
az network nic ip-config create \
--resource-group myResourceGroup \
--name myIPv6config \
--nic-name myNIC1 \
--private-ip-address-version IPv6 \
--vnet-name myVNet \
--subnet myBackendSubnet \
--public-ip-address myPublicIP-IPv6
仮想マシンの作成
仮想マシンを作成するには、az vm create を使用します。
az vm create \
--resource-group myResourceGroup \
--name myVM \
--nics myNIC1 \
--image Ubuntu2204 \
--admin-username azureuser \
--authentication-type ssh \
--generate-ssh-keys
このセクションでは、仮想マシンとそのサポート リソースを作成します。
ネットワーク インターフェイスを作成する
New-AzNetworkInterface と New-AzNetworkInterfaceIpConfig を使用して、仮想マシンのネットワーク インターフェイスを作成します。 以前に作成したパブリック IP アドレスと NSG は、NIC に関連付けられています。 ネットワーク インターフェイスは、前に作成した仮想ネットワークに接続されています。
## Place the virtual network into a variable. ##
$net = @{
Name = 'myVNet'
ResourceGroupName = 'myResourceGroup'
}
$vnet = Get-AzVirtualNetwork @net
## Place the network security group into a variable. ##
$ns = @{
Name = 'myNSG'
ResourceGroupName = 'myResourceGroup'
}
$nsg = Get-AzNetworkSecurityGroup @ns
## Place the IPv4 public IP address into a variable. ##
$pub4 = @{
Name = 'myPublicIP-IPv4'
ResourceGroupName = 'myResourceGroup'
}
$pubIPv4 = Get-AzPublicIPAddress @pub4
## Place the IPv6 public IP address into a variable. ##
$pub6 = @{
Name = 'myPublicIP-IPv6'
ResourceGroupName = 'myResourceGroup'
}
$pubIPv6 = Get-AzPublicIPAddress @pub6
## Create IPv4 configuration for NIC. ##
$IP4c = @{
Name = 'ipconfig-ipv4'
Subnet = $vnet.Subnets[0]
PrivateIpAddressVersion = 'IPv4'
PublicIPAddress = $pubIPv4
}
$IPv4Config = New-AzNetworkInterfaceIpConfig @IP4c
## Create IPv6 configuration for NIC. ##
$IP6c = @{
Name = 'ipconfig-ipv6'
Subnet = $vnet.Subnets[0]
PrivateIpAddressVersion = 'IPv6'
PublicIPAddress = $pubIPv6
}
$IPv6Config = New-AzNetworkInterfaceIpConfig @IP6c
## Command to create network interface for VM ##
$nic = @{
Name = 'myNIC1'
ResourceGroupName = 'myResourceGroup'
Location = 'eastus2'
NetworkSecurityGroup = $nsg
IpConfiguration = $IPv4Config,$IPv6Config
}
New-AzNetworkInterface @nic
仮想マシンの作成
次のコマンドを使用して、仮想マシンを作成します。
$cred = Get-Credential
## Place network interface into a variable. ##
$nic = @{
Name = 'myNIC1'
ResourceGroupName = 'myResourceGroup'
}
$nicVM = Get-AzNetworkInterface @nic
## Create a virtual machine configuration for VMs ##
$vmsz = @{
VMName = 'myVM'
VMSize = 'Standard_DS1_v2'
}
$vmos = @{
ComputerName = 'myVM'
Credential = $cred
}
$vmimage = @{
PublisherName = 'Debian'
Offer = 'debian-11'
Skus = '11'
Version = 'latest'
}
$vmConfig = New-AzVMConfig @vmsz `
| Set-AzVMOperatingSystem @vmos -Linux `
| Set-AzVMSourceImage @vmimage `
| Add-AzVMNetworkInterface -Id $nicVM.Id
## Create the virtual machine for VMs ##
$vm = @{
ResourceGroupName = 'myResourceGroup'
Location = 'eastus2'
VM = $vmConfig
SshKeyName = 'mySSHKey'
}
New-AzVM @vm -GenerateSshKey
SSH 接続をテストする
SSH を使用して仮想マシンに接続して、IPv4 パブリック IP アドレスをテストします。
ポータルの上部にある検索ボックスに、「パブリック IP アドレス」と入力します。 検索結果から [パブリック IP アドレス] を選択します。
[myPublicIP-IPv4] を選択します。
パブリック IPv4 アドレスは、[IP アドレス] の [概要] にあります。 この例では、20.22.46.19 です。
次のコマンドを使用して、仮想マシンへの SSH 接続を開きます。 IP アドレスを自分の仮想マシンの IP アドレスに置き換えます。 azureuser
を仮想マシンの作成時に選択したユーザー名に置き換えます。 この -i
は、前にダウンロードした秘密キーへのパスです。 この例では、~/.ssh/mySSHKey.pem です。
ssh -i ~/.ssh/mySSHkey.pem azureuser@20.22.46.19
仮想マシンの IP アドレスを表示するには、az network public-ip show を使用します。
az network public-ip show \
--resource-group myResourceGroup \
--name myPublicIP-IPv4 \
--query ipAddress \
--output tsv
user@Azure:~$ az network public-ip show \
> --resource-group myResourceGroup \
> --name myPublicIP-IPv4 \
> --query ipAddress \
> --output tsv
20.119.201.208
az network public-ip show \
--resource-group myResourceGroup \
--name myPublicIP-IPv6 \
--query ipAddress \
--output tsv
user@Azure:~$ az network public-ip show \
> --resource-group myResourceGroup \
> --name myPublicIP-IPv6 \
> --query ipAddress \
> --output tsv
2603:1030:408:6::9d
次のコマンドを使用して、仮想マシンへの SSH 接続を開きます。 IP アドレスを自分の仮想マシンの IP アドレスに置き換えます。
ssh azureuser@20.119.201.208
Get-AzPublicIpAddress を使用して、仮想マシンの IP アドレスを表示します。
$ip4 = @{
ResourceGroupName = 'myResourceGroup'
Name = 'myPublicIP-IPv4'
}
Get-AzPublicIPAddress @ip4 | select IpAddress
PS /home/user> Get-AzPublicIPAddress @ip4 | select IpAddress
IpAddress
---------
20.72.115.187
$ip6 = @{
ResourceGroupName = 'myResourceGroup'
Name = 'myPublicIP-IPv6'
}
Get-AzPublicIPAddress @ip6 | select IpAddress
PS /home/user> Get-AzPublicIPAddress @ip6 | select IpAddress
IpAddress
---------
2603:1030:403:3::1ca
次のコマンドを使用して、仮想マシンへの SSH 接続を開きます。 IP アドレスを自分の仮想マシンの IP アドレスに置き換えます。
ssh azureuser@20.72.115.187
リソースをクリーンアップする
この記事で作成したリソースが完了したら、リソース グループとそれに含まれるすべてのリソースを削除します。
ポータル上部の [検索] ボックスに「myResourceGroup」と入力します。 [リソース グループ] の検索結果で [myResourceGroup] を選択します。
[リソース グループの削除] を選択します。
[TYPE THE RESOURCE GROUP NAME](リソース グループ名を入力してください) に「myResourceGroup」と入力し、 [削除] を選択します。
必要がなくなったら、az group delete コマンドを使用して、リソース グループ、仮想マシン、およびすべての関連リソースを削除します。
az group delete \
--name myResourceGroup
必要がなくなったら、Remove-AzResourceGroup コマンドを使用して、リソース グループ、仮想マシン、およびすべての関連リソースを削除できます。
Remove-AzResourceGroup -Name 'myResourceGroup'
次の手順
この記事では、Azure 仮想マシンと共にデュアルスタック ネットワークを作成する方法について説明しました。
Azure 内の IPv6 および IP アドレスの詳細については、以下の記事を参照してください。