web-dev-qa-db-ja.com

Hyper-V上のCentOS6-ネットワークアダプターが機能しない(チェックサム機能なし)

CentOS6.0をHyper-VServer 2008 R2SP1にインストールしました。 VMは有効な合成ネットワークアダプターのみを備えています。インストールは正常に(ネットワークなしで)完了しました。次に、ISOからLinux Integration Services 3.1をインストールしましたが、すべて正常です。これで、すべてのHyper-Vモジュールがインストールされました(含む) hv_netvsc)、ただしネットワークアダプターが検出されません。

Dmesgの実行| grep ethはメッセージを返します"チェックサム機能がないためNETIF_F_SGを削除します。"インターネットで再調査すると、チェックサムは、CentOSがネットワークアダプターを使用できず、MicrosoftのLIS3によって実装されていない重要な機能のようです。 1モジュール。

CentOSで合成ネットワークアダプターを使用するためにできることはありますか?それとも私は何か間違ったことをしましたが、それはそのまま動作するはずですか?合成アダプターの機能は、ホストマシンで使用されるハードウェアイーサネットカードに依存しますか? CentOSカーネルのバージョンは2.6.32-71.el6.x86_64のようで、ハイパーバイザーはすべての更新がインストールされたR2SP1です。

最初の質問の答えが「いいえ、機能しません」の場合の2番目の質問:エミュレートされた(レガシー)ネットワークドライバーを使用すると、パフォーマンスが大幅に低下しますか?実稼働環境では避けるべきですか?

3
Jan Svab

他の誰かが同じ問題を抱えている場合の解決策は次のとおりです。ファイル/ etc/sysconfig/network-scripts/ifcfg-eth0および/ etc/sysconfig/network/properties/default/ifcfgを追加して、アダプターを手動で構成する必要があります。 -LIS3のインストールが成功した後のeth0。

私のために働いたステップ:

  • ネットワークアダプターとレガシーネットワークアダプターの両方で仮想マシンを作成する
  • centOS 6とLinux Integration Services 3.1をインストールする
  • / etc/sysconfig/network-scripts/ifcfg-eth1および/ etc/sysconfig/networking/profiles/default/ifcfg-eth1ファイルを作成します
  • 再起動して、両方のネットワークインターフェイスが起動しているかどうかを確認します
  • ifcft-eth0を削除し、両方の場所でifcfg-eth1の名前をifcfg-eth0に変更します
  • オフにし、hyper-vマシンのプロパティでレガシーアダプターを削除してオンにする

私が最も有用な情報を見つけたソース:

5
Jan Svab

(解決済み)

Hyper-V設定で静的MACアドレスを割り当ててください。 MACはLinux VMと同じである必要があります。 MACアドレスは/etc/sysconfig/network-scripts/ifcfg-eth0にあります。

1
Ram

「Hyper-v2012のイーサネットポートがeth0ではなくeth1にあるのはなぜですか?」

NICの既存のUDEVルールを削除します。 NICを追加/変更すると、udevルールは新しいデバイスを検出し、それに別のインターフェース名を割り当てます。手順については、 CentOS Linuxのイーサネットインターフェイスの番号をeth0に変更 または CentOS 6にネットワークデバイスを再検出させる を参照してください。

これはどうですか? VMが複製された場合。たとえば、NICがeth0にあったマシンを使用して、イメージを複製し、新しいVM MACアドレスが異なるイメージの場合NICはeth0ではなくeth1になります。

他の仮定? Hyper-V 2012、CentOS6.3 x64、およびMicrosoft Linux Integration Services3.4を使用してこれをテストしました

0
Donal Lafferty