2014-05-01 49 views
1

我在访问LAN上的Open stack VM时遇到问题。OpenStack VM无法在局域网上访问

  • 我已经安装单台机器(192.168.2.15)opensatck使用devstack,所以 所有的虚拟机都本机内部运行
  • 我的机器(192.168.2.15)有一个网卡(eth0的)和
  • 我有新星网络,没有安装中子。
  • 我在/ etc/network/interfaces文件中为所有LAN机器的eth0(例如192.168.2.15和192.168.2.16)分配了静态IP。所述OPENSTACK机

系统信息如下:

内存使用:19%IP地址virbr0:192.168.122.1

交换用法:0%IP地址BR100:10.0.0.1

下面工作正常

  1. 我可以从VM1(10访问互联网。 0.0.2这是自动分配的IP)。
  2. 我可以从VM1 ping LAN机器(192.168.2.16)。
  3. Openstack机器(192.168.2.15)可以ping VM1(10.0.0.2)。
  4. VM1(10.0.0.2)可以ping VM2(10.0.0.3)。

但是局域网机器192.168.2.16不能ping通VM1(10.0.0.2)

所以,请建议如何能实现?请考虑我对于Openstack和网络非常新颖。

谢谢!

+0

您无法从192.168.x.x ping 10.x.x.x机器 – maksimov

+0

请提出我需要做什么更改以从LAN机器(192.168.2.16)访问VM1(10.0.0.2)。 – user0011

回答

0

添加到客户机的路由到OpenStack的虚拟机,帮助了我。

3

如果您希望来自OpenStack网络之外的主机连接到您需要为您创建的VM分配一个浮动IP。内部IP只能从openstack网络内访问。

了解如何浮动IP这里分配给VM:http://docs.openstack.org/user-guide/content/floating_ip_allocate.html

从另一台主机访问虚拟机的浮动IP(这不是devstack主机),你应该确保该devstack主机配置为转发数据包。你可以这样做:

sudo bash 
echo 1 > /proc/sys/net/ipv4/ip_forward 
echo 1 > /proc/sys/net/ipv4/conf/eth0/proxy_arp 
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE 

看到更多细节在这里: http://barakme.tumblr.com/post/70895539608/openstack-in-a-box-setting-up-devstack-havana-on-your

+1

Floating-ips不是他的问题,因为他说“Openstack机器(192.168.2.15)可以ping VM1(10.0.0.2)”。在我的情况下(哈瓦那+ centos6)需要的是“echo 1>/proc/sys/net/ipv4/conf/eth0/proxy_arp”。 – lacroix1547