Windows 10 で Hyper-V と Oracle VirtualBox v5.0.0 は両立できない !?

この記事を読むのに必要な時間は約 10 分です。


 

Windows 10 で Hyper-V を有効化すると、Oracle VirtualBox v5.0.0 が正常に動作しなくなってしまいました…。

Oracle VirtualBox を正常に動作させるためには、結局 Hyper-V を無効化しないといけませんでした … 。

今回は画面ショットはありません。

Windows 10 における、Hyper-V と VirtualBox 両立の問題点

解決はしていませんが、問題点を 2点 まとめておきます。

  1. VirtualBox から 仮想化支援機能 Intel VT-x / AMD-V が利用できなくなる
    現状の致命的問題です。原因・対策ともにイメージできません…。一応 32bit のゲスト OS なら動く可能性がありますが、あまり期待できません。
  2. Hyper-V 有効化時に、ネットワークインターフェースが書き換えられる
    Hyper-V のアダプターが作成されるようで、それを利用するよう VirtualBox の仮想マシン設定→ネットワークから設定すれば、これは一応クリアできそうです。

マシン環境

私のマシン環境は、以下のような構成です。

マザーボード ASUS P8Z68-V/GEN 3
CPU Intel Core i5-2500
Memory 16GB
ネットワーク1 Intel PRO/1000 GT Desktop Adapter (有効)
ネットワーク2 Intel 82579V Gigabit Network Connection (無効)
VirtualBox v5.0.0
Hyper-V Microsoft Visual Studio Emulator for Android

Microsoft Visual Studio Emulator for Android をインストール

Microsoft から、無料で利用できる Android エミュレーターが提供された、ということで、動かなくなった Genymotion に代わり、乗り換えを視野に入れて試してみようと思いました。

Visual Studio Emulator for Android は、これまで Windows 開発環境である、Visual Studio のパッケージとして提供されていましたが、スタンドアロンとして提供が開始されたものです。

 

以下サイトの「Download the Emulator」ボタンを押して、ダウンロードします。

Visual Studio Emulator for Android

 

ダウンロードしたファイルを起動して、同意やら次へボタンやら押してインストールします。

インストールが完了すると、再起動が必要ですので、再起動しました。

Oracle VirtualBox がおかしくなった …

再起動後、VS Emulator for Android は正常に起動し、nexus 7 仮想マシンで、Google Play サービスのインストールなども出来たのですが…。

VirtualBox を起動すると、仮想マシンが起動しません !!

ネットワークアダプターが見つかりません、というエラーが発生していました。

VirtualBox の仮想マシン設定のネットワーク設定を見ると、元々あった「Intel PRO/1000 GT …」はなくなり、Hyper-V Host Adapter #3 とかになっていました。

コントロールパネルから、ネットワークと共有 → アダプタの設定 を見てみると、「Intel PRO/1000 GT …」はありましたが、他にいくつかの Hyper-V なんちゃらが発生していました。

 

Microsoft Visual Studio Emulator for Android が利用する Hyper-V と VirtualBox とがバッティングしたようで

 

Microsoft Visual Studio Emulator for Android は、Windows に内蔵している仮想マシン管理システムである、Hyper-V の技術を利用しています。

Emulator は、Hyper-V の仮想マシンとして作成され、Hyper-V 仮想マシンとして起動する動作です。

そして、VS Emulator for Android をインストールすることで、Hyper-V が有効化されるのですが、その際に、ネットワーク設定を大幅に変更するようです。

VirtualBox はそのあおりをくらっていたようです。(後述しますが、問題はそれだけではありません)

調べてはいませんが、Hyper-V が、元々のネットワークインターフェースを覆い隠し、(ゲストOSだけでなく) ホストOS 側でも Hyper-V Host Adapter ? を経由して通信させるようになるようです。

 

では、VirtualBox でもネットワークインターフェースをそちらに変更すれば、動作するのではと思い、VirtualBox の仮想マシン設定 → ネットワークから、通信できている Host Adapter (*) を選んで設定を更新しました。

(*) コントロールパネル → ネットワークと共有 → アダプターの設定 の中で、アクティブになり、かつ右クリックから「状態」を見ると送受信パケットが増えていっているもの

 

VirtualBox 仮想マシンのネットワーク設定変更後に、再度仮想マシンを起動させてみると、今度は 「Intel VT-x/AMD-V」が見つからないため 64 bit OS は起動できません、というエラーが出ました。

これは手に余ると思い、Hyper-V は諦めました。

Hyper-V 無効化までの道のり

まず、コントロールパネル → プログラムと機能から、Microsoft Visual Studio Emulator for Android をアンインストールしました。

しかし、予想通りそれだけでは、Hyper-V は残ったままのようです。

さらに、コントロールパネル → プログラムと機能 から、左側にある Windows 機能の有効化と無効化 から、Hyper-V のチェックを外し、マシンを再起動することで、ようやっと Hyper-V が消えたようです。

 

コントロールパネル → ネットワークと共有 を見ると、インターネット接続が失われているようです。

何でやねん、と思いつつ、ネットワークと共有 → アダプターの設定 を見ると、Hyper-V Adapter 的なものは消え去り、元のインターフェース名に戻っていました。

元々利用していた Intel PRO/1000 GT のアダプターのプロパティを見ると、利用するネットワーク機能の一覧のチェックボックスが全て消えていました。

IPv4 のチェックボックスを On にすると、同時に 3つくらい On になり、 OK ボタンを押してプロパティを適用すると、インターネット接続が回復しました。

 

一方、Oracle VirtualBox の方では、仮想マシンの設定 → ネットワークで、例の「名前」欄に、「未設定」ではありませんが、「Microsoft Kernel Driver」だかしか出てきません。

コントロールパネル → ネットワークと共有 → アダプターの設定 を開き、利用するアダプター (私の場合は Intel PRO/1000 GT … ) のプロパティを開き、「VirtualBox NDIS6 Bridged Networking Driver」のチェックボックスを On にして有効化すると、VirtualBox の方にも出てくるようになりました。

VirtualBox v5.0.0 では、この「VirtualBox NDIS6 Bridged Networking Driver」をネットワークインターフェースに追加するのが、新しい機能のようです。v4.x ではありませんでした。

 

ひとこと

やはり、まだ Windows 10 と周りのソフトウェアとは、こなれていないところが多いようです。

試す際には、慎重に壊れても大丈夫な環境で試した方が良いですね … 。

 

 


今回は以上です。


 

2件のコメント

  1. > やはり、まだ Windows 10 と周りのソフトウェアとは、こなれていないところが多いようです。

    そうなのかもしれませんが、本記事の内容は Windows 10 とは関係なさそうな気がします。

    クライアント Hyper-V の機能は Windows 8 から搭載された機能であることと、本記事で取り上げられた Hyper-V と VirtualBox の共存については、OS のバージョンが云々ということではなく、異なる性質・構造の仮想化ソフトの共存に難がある、というのが本質ではないかと思いましたので。

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です