如何让我的Linux虚拟机连接到一个openvswitch桥?

我正在学习本教程: http : //networkstatic.net/wp-content/uploads/2012/04/openvswitch.openflow.gre_.tutorial1.pdf

简而言之:br0连接到实际的networking,br1是一个孤立的桥梁,我附加了多个vms。 现在我想在图片中显示两个br1之间的gre隧道

在这里输入图像说明

现在,br0是好的:我添加我的以太网端口,我实际上连接在我的192.168.1.x / 24局域网。 对于BR1我想要一个192.168.100.x / 24家庭地址,所以开始我设置:

ifconfig br1 192.168.100.1 netmask 255.255.255.0 

问题是,当我启动我的Linux虚拟机,它只是不断尝试连接到eth0没有实际上成功! 接口configuration正确,如果我要求一个

 ovs-vsctl show 

我在br1下面得到一个“vnet0”端口,意思是这个vm实际上是连接的! 但是在客户操作系统内部,这个连接不会发生。 有任何想法吗?

编辑:来宾系统中的一个ifconfig告诉我,eth0没有关联的IP地址。 我试图手动设置它:

 ifconfig br1 192.168.100.1 netmask 255.255.255.0 

但仍然没有完成这项工作。

在您的设置中,VM1和VM2之间的path旨在转发以太网帧。 由于以太网层位于IP层之下,因此这意味着VM1和VM2之间的path上的任何内容都不应该知道在IP层上发生了什么。

只有VM1和VM2才会知道IP层。 因此,将一个IP地址分配给br2看起来是个错误,除非您想将主机连接到虚拟网段上的另一个节点。

如果您只希望这两个虚拟机在虚拟网段上,那么configurationIP最简单的方法就是使用静态IP地址在每个虚拟机内configurationeth0

如果你需要在这个网段上有很多的虚拟机,你可能需要让其中一个作为DHCP服务器。

您的设置很容易遇到MTU问题。 这些都可以解决,但是在开始查看可能的MTU问题之前,您需要通过连接获取小包。