虚拟箱和多个IP

我有几个虚拟机设置在这里,所有运行的Linux(主要是centos,但1 Ubuntu的)。 我通过SSH连接到它们,但是烦恼不得不返回到VM服务器来检查IP地址。 而且,在重新启动的时候,他们通常会得到一个不同的IP,因为这里的networking设置是我无法控制的。

跟踪我的虚拟机使用的所有IP的最简单方法是什么?

是否需要使用网桥模式,而不是NAT模式? 当然,如果你启用了NAT,那么你可以为你的ssh访问转发各种不同的端口,IP(当然还有端口)在重新启动时保持不变。

您可以在VirtualBox 3.1.2用户手册的第6.3.1节“使用NATconfiguration端口转发”中find详细信息。

另一个想法:我不禁注意到我的IP地址显示在我的虚拟机的XML文件中:

<GuestProperty name="/VirtualBox/GuestInfo/Net/0/V4/IP" value="10.0.2.15" timestamp="1261587087753023000" flags=""/> 

(在linux上,你可以在〜/ .VirtualBox / Machines / MyVMName / MyVMName.xml中find)

所以特别是如果您使用vboxmanage来启动/停止虚拟机,您可以grep机器的xml和更新“东西” – 如网页或文本文件? – 所以你总是知道每个虚拟机的IP地址。 我猜这将工作,不pipe你是否使用NAT或桥接networking,但我没有亲自尝试过…我有一个静态的IP在我的虚拟机。 我不知道这个值在XML文件中被更新的是谁/何时/何处。 据推测,当VBox检测到需要redirect到VM的DHCP回复时,VBox会对其进行更新。

很多您的select取决于您的确切的networkingconfiguration。 大多数简单的选项都涉及到一些networking修改,您指出的不是这种情况。 这里有一些select给出了这个约束:

  • 如果使用与Active Directory集成的Microsoft DHCP服务器,则可以使用Active Directory注册主机名,并inheritanceDNS名称。 看看http://www.centos.org/docs/5/html/Deployment_Guide-en-US/s1-dhcp-configuring-client.html我相信DHCP_HOSTNAME需要设置&#x3002; 我从来没有真正做到这一点,所以可能有额外的步骤,使这项工作在微软的上下文(也许有所有的机器join域等)。
  • 如果你正在寻找一个纯粹的Linux解决scheme,你可能想看看avahi守护进程。 它使用多播DNS来推送本地networking上的主机名和服务。 假设avahi正在所有的机器上运行,你应该可以编辑/etc/nsswitch.conf,确认主机行上包含mdns4或mdns4_minimal,并且应该能够直接parsing所有服务器的主机名。 再一次,我没有在生产环境中设置它,所以可能需要其他configuration。

这两个都很麻烦,所以和Chopper3提到的一样,你可以更好地与任何pipe理你的networking的人合作,获得静态的IP和DNS名字。 您甚至可以使用静态DHCP分配,然后修改主机文件,但是又需要您的networking团队进行合作。

设置一个cronjob,使wget到一个.php文件,告诉你机器和ip的主机名,然后你就完成了。

当机器通过networking上的DHCP获得IP地址时,他们是否也没有获得DNS? 例如。 你应该能够通过他们的主机名连接到它们,这将保持静态。

您可以在自己的“虚拟networking”中运行所有的虚拟机,并运行您自己的连接到真实networking的DHCP / DNS /路由器,但是您仍然需要networkingpipe理员添加他可能不喜欢的路由/ DNS转发。

另一种做法是让你有一定的控制权,那就是欺骗和使用其中一种外部DNS服务。 例如:

dyndns.org是一个免费的服务,可以让你有一个静态的主机名映射到一个dynamic的IP地址。 他们也有不同的操作系统的客户吨,以保持这个最新的。 通常情况下,你将这个设置为一个外部地址(例如你的家庭路由器),所以你可以记住myhouse.dyndns.org而不是87.42.80.0或者最近修改的东西。

在你的情况下,我会为每个虚拟机做类似的事情。 设置自己的帐户,并获得每台机器的主机名。 安装客户端告诉他们保持更新。 所以你最终与myvirt1.dyndns.org ,它指向192.168.xx或任何你刚刚给予的IP。

– 说,你可不只是问你的networkingpipe理员一块静态地址的?

静态IP和文本编辑器