我是一名 Web 开发人员,我的大部分工作都是在我的 Macbook 上运行 VMWare Fusion 中的 CentOS 或 Ubuntu 服务器。我完全通过 SSH 与服务器交互,并且非常喜欢这种设置。
然而,我遇到的一个问题是,当我在无线网络之间切换时,虚拟机的 IP 地址会发生变化。这很麻烦,因为我有一些脚本将虚拟机的主文件夹挂载为驱动器,当 IP 发生变化时,我必须手动找出它是什么并进行更改。
如果我可以为虚拟机分配一个主机名(?),以便我可以始终执行“ssh user@myvitualmachine”,那就太好了,但我对设置它以使 IP 不会改变感到满意。
我该如何处理这个问题?
答案1
我为此使用了 Zeroconf。在服务器上安装 avahi-daemon,它们会将自己声明为“hostname.local”。然后,您只需要在客户端中支持 zeroconf。OS X 内置了它,Windows 则通过 Apple Bonjour 包获得它。我不确定 Linux 是否支持,但也许 avahi 有客户端支持。
答案2
您可以使用 NAT 而不是桥接网络。vmware 内置的 dhcp 服务器通常会为虚拟机提供相同的 IP。如果您发现它没有,您可以在配置文件中为它们分配一个静态 IP 地址,该文件位于类似的地方/etc/vmware/networking/vmnet8/dhcp/dhcp.conf
(它不是确切地该文件名,特别是你必须更改你的虚拟网络设备的名称。