SDN インフラストラクチャでトラフィック転送用に NAT を設定する
この記事では、System Center Virtual Machine Manager (VMM) ファブリックで設定されたソフトウェア定義ネットワーク (SDN) インフラストラクチャでトラフィック転送用にネットワーク アドレス変換 (NAT) を設定する方法について説明します。
NAT を使用すると、分離された SDN 仮想ネットワーク内の仮想マシン (VM) が外部接続を取得できます。 VMM は、外部ネットワークとの間でトラフィックを転送するように仮想 IP (VIP) を構成します。
VMM では、次の 2 種類の NAT がサポートされています。
- 送信 NAT - 仮想ネットワークから外部の宛先に VM ネットワーク トラフィックを転送します。
- 受信 NAT - 外部トラフィックを仮想ネットワーク内の特定の VM に転送します。
この記事では、VMM を使用して SDN 仮想ネットワークの NAT 接続を構成する方法について説明します。
VMM 2022 では、デュアル スタックがサポートされています。 デュアル スタック VM ネットワークに対する NAT 規則は、VMM コンソールではサポートされていません。 NAT 規則は、PowerShell コマンドレットを使用して指定できます。 詳細については、「NAT 接続に規則を追加する」を参照してください。
Note
- VMM 2019 UR1 から、 One Connected ネットワークの種類が Connected Network に変更されました
- VMM 2019 UR2 以降では、IPv6 がサポートされています。
開始する前に
次のことを確認します。
- SDN ネットワーク コントローラー と SDN software ロード バランサー がデプロイされます。
- ネットワーク仮想化を備えた SDN VM ネットワークが作成されます。
NAT 接続を作成する
次の手順に従います。
VMM コンソールで、
VM とサービス>VM ネットワークを選択します。 NAT 接続を作成する選択した VM ネットワークを右クリックし、 Properties を選択します。 表示されたウィザード ページで Connectivity を選択します。
Connectivityで、追加の論理ネットワークに直接接続選択しこのオプションの下Network アドレス変換 (NAT)を選択します。
IP アドレス プールで、VIP の取得元となる IP プールを選択します。 [IP アドレス] で、選択したプールから IP アドレスを選択します。 [OK] を選択します。
- IPv6 を有効にするには、IPv6 アドレス プールを選択し、IPv6 アドレスを指定します。
この VM ネットワークの NAT 接続が作成されます。
Note
- この手順では、NAT 接続と共に、VM ネットワークの送信接続を可能にする既定の送信 NAT 規則も作成します。
- 受信接続を有効にし、外部トラフィックを特定の VM に転送するには、NAT 接続に NAT 規則を追加する必要があります。
NAT 接続に規則を追加する
VMM 2022 では、デュアル スタックがサポートされています。 デュアル スタック VM ネットワークに対する NAT 規則は、VMM コンソールではサポートされていません。 NAT 規則は、PowerShell コマンドレットを使用して指定できます。
$vmNetwork = Get-SCVMNetwork -ID <VMNetwork ID>
$vmSubnet = Get-SCVMSubnet -Name <VMSubnet Name> | where { $_.ID -eq <VMSubnet ID> }
$gatewayDevice = Get-SCNetworkGateway -ID <Gateway Device ID>
$VmNetworkGateway = Add-SCVMNetworkGateway -Name "TenantDS_Gateway" -EnableBGP $false -NetworkGateway $gatewayDevice -VMNetwork $vmNetwork
IPv6 NAT 接続の場合
$externalIpPoolVar = Get-SCStaticIPAddressPool -ID <VIP Pool Id>
$natConnectionIPv6 = Add-SCNATConnection -VMNetwork $vmNetwork -Name "TenantDS_NatConnection_IPv6" -ExternalIPPool $externalIpPoolVar -ExternalIPAddress <IP From IPv6 VIP Pool>
Add-SCNATRule -Name "NATIPv6" -Protocol "TCP" -InternalIPAddress <IP From IPv6 subnet> -ExternalPort <External Port> -NATConnection $natConnectionIPv6 -InternalPort <Internal Port>
IPv4 NAT 接続の場合
$externalIpPoolVar1 = Get-SCStaticIPAddressPool -Name "PublicVIP_IPAddressPool_0"
$natConnectionIPv4 = Add-SCNATConnection -VMNetwork $vmNetwork -Name "TenantDS_NatConnection_IPv4" -ExternalIPPool $externalIpPoolVar1 -ExternalIPAddress <IP From IPv4 VIP Pool>
Add-SCNATRule -Name "NATIPv4" -Protocol "TCP" -InternalIPAddress <IP From IPv4 subnet>" -ExternalPort <External Port> -NATConnection $natConnectionIPv4 -InternalPort <Internal Port>
NAT 接続に規則を追加するには、次の手順に従います。
VMM コンソールで、
VM とサービス>VM ネットワークを選択します。 選択した VM ネットワークを右クリックし、 Properties を選択します。 ウィザード Network アドレス変換 を選択します。
[ ネットワーク アドレス変換 (NAT) 規則を指定しますで、 追加を選択します。 必要に応じて、次の詳細を入力します。
- 名前 – 受信 NAT 規則の名前。
- プロトコル – 受信ネットワーク トラフィック プロトコル。 TCP/UDP がサポートされています。
- 受信ポート – VM にアクセスするために VIP と共に使用するポート番号。
- 宛先 IP – 外部トラフィックの送信先となる VM の IP アドレス。
- 宛先ポート – VM 上のポート番号。外部トラフィックを転送する必要があります。
- [OK] を選択します。
Note
複数の NAT 規則を作成して、VM ネットワークの一部である複数の VM にトラフィックを転送できます。
NAT 規則を削除する
次の手順に従います。
- VMM コンソールで、
VM とサービス>VM ネットワークを選択します。 選択した VM ネットワークを右クリックし、 Properties を選択します。 - ウィザード Network アドレス変換 を選択します。
- 削除する NAT 規則を選択し、 Removeを選択し、 OKを選択します。
NAT 接続を削除する
- VMM コンソールで、
VM とサービス>VM ネットワークを選択します。 選択した VM ネットワークを右クリックし、 Properties を選択します。 - ウィザードで Connectivity を選択します。
- 追加の論理ネットワークに直接接続するオプションをオフにしok選択します。