はじめに
AzureVM上でHyper-Vを構築する際、Hyper-V環境は無事できたが、ゲストOS(Windows11)インストール後の初期設定、ネットワーク設定でつまずきました。試行錯誤の末に、制約あり状態であり本番ではもちろん使えない状況ではありますが、Hyper-V環境を構築できました。
本記事では私が実際に直面した以下のネットワーク設定のつまずきポイントについてまとめます。
- ゲストOS初期設定のネットワーク設定から先に進めない
- Hyper-V上のゲストOSから社内ネットワークや他AzureVMにアクセスできない

制約事項
私の構築した環境では以下実現できておりません。
- 親OS以外のリモートデスクトップ接続は、DNAT(TCP:3389)を利用してのみ接続可能
- 他サブネットのVMやクライアント端末からゲストOS上の共有ファイルはアクセス不可(ゲストOSからは可能)
内部NATを設定したのに識別されない、ネットワーク設定対処方法
以下のとおり親OS側のHyper-V用に仮想内部スイッチを作成しました。


この状態でHyper-VのゲストOSを起動、Windows11をインストールし、初期設定を実施したが以下のようなイメージ(生成AI作成)で次に進めない状態を想定してください。

親OS側の設定
インターネット接続情報(NIC)に対して(サーバならイーサネットとかになっていると思われます)、IP転送を有効化します。

以下PowerShellで管理者実行します。
Set-NetIPInterface -InterfaceAlias "Wi-Fi(XXXXX)" -Forwarding Enabled
Set-NetIPInterface -InterfaceAlias "vEthernet(仮想内部スイッチ)" -Forwarding Enabled
NATを作成します。
New-NetNat -Name "MyInternalNAT" -InternalIPInterfaceAddressPrefix "200.100.11.0/24"
ポートフォワーディングで外から(他VMまたは社内オンプレ)の通信を許可します。制約事項である直接ゲストIPでは親OS以外からリモート接続できないため、「200.100.10.20:33891」を指定することで代替しております。
Add-NetNatStaticMapping -NatName "MyInternalNAT" `
-Protocol TCP `
-ExternalIPAddress "0.0.0.0" `
-ExternalPort 33891 `
-InternalIPAddress "200.100.11.2" `
-InternalPort 3389
親側の設定はひとまずこれでOKです。
Hyper-V上のゲストOSでの設定
ネットワークに接続しましょうから、コマンドプロンプトを起動します。
- Shift+F10でコマンドプロンプトを開く
- コマンドプロンプトでncpa.cplを入力
ncpa.cpl
- ネットワーク接続>プロパティ>インターネットプロトコルバージョン4の編集画面を開きます。
- 以下のとおり環境に合わせて入力します。
| IPアドレス | 200.100.11.2 |
| サブネットマスク | 255.255.255.0 |
| デフォルトゲートウェイ | 200.100.11.1 |
| 優先DNSサーバ | 8.8.8.8 ※DNSサーバがあればDNSサーバ |
これでおそらく次に進めるはずです。
ゲストOSにリモートデスクトップ接続するための見落としがちな注意点
最後に以下注意してください。
- ファイアーウォールで通信が遮断されていないか
- ゲストOS側のリモート接続許可する
※設定画面を開くためのPowerShellは以下のとおりです。
SystemPropertiesRemote.exe
まとめ
以上で、『【Azure】AzureVMでHyper-V。ネットワーク設定が進まなかったときの対処方法』でした。AzureでHyper-Vを構築するのは、技術的な検証が主だと思いますので本番で使う機会はないかと思いますが、参考になれば幸いです。


コメント