我尝试为 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 进行验证),我不知道为什么重启后还需要“网络重启”。