如何在KVM中创build类似物理eth0的虚拟networking适配器? 由于我缺乏物理网卡。
另外,我需要一个和VMware一样的主机专用适配器来连接KVM中的两台虚拟机。 在KVM中做什么可能的解决scheme?
请回复。 谢谢
如果KVM主机上只有一个网卡,并且希望将虚拟机访问到连接到eth0
接口的主networking,则必须在物理networking接口(示例中的eth0
)上设置公用networking桥接器:
没有桥接,你在/etc/network/interfaces
有类似的东西:
# The loopback network interface auto lo iface lo inet loopback # The primary network interface auto eth0 iface eth0 inet static address 192.168.0.101 netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255 gateway 192.168.0.1
要设置桥接器,请使用以下命令replaceeth0
部分:
# The primary network interface auto br0 iface br0 inet static address 192.168.0.101 netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255 gateway 192.168.0.1 bridge_ports eth0 bridge_stp off bridge_maxwait 5
并sudo ifup br0
或重新启动机器。 请注意bridge_ports eth0
部分,它将您的物理网桥连接起来,并访问主networking中的网桥。
通过创build一个公共网桥,您可以让虚拟机通过连接到eth0
的networking访问它们。 如果只需要在同一主机上的虚拟机之间进行访问,则可以使用一个专用桥接器(这样您可以保留eth0
configuration,并且不会将networking接口绑定到网桥, bridge_ports none
)。 在你的接口configuration文件中,你将拥有:
# The loopback network interface auto lo iface lo inet loopback # The primary network interface auto eth0 iface eth0 inet static address 192.168.0.101 netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255 gateway 192.168.0.1 # The private bridge auto br0 inet static address 172.16.0.1 netmask 255.255.255.0 network 172.16.0.0 broadcast 172.16.0.255 bridge_ports none bridge_stp off bridge_fd 0 bridge_maxwait 0
并sudo ifup br0
或重新启动机器。
您可以使用新创build的公共或专用( br0
)网桥作为KVM虚拟机的networking设备。 如果您使用vanilla qemu / kvm cli或者使用某些pipe理工具(virsh,virt-manager,ovirt,proxmox等),则此步骤会更改。
在这两种情况下,您都可以像使用networking上的networking接口的普通主机一样configuration您的虚拟机,并且可以在/etc/network/interfaces
类似的东西(例如,networking192.168.0.0/24):
# The loopback network interface auto lo iface lo inet loopback # The primary network interface auto eth0 iface eth0 inet static address 192.168.0.102 netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255 gateway 192.168.0.1
一些有用的文档: