GUESTSネットワークがまったく機能していません。つまり、ゲストはホストまたはLANゲートウェイにpingを実行できません。
Centos Hostを備えた他のシステムでこの設定を使用していますが、debianを初めて使用するので、忘れていたことがわからない場合があります。
ホストネットワークは正常に機能しているようです。eth0にはIPがなく、br0にはeth0が以前使用していたIPがあります。 brctl showコマンドは、ゲストがオフの場合はeth0をスレーブ化してbr0を表示し、ゲストがオンの場合はeth0とvnet0の両方を表示します
VIRTIOからRTLネットワークインターフェイスに変更するだけで機能します。これは、「ハイパーバイザーのデフォルト」を選択するのと同じことです。また、lsmod | grep virtio
の出力
virtio_pci 17389 0
virtio_net 26553 0
virtio_blk 17341 0
virtio_ring 17469 3 virtio_blk,virtio_net,virtio_pci
virtio 13058 3 virtio_blk,virtio_net,virtio_pci
Modprobe virtioを使用してvirtioを手動で追加する必要がありましたが、それでも問題は解決しませんでした。 modprobe virtioなどでカーネルモジュールを追加した後、再起動しませんでしたが、libvirtdとvirt-managerを再起動しました
正常に動作していますが、virtioでは動作しません。カーネルに潜在的な問題はありますか?カーネル構成を確認するにはどうすればよいですか、これはuname -a
出力のあるDebian Jessieです
間瀬さん、ありがとうございます。最初の投稿を片付けました。/sys/devices/virtioフォルダーはゲストに存在しないが、/ sys/devices/virtual/net/loは存在するが、/ sys/devices/virtual/net/eth0は存在しないことに気づきました
centos 6.4 "guest"のifconfigは、eth0はRXが0バイト、TXが14kBであることを示しているので、通信を受信していないと思います。私は簡単には諦めませんが、ゲストとホストの両方でカーネルを最初から再構築することを楽しみにしていませんでした。
まあ私は問題を理解したようです。診断するために、WindowsゲストとWindows virtioドライバーをインストールしました。 Windowsでvirtioネットワーキングを使用できたため、Linuxゲストカーネルまたはカーネルドライバーに問題があります。Linuxゲストにはvirtio pci/blockなどのカーネルモジュールがロードされているため、カーネルの再コンパイルが必要になる可能性があります。したがって、「ホスト」側に問題はありませんでした。
また、私の研究では、ゲストまたはホストのどちらを参照しているかを指定せずに仮想化について常にアドバイスをしている人を見つけるのは面倒でした。実際、このため、ロードしている人には混乱がたくさんあります。ゲストなどの代わりにホスト上のvirtioカーネルモジュール...(私はそれらを両方にロードしましたが、不必要にホストにロードしました...しかしどちらにしても関係ありません、私の問題を修正しません、私はCentOS LinuxゲストでLinuxカーネルを再コンパイルします。)
Iptablesでマスカレードを有効にしましたか?
確認する
iptables -L -t nat
次のようなものが表示されます。
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
MASQUERADE all -- 10.0.0.0/24 !10.0.0.0/24
IptablesにMASQUERADEが表示されない場合は、次のコマンドを使用して許可できます。
iptables -t nat -A POSTROUTING -s 10.0.0.0/24 ! -d 10.0.0.0/24 -j MASQUERADE
もちろん、IP範囲を使用しているIP範囲に置き換えます。