web-dev-qa-db-ja.com

kvmブリッジの問題-ゲストへのネットワークがありません

私は現在Proxmox(debian)KVMホストが一般的な使用のために複数のOpenVZコンテナを実行しています、私はKVM VMただし、CentOSでネットワークを機能させることができませんKVMゲスト。

ホストからネットワーク構成を見つけてください:

# ifconfig
eth0      Link encap:Ethernet  HWaddr xx:xx:xx:xx:xx:xx
          inet6 addr: fe80::22cf:30ff:fe19:7b67/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:41861518 errors:0 dropped:0 overruns:0 frame:0
          TX packets:23326041 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:16692957938 (xx.x GiB)  TX bytes:16624094064 (xx.x GiB)
          Interrupt:47 Memory:fbfe0000-fc000000

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:1805386 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1805386 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:532155476 (507.5 MiB)  TX bytes:532155476 (507.5 MiB)

vmbr0     Link encap:Ethernet  HWaddr xx:xx:xx:xx:xx:xx
          inet addr:88.xxx.xxx.229  Bcast:88.xxx.xxx.xxx  Mask:255.255.252.0
          inet6 addr: fe80::22cf:30ff:fe19:7b67/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:38116128 errors:0 dropped:0 overruns:0 frame:0
          TX packets:21500108 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:15771625496 (xx.x GiB)  TX bytes:16504698806 (xx.x GiB)

およびホストからのルート:

# route -n
Kernel IP routing table
Destination     Gateway         Genmask           Flags Metric Ref    Use Iface
88.xxx.xxx.109  0.0.0.0         255.xxx.xxx.xxx   UH    0      0        0 venet0
88.xxx.xxx.0    0.0.0.0         255.xxx.xxx.xxx   U     0      0        0 vmbr0
0.0.0.0         88.xxx.xxx.1    0.0.0.0           UG    0      0        0 vmbr0

ゲストCentOSからKVM VM:

#ifconfig
    eth0      Link encap:Ethernet  HWaddr xx:xx:xx:xx:xx:xx
              inet addr:88.xxx.xxx.252  Bcast:88.xxx.xxx.255  Mask:255.255.252.0
              inet6 addr: fe80::22cf:30ff:fe19:7b67/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:38116128 errors:0 dropped:0 overruns:0 frame:0
              TX packets:21500108 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:0
              RX bytes:15771625496 (xx.x GiB)  TX bytes:16504698806 (xx.x GiB)

    lo        Link encap:Local Loopback
              inet addr:127.0.0.1  Mask:255.0.0.0
              inet6 addr: ::1/128 Scope:Host
              UP LOOPBACK RUNNING  MTU:16436  Metric:1
              RX packets:1805386 errors:0 dropped:0 overruns:0 frame:0
              TX packets:1805386 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:0
              RX bytes:532155476 (507.5 MiB)  TX bytes:532155476 (507.5 MiB)

ゲストからのルート:

#route -n
Kernel IP routing table
Destination     Gateway       Genmask        Flags Matric  Ref   Use  Iface
88.xxx.xxx.0    0.0.0.0       255.255.252.0  U     0       0     0    eth0
169.254.0.0     0.0.0.0       255.255.0.0    U     0       0     0    eth0
0.0.0.0         88.xxx.xxx.1  0.0.0.0        UG    0       0     0    eth0

ホストからゲストへのpingが次のように返されます。

# ping 88.xxx.xxx.252
PING 88.xxx.xxx.xxx (88.xxx.xxx.252) 56(84) bytes of data.
From 88.xxx.xxx.229 icmp_seq=1 Destination Host Unreachable
From 88.xxx.xxx.229 icmp_seq=2 Destination Host Unreachable
From 88.xxx.xxx.229 icmp_seq=3 Destination Host Unreachable
--- 88.208.236.252 ping statistics ---
4 packets transmitted, 0 received, +3 errors, 100% packet loss, time 3016ms

どんな助けでも大歓迎です!

[〜#〜] edit [〜#〜] brctl出力を含めるのを忘れて申し訳ありません

# brctl show
bridge name     bridge id               STP enabled     interfaces
vmbr0           8000.20cf30197b67       no              eth0
3
davidcollom

私はKVMについてそれほど知識がありませんが、Xenに当てはまるとわかっていることに基づいて、ブリッジにインターフェイスがないように見えます。そこには物理的なホストインターフェイスしかないのですが、ネットワークもリストされているはずです。ゲストがホストで使用しているデバイス。ホストのルーティングテーブルにvenet0インターフェイスが記載されていますが、ifconfigをifconfig -aに置き換えてください。

Venet0がゲストのインターフェースであることが判明した場合は、おそらくbrctl addif vmbr0 venet0を使用してブリッジに追加する必要があります。ただし、ルーティングテーブルには、ホストがリンクの「反対側」のIPを.109と見なしていることが示されているため、正しいインターフェイスであることが判明した場合は、構成の問題が発生する可能性があることに注意してください。 venet0を経由するルートがブリッジに属している場合は、削除するだけで十分です。

3
Eduardo Ivanec