我目前正在租用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地址
也经过了所有其他页面的信息为此。 我还发现这个很好的小教程,可能有助于理解一切: