KVM 与桥接网络问题配合使用

KVM 与桥接网络问题配合使用

我尝试为 KVM 配置桥接网络(参考http://www.linux-kvm.org/page/Networking),并且它在 Guest OS 上工作正常,但我的 Fedora 主机操作系统遇到了两个问题:

1、主机无法上网

2、重启后网桥配置丢失,需要再次执行“service network restart”才能恢复

我在这里检查过(为主机和客户机提供公共静态 IP 的 KVM 网桥)对于第一个问题,它对我来说似乎不起作用。

任何建议都值得感激!

ifconfig -a

eth0      Link encap:Ethernet  HWaddr 48:5B:39:ED:EB:5A  
          inet6 addr: fe80::4a5b:39ff:feed:eb5a/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:231340 errors:0 dropped:0 overruns:0 frame:0
          TX packets:413424 errors:0 dropped:0 overruns:0 carrier:1
          collisions:0 txqueuelen:1000 
          RX bytes:15335606 (14.6 MiB)  TX bytes:114755796 (109.4 MiB)
          Interrupt:44 

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:119307 errors:0 dropped:0 overruns:0 frame:0
          TX packets:119307 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:57151264 (54.5 MiB)  TX bytes:57151264 (54.5 MiB)

sit0      Link encap:IPv6-in-IPv4  
          NOARP  MTU:1480  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

sw0       Link encap:Ethernet  HWaddr 48:5B:39:ED:EB:5A  
          inet addr:192.168.1.133  Bcast:255.255.255.255  Mask:255.255.255.0
          inet6 addr: fe80::4a5b:39ff:feed:eb5a/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:229584 errors:0 dropped:0 overruns:0 frame:0
          TX packets:401232 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:11047463 (10.5 MiB)  TX bytes:113891533 (108.6 MiB)

tap0      Link encap:Ethernet  HWaddr F2:86:1A:48:E2:55  
          inet6 addr: fe80::f086:1aff:fe48:e255/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:232 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2744 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:500 
          RX bytes:24842 (24.2 KiB)  TX bytes:243899 (238.1 KiB)

virbr0    Link encap:Ethernet  HWaddr 9A:7C:09:6B:85:65  
          inet addr:192.168.122.1  Bcast:192.168.122.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:46 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 b)  TX bytes:5513 (5.3 KiB)

答案1

我给你我的 /etc/network/interfaces 文件,其中我配置了一个桥接器,用于 Ubuntu 服务器上的四个虚拟机,该服务器也使用 KVM(我的默认 LAN 卡是第三个,即 0、1、2、3,因此使用 eth2)

auto lo
iface lo inet loopback

# The primary network interface
auto eth2
iface eth2 inet manual

auto br0
iface br0 inet static
        address 192.168.1.17
        netmask 255.255.255.0
        network 192.168.1.0
        broadcast 192.168.100.255
        gateway 192.168.100.100
        # dns-* options are implemented by the resolvconf package, if installed
        dns-nameservers 192.168.103.2
        dns-search mydomain.com
        bridge_ports eth2
        bridge_fd 9
        bridge_hello 2
        bridge_maxage 12
        bridge_stp off

以上是正确的配置。您可能需要检查 /etc/network/interfaces 手册页http://manpages.ubuntu.com/manpages/hardy/man5/interfaces.5.html 了解上面的关键字手册的作用。

发布您定义桥接的网络接口文件,然后我们将能够提供帮助。

我注意到你的 eth0 和 sw0 有相同的 Mac 地址。网桥在第 2 层工作,这可能是问题的根源(如果我错了,请纠正我),eth0 具有 IPv6 地址,而 sw0 具有 IPv4 地址。这是不正确的。

答案2

常见的错误是错过

ONBOOT="yes"

从您的接口定义中,确保它在那里定义。

对于其他问题,如果没有网络配置脚本我们就无能为力,因此请发布您的脚本。

答案3

您的设置似乎对 eth0 使用 IPv6,这是故意的吗?如果您的主机只有一个接口 (eth0),并且您将其分配给网桥,那么您还需要为主机分配一个虚拟地址,以便它也可以访问网络。

在这里发布“route -n”(从主机和客户机),也许还可以使用“ping”来查看数据包在哪里停止?(假设他们甚至试图离开..)

抱歉,如果“网络”已启用在启动时启动(使用 chkconfig 进行验证),我不知道为什么重启后还需要“网络重启”。

相关内容