エンジョイ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版バイナリも配布されているらしいですが、私は …

OOM Killerの発動を検知したい

今回はプログラムの話。タイトル通り、LinuxのOOM Killerが発動したことを検知したいという話です。組み込みでLinuxを使っていると、OOM Killerが動き出すこと自体異常事態なので、検 …

Hyper-VでUbuntu 14.04を試す(1)

ついにリリースされました、Ubuntu 14.04。 実験用にインストールした13.10はともかく、実用に使っていた12.04マシンの調子が最近悪くて。インストールし直したかったけど、あと少しで14. …

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

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

E: Internal Error, No file name for libssl1.0.0

Ubuntu 12.04機を(も)使っています。動かなくなると困る一台なので、なかなか更新する勇気がなくて、未だに12.04です。 先日ひさびさにupdateしようと思って、apt-get dist- …