ma*GAZ*ine

gaziroh の雑記帳

Hyper-V でゲストの IP アドレスを固定する

Hyper-V のネットワーク

Hyper-V を使っていて、ネットワークアダプタに Default Switch を使うと IP アドレスが変わったりすることがある。というか、このアダプタにつながっているネットワークのアドレスが変わったりする。 Default Switch だと DHCP で IP が振られたり便利なんだけど、ネットワークアドレスが変わると ssh でスッと接続できないとかあるので、仮想スイッチを追加してそれを使うことにする。

仮想スイッチ マネージャー

  1. Hyper-V マネージャーで、「仮想スイッチ マネージャー」を開く。

  2. 「新しい仮想ネットワーク スイッチ」で種類は「内部」の仮想スイッチを作成する。名前は「内部ネットワーク」とした。

  3. PowerShell を管理者で開いて、以下のコマンドを実行する。

     > New-NetIPAddress -IPAddress 172.16.192.254 -PrefixLength 24 -InterfaceAlias "vEthernet (内部ネットワーク)"
     > New-NetNat -Name "InternalNat" -InternalIPInterfaceAddressPrefix 172.16.192.0/24
    

    実際のところ、アダプタの IP は GUI で設定した。というのも、作成したネットワーク アダプターの名前を確認したかったから。そのとき、ネットワークを設定できるじゃないかと思ってしてみたが、正解だったのか不明。結局、上記コマンドの 1 つ目実行時にすでにネットワークがあると怒られた。

  4. 仮想マシンの設定の「ネットワーク アダプター」の「仮想スイッチ」を作成したものに変える。

  5. ゲストの IP の設定を適切に変更する。

    サクッとはいかず、ルーティングされない問題が発生した。最終的に Windows を再起動してみたらルーティングされるようになっていた。いまだに再起動が必要なのか…