在Ubuntu中为KVM虚拟机设置networking接口

我目前正在租用Ubuntu server 。 在这台机器上,我想运行使用KVM虚拟机。 对于一些networking访问,我已经安装了Kimchi ,一个非常简单的基于HTML5的KVMpipe理工具。

无论如何,我有问题的虚拟机build立networking。 目前我有一个主要的IP和多个额外的IP地址。 主IP为主机保留,所以我可以通过SSH访问它。请注意,主机服务器直接连接到互联网与这个公共IP,之间没有任何东西。

显然现在我想让第一个虚拟机使用其中一个额外的IP。

这是/etc/network/interfaces到目前为止:

 auto lo iface lo inet loopback # device: eth0 auto eth0 iface eth0 inet static address 1**.***.***.**6 broadcast 1**.***.***.**1 netmask 2**.***.***.**2 gateway 1**.***.***.**9 # default route to access subnet up route add -net 1**.***.***.**8 netmask 2**.***.***.**2 gw 1**.***.***.**9 eth0 

在这里输入图像说明

泡菜networkingpipe理给了我以下选项。 我可以创build一个可以连接到虚拟机的新networking:

在这里输入图像说明

我需要如何设置才能让虚拟机自动使用额外的IP?

这是一个更详细的桥接演练:

在kvm服务器上执行以下步骤:

sudo停止networkingpipe理器

回声“手动”| sudo tee /etc/init/network-manager.override

这将禁用您的networkingpipe理器,并阻止其重新启动。

接下来我们在接口configuration上工作,从下面的接口开始:

ifdown eth0

编辑“/ etc / network / interfaces”并find物理接口,可能是eth0

您需要replaceeth0接口信息,使其看起来如下所示:

 auto br0 iface br0 inet static address XXX.XXX.XX netmask XXX.XXX.XXX.x network XXX.XXX.XX broadcast XXX.XXX.XXX.X gateway XXX.XXX.XX bridge_ports eth0 bridge_stp on bridge_maxwait 0 

你应该能够然后带回你的适配器:

ifup br0

您还需要将以下内容添加到“/etc/sysctl.conf”设置中

 net.bridge.bridge-nf-call-ip6tables = 0 net.bridge.bridge-nf-call-iptables = 0 net.bridge.bridge-nf-call-arptables = 0 

和加载设置

sysctl -p /etc/sysctl.conf

另外添加该行

/ sbin / sysctl -p /etc/sysctl.conf
iptables -A FORWARD -p tcp –tcp-flags SYN,RST SYN -j TCPMSS –clamp-mss-to-pmtu

到你的'/etc/rc.local'文件,在“exit 0”行之前,以确保这些效果在启动时开始。

运行brctl show

并寻找显示接口eth0的br0行。 这现在是一个可桥接的设备。

您现在需要configuration您的访客虚拟机指向这个桥梁。 在你的客人定义XML文件

 virsch edit <name of guest VM> 

您需要编辑界面部分以类似于:

 <interface type='bridge'> <source bridge='br0'/> <mac address='<YOUR MAC ADDRESS>'/> <model type='virtio'/> # try this if you experience problems with VLANs </interface> 

您的设备现在应该被桥接。 您仍然需要正确configuration机器本身的IP地址

也经过了所有其他页面的信息为此。 我还发现这个很好的小教程,可能有助于理解一切:

http://www.dedoimedo.com/computers/kvm-bridged.html