仮想ネットワーク サブネットから NAT ゲートウェイ リソースを作成および削除する方法について説明します。 NAT ゲートウェイを使用すると、Azure Virtual Network 内のリソースの送信接続が有効になります。 デプロイ後に変更された NAT ゲートウェイに関連付けられているパブリック IP アドレスとパブリック IP アドレス プレフィックスを変更できます。
このアーティクルでは、NAT ゲートウェイの次の側面を管理する方法について説明します。
NAT ゲートウェイを作成し、既存のサブネットに関連付けます。
既存のサブネットから NAT ゲートウェイを削除し、NAT ゲートウェイを削除します。
パブリック IP アドレスまたはパブリック IP プレフィックスを追加または削除します。
前提条件
この記事で Azure PowerShell を使うには、次のものが必要です。
ローカルにインストールされた Azure PowerShell または Azure Cloud Shell。
PowerShell をインストールしてローカルで使用する場合、この記事では Azure PowerShell モジュール バージョン 5.4.1 以降が必要になります。 インストールされているバージョンを確認するには、Get-Module -ListAvailable Az
を実行します。 アップグレードする必要がある場合は、Azure PowerShell モジュールのインストールに関するページを参照してください。
PowerShell をローカル環境で実行している場合は、Connect-AzAccount
を実行して Azure との接続を作成する必要もあります。
Az.Network
モジュールが 4.3.0 以降であることを確認します。 インストールされているモジュールを確認するには、コマンドGet-InstalledModule -Name "Az.Network"
を使用します。 モジュールの更新が必要な場合は、Update-Module -Name Az.Network
コマンドを使います。
Azure PowerShell にサインインして、使うサブスクリプションを選びます。 詳細については、「Azure PowerShell を使用してサインインする」を参照してください。
この記事の Azure CLI を使うには、次のものが必要です。
- Azure CLI バージョン 2.31.0 以降。 Azure Cloud Shell では最新バージョンが使われます。
NAT ゲートウェイを作成し、既存のサブネットに関連付ける
NAT ゲートウェイ リソースを作成し、Azure portal、Azure PowerShell、Azure CLI、または Bicep を使って、それを既存のサブネットに追加できます。
Azure portal にサインインします。
Azure portal の上部にある検索ボックスに、「NAT ゲートウェイ」と入力します。 検索結果から [NAT ゲートウェイ] を選択します。
[+ 作成] を選択します。
[ネットワーク アドレス変換 (NAT) ゲートウェイを作成します] の [基本] タブで、次の情報を入力または選択します。
設定 |
値 |
プロジェクトの詳細 |
|
サブスクリプション |
サブスクリプションを選択します。 |
Resource group |
リソース グループを選択するか、[新規作成] を選択して、新しい リソース グループを作成します。 |
インスタンスの詳細 |
|
NAT ゲートウェイ名 |
「nat-gateway」と入力します。 |
リージョン |
自分のリージョンを選択します。 この記事では、[米国東部 2] を使います。 |
可用性ゾーン |
[ゾーンなし] を選択します。 NAT ゲートウェイの可用性の詳細については、「NAT ゲートウェイと可用性ゾーン」を参照してください。 |
TCP アイドル タイムアウト (分) |
既定値の 4 を選択します。 |
[送信 IP] タブを選択するか、 [次へ: 送信 IP] を選択します。
既存のパブリック IP アドレスまたはプレフィックス、またはその両方を選択して NAT ゲートウェイに関連付け、送信接続を有効にすることができます。
NAT ゲートウェイの新しいパブリック IP を作成するには、[新しいパブリック IP アドレスの作成] を選択します。 [名前] に「public-ip-nat」と入力します。 [OK] を選択します。
NAT ゲートウェイの新しいパブリック IP プレフィックスを作成するには、[新しいパブリック IP プレフィックスの作成] を選択します。 [名前] に「public-ip-prefix-nat」と入力します。 プレフィックスのサイズを選びます。 [OK] を選択します。
[サブネット] タブを選択するか、 [次へ: サブネット] を選択します。
仮想ネットワークを選択します。 この例では、ドロップダウン リストで vnet-1 を選択します。
subnet-1 の横のチェックボックスをオンにします。
[Review + create](レビュー + 作成) を選択します。
[作成] を選択します
パブリック IP アドレス
パブリック IP アドレスを持つ NAT ゲートウェイを作成するには、次の PowerShell コマンドを実行します。
New-AzPublicIpAddress コマンドレットを使って、NAT ゲートウェイ用のパブリック IP アドレスを作成します。
## Create public IP address for NAT gateway ##
$ip = @{
Name = 'public-ip-nat'
ResourceGroupName = 'test-rg'
Location = 'eastus2'
Sku = 'Standard'
AllocationMethod = 'Static'
}
New-AzPublicIpAddress @ip
New-AzNatGateway コマンドレットを使って、NAT ゲートウェイ リソースを作成し、作成したパブリック IP アドレスを関連付けます。 Set-AzVirtualNetworkSubnetConfig コマンドレットを使って、仮想ネットワーク サブネット用の NAT ゲートウェイを構成します。
## Place the virtual network into a variable. ##
$net = @{
Name = 'vnet-1'
ResourceGroupName = 'test-rg'
}
$vnet = Get-AzVirtualNetwork @net
## Place the public IP address you created previously into a variable. ##
$pip = @{
Name = 'public-ip-nat'
ResourceGroupName = 'test-rg'
}
$publicIP = Get-AzPublicIPAddress @pip
## Create NAT gateway resource ##
$nat = @{
ResourceGroupName = 'test-rg'
Name = 'nat-gateway'
IdleTimeoutInMinutes = '4'
Sku = 'Standard'
Location = 'eastus2'
PublicIpAddress = $publicIP
}
$natGateway = New-AzNatGateway @nat
## Create the subnet configuration. ##
$sub = @{
Name = 'subnet-1'
VirtualNetwork = $vnet
NatGateway = $natGateway
AddressPrefix = '10.0.0.0/24'
}
Set-AzVirtualNetworkSubnetConfig @sub
## Save the configuration to the virtual network. ##
$vnet | Set-AzVirtualNetwork
パブリック IP プレフィックス
パブリック IP プレフィックスを持つ NAT ゲートウェイを作成するには、次のコマンドを使います。
New-AzPublicIpPrefix コマンドレットを使って、NAT ゲートウェイ用のパブリック IP プレフィックスを作成します。
## Create public IP prefix for NAT gateway ##
$ip = @{
Name = 'public-ip-prefix-nat'
ResourceGroupName = 'test-rg'
Location = 'eastus2'
Sku = 'Standard'
PrefixLength ='29'
}
New-AzPublicIpPrefix @ip
New-AzNatGateway コマンドレットを使って、NAT ゲートウェイ リソースを作成し、作成したパブリック IP プレフィックスを関連付けます。 Set-AzVirtualNetworkSubnetConfig コマンドレットを使って、仮想ネットワーク サブネット用の NAT ゲートウェイを構成します。
## Place the virtual network into a variable. ##
$net = @{
Name = 'vnet-1'
ResourceGroupName = 'test-rg'
}
$vnet = Get-AzVirtualNetwork @net
## Place the public IP prefix you created previously into a variable. ##
$pip = @{
Name = 'public-ip-prefix-nat'
ResourceGroupName = 'test-rg'
}
$publicIPprefix = Get-AzPublicIPPrefix @pip
## Create NAT gateway resource ##
$nat = @{
ResourceGroupName = 'test-rgNAT'
Name = 'nat-gateway'
IdleTimeoutInMinutes = '4'
Sku = 'Standard'
Location = 'eastus2'
PublicIpPrefix = $publicIPprefix
}
$natGateway = New-AzNatGateway @nat
## Create the subnet configuration. ##
$sub = @{
Name = 'subnet-1'
VirtualNetwork = $vnet
NatGateway = $natGateway
AddressPrefix = '10.0.0.0/24'
}
Set-AzVirtualNetworkSubnetConfig @sub
## Save the configuration to the virtual network. ##
$vnet | Set-AzVirtualNetwork
パブリック IP アドレス
パブリック IP アドレスを持つ NAT ゲートウェイを作成するには、次のコマンドを使います。
az network public-ip create を使用して、NAT ゲートウェイ のパブリック IP アドレスを作成します。
az network public-ip create \
--resource-group test-rg \
--___location eastus2 \
--name public-ip-nat \
--sku standard
az network nat gateway create を使って、NAT ゲートウェイ リソースを作成し、作成したパブリック IP アドレスを関連付けます。
az network nat gateway create \
--resource-group test-rg \
--name nat-gateway \
--public-ip-addresses public-ip-nat \
--idle-timeout 4
az network vnet subnet update を使用して、NAT ゲートウェイを仮想ネットワーク サブネットに関連付けます。
az network vnet subnet update \
--resource-group test-rg \
--vnet-name vnet-1 \
--name subnet-1 \
--nat-gateway nat-gateway
パブリック IP プレフィックス
パブリック IP プレフィックスを持つ NAT ゲートウェイを作成するには、次のコマンドを使います。
az network public-ip prefix create を使用して、NAT ゲートウェイのパブリック IP プレフィックスを作成します。
az network public-ip prefix create \
--length 29 \
--resource-group test-rg \
--___location eastus2 \
--name public-ip-prefix-nat
az network nat gateway create を使って、NAT ゲートウェイ リソースを作成し、作成したパブリック IP プレフィックスを関連付けます。
az network nat gateway create \
--resource-group test-rg \
--name nat-gateway \
--public-ip-prefixes public-ip-prefix-nat \
--idle-timeout 10
az network vnet subnet update を使用して、NAT ゲートウェイを仮想ネットワーク サブネットに関連付けます。
az network vnet subnet update \
--resource-group test-rg \
--vnet-name vnet-1 \
--name subnet-1 \
--nat-gateway nat-gateway
@description('Name of the NAT gateway')
param natgatewayname string = 'nat-gateway'
@description('Name of the NAT gateway public IP')
param publicipname string = 'public-ip-nat'
@description('Name of resource group')
param ___location string = resourceGroup().___location
var existingVNetName = 'vnet-1'
var existingSubnetName = 'subnet-1'
resource vnet 'Microsoft.Network/virtualNetworks@2023-05-01' existing = {
name: existingVNetName
}
output vnetid string = vnet.id
resource publicip 'Microsoft.Network/publicIPAddresses@2023-06-01' = {
name: publicipname
___location: ___location
sku: {
name: 'Standard'
}
properties: {
publicIPAddressVersion: 'IPv4'
publicIPAllocationMethod: 'Static'
idleTimeoutInMinutes: 4
}
}
resource natgateway 'Microsoft.Network/natGateways@2023-06-01' = {
name: natgatewayname
___location: ___location
sku: {
name: 'Standard'
}
properties: {
idleTimeoutInMinutes: 4
publicIpAddresses: [
{
id: publicip.id
}
]
}
}
output natgatewayid string = natgateway.id
resource updatedsubnet01 'Microsoft.Network/virtualNetworks/subnets@2023-06-01' = {
parent: vnet
name: existingSubnetName
properties: {
addressPrefix: vnet.properties.subnets[0].properties.addressPrefix
natGateway: {
id: natgateway.id
}
}
}
既存のサブネットから NAT ゲートウェイを削除し、リソースを削除する
既存のサブネットから NAT ゲートウェイを削除するには、次のステップを実行します。
Azure portal にサインインします。
Azure portal の上部にある検索ボックスに、「NAT ゲートウェイ」と入力します。 検索結果から [NAT ゲートウェイ] を選択します。
[nat-gateway] を選択します。
[設定] で、 [サブネット] を選択します。
すべてのサブネットから NAT ゲートウェイを削除するには、[関連付けの解除] を選択します。
複数のサブネットのうち 1 つだけから NAT ゲートウェイを削除するには、サブネットの横にあるチェックボックスをオフにし、[保存] を選択します。
NAT ゲートウェイをサブスクリプション内の別のサブネットまたは仮想ネットワークに関連付けることができるようになりました。 NAT ゲートウェイ リソースを削除するには、次のステップを実行します。
Azure portal の上部にある検索ボックスに、「NAT ゲートウェイ」と入力します。 検索結果から [NAT ゲートウェイ] を選択します。
[nat-gateway] を選択します。
削除を選択します。
はいを選択します。
Set-AzVirtualNetworkSubnetConfig を使用して、値を $null に設定することで、サブネットから NAT ゲートウェイの関連付けを削除します。 Set-AzVirtualNetwork を使用して、仮想ネットワーク構成を更新します。
# Specify the resource group and NAT gateway name
$resourceGroupName = "test-rg"
# Specify the virtual network name and subnet name
$virtualNetworkName = "vnet-1"
$subnetName = "subnet-1"
# Get the virtual network
$vnet = @{
Name = $virtualNetworkName
ResourceGroupName = $resourceGroupName
}
$virtualNetwork = Get-AzVirtualNetwork @vnet
# Get the subnet
$subnet = $virtualNetwork.Subnets | Where-Object {$_.Name -eq $subnetName}
# Remove the NAT gateway association from the subnet
$subnet.NatGateway = $null
# Update the subnet configuration
$subConfig = @{
Name = $subnetName
VirtualNetwork = $virtualNetwork
AddressPrefix = $subnet.AddressPrefix
}
Set-AzVirtualNetworkSubnetConfig @subConfig
# Update the virtual network
Set-AzVirtualNetwork -VirtualNetwork $virtualNetwork
Remove-AzNatGateway を使用して、NAT ゲートウェイ リソースを削除します。
# Specify the resource group and NAT gateway name
$resourceGroupName = "test-rg"
$natGatewayName = "nat-gateway"
$nat = @{
Name = $natGatewayName
ResourceGroupName = $resourceGroupName
}
Remove-AzNatGateway @nat
az network vnet subnet update を使用して、サブネットから NAT ゲートウェイを削除します。
az network vnet subnet update \
--resource-group test-rg \
--vnet-name vnet-1 \
--name subnet-1 \
--remove natGateway
az network nat gateway delete を使用して、NAT ゲートウェイ リソースを削除します。
az network nat gateway delete \
--name nat-gateway \
--resource-group test-rg
@description('Name of resource group')
param ___location string = resourceGroup().___location
var existingVNetName = 'vnet-1'
var existingSubnetName = 'subnet-1'
resource vnet 'Microsoft.Network/virtualNetworks@2023-05-01' existing = {
name: existingVNetName
}
output vnetid string = vnet.id
resource updatedsubnet01 'Microsoft.Network/virtualNetworks/subnets@2023-06-01' = {
parent: vnet
name: existingSubnetName
properties: {
addressPrefix: vnet.properties.subnets[0].properties.addressPrefix
}
}
注意
NAT ゲートウェイを削除しても、それに関連付けられているパブリック IP アドレスまたはプレフィックスは削除されません。
パブリック IP アドレスを追加または削除する
NAT ゲートウェイからパブリック IP アドレスを追加または削除するには、次のステップを実行します。
Azure portal にサインインします。
Azure portal の上部にある検索ボックスに、「パブリック IP アドレス」と入力します。 検索結果から [パブリック IP アドレス] を選択します。
[作成] を選択します
[パブリック IP アドレスの作成] で、次の情報を入力します。
設定 |
値 |
サブスクリプション |
サブスクリプションを選択します。 |
Resource group |
リソース グループを選択します。 この例では、test-rg を使用します。 |
リージョン |
リージョンを選択します。 この記事では、[米国東部 2] を使います。 |
Name |
「public-ip-nat2」と入力します。 |
IP バージョン |
[IPv4] を選択します。 |
SKU |
[Standard] を選択します。 |
可用性ゾーン |
既定値の [ゾーン冗長] を選びます。 |
レベル |
[Regional](地域) を選択します。 |
[確認と作成]、[作成] の順に選択します。
Azure portal の上部にある検索ボックスに、「NAT ゲートウェイ」と入力します。 検索結果から [NAT ゲートウェイ] を選択します。
[nat-gateway] を選択します。
[設定] で [Outbound IP] (送信 IP) を選びます。
NAT ゲートウェイに関連付けられている IP アドレスとプレフィックスが表示されます。 [パブリック IP アドレス] の横にある [変更] を選びます。
[パブリック IP アドレス] の横にある IP アドレスのドロップダウンを選びます。 作成した IP アドレスを選んで、NAT ゲートウェイに追加します。 アドレスを削除するには、その選択を解除します。
[OK] を選択します。
[保存] を選択します。
パブリック IP アドレスの追加
パブリック IP アドレスを NAT ゲートウェイに追加するには、現在の IP アドレスと共にそれを配列オブジェクトに追加します。 PowerShell コマンドレットによって、すべてのアドレスが置き換えられます。
この例では、NAT ゲートウェイに関連付けられている既存の IP アドレスの名前は public-ip-nat です。 この値を、public-ip-nat と新しい IP アドレスの両方を含む配列に置き換えます。 複数の IP アドレスが既に構成されている場合は、それらも配列に追加する必要があります。
New-AzPublicIpAddress を使って、NAT ゲートウェイ用の新しい IP アドレスを作成します。
## Create public IP address for NAT gateway ##
$ip = @{
Name = 'public-ip-nat2'
ResourceGroupName = 'test-rg'
Location = 'eastus2'
Sku = 'Standard'
AllocationMethod = 'Static'
}
New-AzPublicIpAddress @ip
Set-AzNatGateway を使用して、パブリック IP アドレスを NAT ゲートウェイに追加します。
## Place NAT gateway into a variable. ##
$ng = @{
Name = 'nat-gateway'
ResourceGroupName = 'test-rg'
}
$nat = Get-AzNatGateway @ng
## Place the existing public IP address associated with the NAT gateway into a variable. ##
$ip = @{
Name = 'public-ip-nat'
ResourceGroupName = 'test-rg'
}
$publicIP1 = Get-AzPublicIPaddress @ip
## Place the public IP address you created previously into a variable. ##
$ip = @{
Name = 'public-ip-nat2'
ResourceGroupName = 'test-rg'
}
$publicIP2 = Get-AzPublicIPaddress @ip
## Place the public IP address variables into an array. ##
$pipArray = $publicIP1,$publicIP2
## Add the IP address to the NAT gateway. ##
$nt = @{
NatGateway = $nat
PublicIpAddress = $pipArray
}
Set-AzNatGateway @nt
パブリック IP アドレスを削除する
NAT ゲートウェイからパブリック IP を削除するには、削除する IP アドレスを "含まない" 配列オブジェクトを作成する必要があります。 たとえば、2 つのパブリック IP アドレスで構成された NAT ゲートウェイがあるとします。 IP アドレスの 1 つを削除する必要があるとします。 NAT ゲートウェイに関連付けられている IP アドレスの名前は、public-ip-nat と public-ip-nat2 です。 public-ip-nat2 を削除するには、public-ip-nat "のみ" を含む PowerShell コマンドの配列オブジェクトを作成します。 このコマンドを適用すると、配列が NAT ゲートウェイに再び適用されて、関連付けられているパブリック IP アドレスは public-ip-nat だけになります。
Set-AzNatGateway を使用して、NAT ゲートウェイからパブリック IP アドレスを削除します。
## Place NAT gateway into a variable. ##
$ng = @{
Name = 'nat-gateway'
ResourceGroupName = 'test-rg'
}
$nat = Get-AzNatGateway @ng
## Place the existing public IP address associated with the NAT gateway into a variable. ##
$ip = @{
Name = 'public-ip-nat'
ResourceGroupName = 'test-rg'
}
$publicIP1 = Get-AzPublicIPaddress @ip
## Place the second public IP address into a variable. ##
$ip = @{
Name = 'public-ip-nat2'
ResourceGroupName = 'test-rg'
}
$publicIP2 = Get-AzPublicIPAddress @ip
## Place ONLY the public IP you wish to keep in the array. ##
$pipArray = $publicIP1
## Add the public IP address to the NAT gateway. ##
$nt = @{
NatGateway = $nat
PublicIpAddress = $pipArray
}
Set-AzNatGateway @nt
パブリック IP アドレスの追加
この例では、NAT ゲートウェイに関連付けられている既存のパブリック IP アドレスの名前は public-ip-nat です。
az network public-ip create を使用して、NAT ゲートウェイ の新しい IP アドレスを作成します。
az network public-ip create \
--resource-group test-rg \
--___location eastus2 \
--name public-ip-nat2 \
--sku standard
az network nat gateway update を使って、作成したパブリック IP アドレスを NAT ゲートウェイに追加します。 Azure CLI コマンドによって値が置き換えられます。 新しい値は追加されません。 新しい IP アドレスを NAT ゲートウェイに追加するには、NAT ゲートウェイに関連付けられている他の IP アドレスも含める必要があります。
az network nat gateway update \
--name nat-gateway \
--resource-group test-rg \
--public-ip-addresses public-ip-nat public-ip-nat2
パブリック IP アドレスを削除する
az network nat gateway update を使用して、NAT ゲートウェイからパブリック IP アドレスを削除します。 Azure CLI コマンドによって値が置き換えられます。 値は削除されません。 パブリック IP アドレスを削除するには、残しておくすべての IP アドレスをコマンドに含めます。 削除する値を省きます。 たとえば、2 つのパブリック IP アドレスで構成された NAT ゲートウェイがあるとします。 IP アドレスの 1 つを削除する必要があるとします。 NAT ゲートウェイに関連付けられている IP アドレスの名前は、public-ip-nat と public-ip-nat2 です。 public-ip-nat2 を削除するには、コマンドにその IP アドレスの名前を含めないようにします。 このコマンドは、コマンドに一覧表記されている IP アドレスを NAT ゲートウェイに再度適用します。 一覧にない IP アドレスは削除されます。
az network nat gateway update \
--name nat-gateway \
--resource-group test-rg \
--public-ip-addresses public-ip-nat
Azure portal、Azure PowerShell、または Azure CLI を使用して、NAT ゲートウェイに対してパブリック IP アドレスを追加または削除します。
パブリック IP プレフィックスを追加または削除する
NAT ゲートウェイからパブリック IP プレフィックスを追加または削除するには、次のステップを実行します。
Azure portal にサインインします。
Azure portal の上部にある検索ボックスに、「パブリック IP プレフィックス」と入力します。 検索結果から、[パブリック IP プレフィックス] を選択します。
[作成] を選択します
[パブリック IP プレフィックスの作成] の [基本] タブで、次の情報を入力します。
設定 |
値 |
プロジェクトの詳細 |
|
サブスクリプション |
サブスクリプションを選択します。 |
Resource group |
リソース グループを選択します。 この例では、test-rg を使用します。 |
インスタンスの詳細 |
|
Name |
「public-ip-prefix-nat」と入力します。 |
リージョン |
自分のリージョンを選択します。 この記事では、[米国東部 2] を使います。 |
IP バージョン |
[IPv4] を選択します。 |
Prefix ownership (プレフィックスの所有権) |
[Microsoft 所有] を選択します。 |
プレフィックス サイズ |
プレフィックスのサイズを選びます。 この例では、/28 (16 アドレス) を使います。 |
[Review + create](確認と作成) を選択し、次に [作成] を選択します。
Azure portal の上部にある検索ボックスに、「NAT ゲートウェイ」と入力します。 検索結果から [NAT ゲートウェイ] を選択します。
[nat-gateway] を選択します。
[設定] で [Outbound IP] (送信 IP) を選びます。
ページには、NAT ゲートウェイに関連付けられている IP アドレスとプレフィックスが表示されます。 [パブリック IP プレフィックス] の横にある [変更] を選びます。
[パブリック IP プレフィックス] の横にあるドロップダウン ボックスを選びます。 作成した IP アドレス プレフィックスを選んで、NAT ゲートウェイにプレフィックスを追加します。 プレフィックスを削除するには、その選択を解除します。
[OK] を選択します。
[保存] を選択します。
パブリック IP プレフィックスの追加
パブリック IP プレフィックスを NAT ゲートウェイに追加するには、現在の IP プレフィックスと共にそれを配列オブジェクトに追加します。 PowerShell コマンドレットによって、すべての IP プレフィックスが置き換えられます。
この例では、NAT ゲートウェイに関連付けられている既存のパブリック IP プレフィックスの名前は、public-ip-prefix-nat です。 この値を、public-ip-prefix-nat と新しい IP アドレス プレフィックスの両方を含む配列に置き換えます。 複数の IP プレフィックスが既に構成されている場合は、それらも配列に追加する必要があります。
New-AzPublicIpPrefix を使用して、NAT ゲートウェイの新しいパブリック IP プレフィックスを作成します。
## Create public IP prefix for NAT gateway ##
$ip = @{
Name = 'public-ip-prefix-nat2'
ResourceGroupName = 'test-rg'
Location = 'eastus2'
Sku = 'Standard'
PrefixLength = '29'
}
New-AzPublicIpPrefix @ip
Set-AzNatGateway を使用して、パブリック IP プレフィクスを NAT ゲートウェイに追加します。
## Place NAT gateway into a variable. ##
$ng = @{
Name = 'nat-gateway'
ResourceGroupName = 'test-rg'
}
$nat = Get-AzNatGateway @ng
## Place the existing public IP prefix associated with the NAT gateway into a variable. ##
$ip = @{
Name = 'public-ip-prefix-nat'
ResourceGroupName = 'test-rg'
}
$prefixIP1 = Get-AzPublicIPPrefix @ip
## Place the public IP prefix you created previously into a variable. ##
$ip = @{
Name = 'public-ip-prefix-nat2'
ResourceGroupName = 'test-rg'
}
$prefixIP2 = Get-AzPublicIPprefix @ip
## Place the public IP address variables into an array. ##
$preArray = $prefixIP1,$prefixIP2
## Add the IP address prefix to the NAT gateway. ##
$nt = @{
NatGateway = $nat
PublicIpPrefix = $preArray
}
Set-AzNatGateway @nt
パブリック IP プレフィックスを削除する
NAT ゲートウェイからパブリック IP プレフィックスを削除するには、削除する IP アドレス プレフィックスを "含まない" 配列オブジェクトを作成します。 たとえば、2 つのパブリック IP プレフィックスで構成された NAT ゲートウェイがあるとします。 IP プレフィックスの 1 つを削除する必要があるとします。 NAT ゲートウェイに関連付けられている IP プレフィックスの名前は、public-ip-prefix-nat と public-ip-prefix-nat2 です。 public-ip-prefix-nat2 を削除するには、public-ip-prefix-nat "のみ" を含む PowerShell コマンドの配列オブジェクトを作成します。 コマンドを適用すると、配列が NAT ゲートウェイに再適用され、public-ip-prefix-nat が関連付けられている唯一のプレフィックスになります。
Set-AzNatGateway コマンドレットを使って、NAT ゲートウェイからパブリック IP プレフィックスを削除します。
## Place NAT gateway into a variable. ##
$ng = @{
Name = 'nat-gateway'
ResourceGroupName = 'test-rg'
}
$nat = Get-AzNatGateway @ng
## Place the existing public IP prefix associated with the NAT gateway into a variable. ##
$ip = @{
Name = 'public-ip-prefix-nat'
ResourceGroupName = 'test-rg'
}
$prefixIP1 = Get-AzPublicIPPrefix @ip
## Place the secondary public IP prefix into a variable. ##
$ip = @{
Name = 'public-ip-prefix-nat2'
ResourceGroupName = 'test-rg'
}
$prefixIP2 = Get-AzPublicIPprefix @ip
## Place ONLY the prefix you wish to keep in the array. DO NOT ADD THE SECONDARY VARIABLE ##
$preArray = $prefixIP1
## Add the IP address prefix to the NAT gateway. ##
$nt = @{
NatGateway = $nat
PublicIpPrefix = $preArray
}
Set-AzNatGateway @nt
パブリック IP プレフィックスを追加する
この例では、NAT ゲートウェイに関連付けられている既存のパブリック IP プレフィックスの名前は、public-ip-prefix-nat です。
az network public-ip prefix create を使用して、NAT ゲートウェイのパブリック IP プレフィックスを作成します。
az network public-ip prefix create \
--length 29 \
--resource-group test-rg \
--___location eastus2 \
--name public-ip-prefix-nat2
az network nat gateway update を使って、作成したパブリック IP プレフィックスを NAT ゲートウェイに追加します。 Azure CLI コマンドによって値が置き換えられます。 値は追加されません。 新しい IP アドレス プレフィックスを NAT ゲートウェイに追加するには、NAT ゲートウェイに関連付けられている他の IP プレフィックスも含める必要があります。
az network nat gateway update \
--name nat-gateway \
--resource-group test-rg \
--public-ip-prefixes public-ip-prefix-nat public-ip-prefix-nat2
パブリック IP プレフィックスを削除する
az network nat gateway update を使用して、NAT ゲートウェイからパブリック IP プレフィックスを削除します。 Azure CLI コマンドによって値が置き換えられます。 値は削除されません。 パブリック IP プレフィックスを削除するには、残しておくすべてのプレフィックスをコマンドに含めます。 削除するものを省きます。 たとえば、2 つのパブリック IP プレフィックスで構成された NAT ゲートウェイがあるとします。 プレフィックスの 1 つを削除する必要があるとします。 NAT ゲートウェイに関連付けられている IP プレフィックスの名前は、public-ip-prefix-nat と public-ip-prefix-nat2 です。 public-ip-prefix-nat2 を削除するには、コマンドにその IP プレフィックスの名前を含めないようにします。 このコマンドは、コマンドに一覧表記されている IP プレフィックスを NAT ゲートウェイに再度適用します。 一覧にない IP アドレスは削除されます。
az network nat gateway update \
--name nat-gateway \
--resource-group test-rg \
--public-ip-prefixes public-ip-prefix-nat
Azure portal、Azure PowerShell、または Azure CLI を使用して、NAT ゲートウェイに対してパブリック IP プレフィックスを追加または削除します。
次のステップ
Azure Virtual Network NAT とその機能の詳細については、次のアーティクルを参照してください。