三天后,我终于可以通过无线方式在网络上运行 kvm 客户机(链接如下 - 谢谢!):
我的网络是 192.168.1.0/24
在主机上:
sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"
sudo tunctl -t tap0
sudo ip link set tap0 up
sudo ip addr add 192.168.1.25/24 dev tap0
sudo route add -host 192.168.1.30 dev tap0
sudo parprouted wlan0 tap0
关于客人:
auto eth0
iface eth0 inet static
address 192.168.1.30
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.25
并启动客户端:
sudo kvm /path/to/guest.img -net nic,macaddr=DE:AD:BE:EF:90:26 -net tap,ifname=tap0,script=no
这很有效,我可以在访客之间来回 ping 本地网络和互联网。
但是,我如何将这些设置添加到客户的 xml 配置中,以便我可以通过 virt-manager 以相同的 nic 设置启动客户机?
參考文獻:
答案1
尝试遵循这个: libwirtwiki - 来宾水龙头
并修复 /etc/libvirt/qemu/example.xml
<interface type='ethernet'>
<mac address='26:c7:a9:96:a7:7a'/>
<target dev='tap0'/>
<model type='virtio'/>
<script path='no'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>
就我而言,它有效
答案2
我认为您正在尝试通过创建 Tap 设备等方式以迂回的方式设置桥接网络。在 Linux 中,您可以使用简单的配置更改为物理接口创建虚拟桥接设备。完成后,可以配置 KVM VM 以使用此虚拟桥接设备连接到普通 LAN,就像它们直接连接到它一样。这给人一种错觉,即所有 VM 和基础/主机都直接连接到 LAN。
如果这是你想要的,那么修改你的 /etc/sysconfig/network-scripts/ifcfg-eth0(假设 eth0 是主机网络设备,其 IP 在你的网络中为 192.168.1.0/24),使其包含以下几行
DEVICE=eth0
TYPE=Ethernet
BRIDGE=br0
在其他配置行中。将 ifcfg-eth0 复制到 ifcfg-br0,其中 ifcfg-br0 应与 ifcfg-eth0 在以下提到的行中有所不同
DEVICE=br0
TYPE=Bridge
现在,当您使用“服务网络重启”时,您将拥有网络接口 br0 和 eth0,并且 192.168.1.0/24 范围内的 LAN IP 似乎已分配给 br0。现在您要做的就是编辑 VM 设置并要求它使用 br0 网络连接。
答案3
使用有什么问题苹果电脑? 这是完全无痛的并且不需要在主机上进行任何进一步的配置。