与一个网卡联网并访问互联网和虚拟机

我已经安装了opennebula,我已经按照这个教程。 不幸的是,我不能SSH看到似乎处于运行状态,并已经有一个IP的虚拟机。 问题可能是我有一个网卡,虽然我读到,我应该使用桥接,我不知道这是可能的,如何。

brctl show命令输出是

bridge name bridge id STP enabled interfaces br0 8000.50e549b5e2aa no eth0 vnet0 virbr0 8000.000000000000 yes 

vnet0是虚拟机的接口。 如果我构build一个VM来使用虚拟网桥virbr0我有同样的问题。

我的接口文件是

 iface br0 inet static address XXX172 netmask 255.255.255.0 gateway XXX200 pre-up ifconfig eth0 down pre-up brctl addbr br0 pre-up brctl addif br0 eth0 pre-up ifconfig eth0 up post-down ifconfig eth0 down post-down brctl delif br0 eth0 iface eth0 inet manual 

在ifconfig中,br0已被分配接口中定义的IP(这是公共的),而vnet0似乎发送数据(TX字节> 0),但从不接收(RX字节= 0)。 我错过了什么吗? 有可能ssh到有一个网卡的虚拟机或我需要第二个?

OpenNebula在其文档中假设的是,主机使用两个物理接口,一个用于专用networking,一个用于互联网连接。 当然,如果主机只有一个接口,它只能连接到其中一个networking。 我试过的解决scheme,不要失去互联网连接,就是改变接口文件,以便br0接口被DHCP自动分配IP

 iface br0 inet dhcp 

我还更改了networking定义文件,以便它包含未由dhcp分配的公有IP地址的租约。 我实例化的虚拟机被成功分配了一个公共IP。 虽然我能够SSH到该虚拟机,那么互联网上的任何人都可以,所以我不会保持这种configuration。