Networking 无法在LAN上访问Openstack VM

Networking 无法在LAN上访问Openstack VM,networking,openstack,Networking,Openstack,我在访问局域网上的开放堆栈虚拟机时遇到问题 我已经使用devstack设置了单机(192.168.2.15)opensatck,所以 所有虚拟机都在此计算机内运行 我的机器(192.168.2.15)有一个网卡(eth0)和 我有nova网络,还没有安装中子 我在/etc/network/interfaces文件中为所有LAN机器(如192.168.2.15和192.168.2.16)的eth0分配了静态IP Openstack机器的系统信息如下: 内存使用率:19%virbr0的IP地址:

我在访问局域网上的开放堆栈虚拟机时遇到问题

  • 我已经使用devstack设置了单机(192.168.2.15)opensatck,所以 所有虚拟机都在此计算机内运行
  • 我的机器(192.168.2.15)有一个网卡(eth0)和
  • 我有nova网络,还没有安装中子
  • 我在/etc/network/interfaces文件中为所有LAN机器(如192.168.2.15和192.168.2.16)的eth0分配了静态IP
Openstack机器的系统信息如下:

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

交换使用:br100的0%IP地址:10.0.0.1

下面的操作很好

  • 我可以从VM1(自动分配IP的10.0.0.2)访问internet
  • 我可以从VM1上ping LAN机器(192.168.2.16)
  • Openstack机器(192.168.2.15)可以ping VM1(10.0.0.2)
  • VM1(10.0.0.2)可以ping VM2(10.0.0.3)
  • 但是LAN机器192.168.2.16无法ping VM1(10.0.0.2)

    因此,请建议如何实现这一目标?请考虑我对OpenStack和网络很新。


    谢谢

    如果希望openstack网络外部的主机连接到您创建的虚拟机,则需要为其分配一个浮动IP。内部IP只能从openstack网络内部访问

    请参见此处如何将浮动IP分配给VM:

    要从另一台主机(不是devstack主机)访问VM的浮动IP,您应该确保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 
    
    请参阅此处的更多详细信息:

    添加到客户端机器到openstack VM的路由对我很有帮助。

    您不能从192.168.x.x.x ping 10.x机器请建议我需要做什么更改才能从LAN机器(192.168.2.16)访问VM1(10.0.0.2)。浮动IP不是他的问题,因为他说“openstack机器(192.168.2.15)可以ping VM1(10.0.0.2)”。在我的例子中(哈瓦那+centos6),需要的是“echo 1>/proc/sys/net/ipv4/conf/eth0/proxy_arp”。