エンジョイAsobi

スマホとWindowsとLinuxを遊ぶ。

Ubuntu Windows

Windows 8.1上でHyper-Vを試す ~ネットワークがつながらない~

投稿日:2014年2月17日 更新日:

前回、Hyper-V上の仮想マシンにUbuntuをインストールしたところまで書きました。

インストールが完了して、さっそく仮想マシンにSSHからログインしてあれこれ設定しようとしました。しかし、

SSHが接続できない…。

あれ?と思って仮想マシン接続から入ってルーターへpingを打ってみたけど通じず。ホストマシンへも通じず。
ifconfig見るとDHCPのアドレスはとれているので、少なくとも起動直後にDHCP DiscoverとOfferは通ったはずよね。pingが通らないのはなぜ?と。
ホストマシンのネットワーク設定を見てもおかしいところはなく、ひとしきり悩んでしまいました。

25eth0_trouble
でdmesgを確認してみたら、あれ?カーネルのダンプが記録されている。NETDEV WATCHDOG?Ubuntu側の問題ぽい。ということで今度はUbuntu側の設定を確認してみたけれどやっぱりおかしなところは見つからず。

ここに至ってやっとGoogle先生に訊いてみたら、見つけましたよ。Hyper-V上でLinux動かすときは比較的メジャーな問題?

Ubuntuのirqbalanceサービスを止めればよいらしい。

仮想マシン接続からログインして/etc/default/irqbalanceを編集しました。

#Configuration for the irqbalance daemon 
#Should irqbalance be enabled? 
ENABLED="1" 
#Balance the IRQs only once? 
ONESHOT="0"

このうち、ENABLED="1" を ENABLED="0"に書き換えてから reboot。

再起動が終わるとネットワークが使えるようになっていました。

irqbalanceはSMPシステムで割り込み処理を複数のCPUに振り分けるサービスです。仮想マシンの構成にレガシーネットワークアダプターを選択するとtulipというデバイスのドライバーが組み込まれるのですが、このtulipドライバーとirqbalanceサービスの相性が悪いらしい。

つまり仮想マシンに複数の仮想プロセッサを割り当てなければこんなことにはならなかったわけですが、そこは譲れないしね。

あとレガシーネットワークアダプターを選んだのも敗因と言えば敗因ですね。

いや!負けじゃない。Hyper-Vがおかしい。

VMWareでもVirtualboxでも、仮想ハードウェアが古すぎてハマったことなんて無かったよ。

まあともあれ、無事SSH接続できるようになったので、あれこれ設定を完了させました。

-Ubuntu, Windows

関連記事

Cygwin上でiperfをビルド

ネットワークの疎通確認に便利なツールiperf。 先日Windows上で使おうと思ったら、見つからなくて困ったことがありました。 iperfのWindows版バイナリも配布されているらしいですが、私は …

Hyper-Vの動的メモリは本当に動的だった!?

前回、無用なトラブルを避けるつもりで無難な選択をした結果、却ってロクでもない目に遭ったようだという話を書きました。 Hyper-V + Ubuntuなんてメジャーな組み合わせでは、そんなこと気にせずと …

Ubuntuのカーネル再構築

実験用に作ったUbuntu13.10の仮想マシン上で、Linuxカーネルの再構築を試しました。 まずカーネルのビルド環境を構築。 元がサーバー版Ubuntuだったので、ビルド環境なんてほぼ何も入ってお …

Windows 8.1上でHyper-Vを試す ~Ubuntuの仮想マシンを作る(1)~

Linuxのカーネルソースをあれこれいじるにあたって、実験用のLinux環境が欲しくなり、新たにUbuntuの仮想マシンを作ることにしました。 で仮想化ソフトに何使うか考えたのですが、自宅ではWind …

Hyper-V 上の Ubuntu で非レガシーなネットワークアダプターを使えた

以前 Hyper-V上にUbuntuの仮想マシンを作りましたが、ネットワークアダプターにはレガシーネットワークアダプターを選択しました。Ubuntuがレガシーでない方のドライバーを持っているのか確証が …