如何通过主机名访问虚拟机

如何通过主机名访问虚拟机

我已经使用 VMWARE 一段时间了。为了从主机访问客户机,通常我会在客户机中创建一个桥接接口,然后使用 ssh 登录到客户机。这种方法的问题在于,每次客户机重新启动后,我都需要重新检查客户机的 IP 地址,因为我只能在桥接接口中使用 DHCP。

所以我想知道有没有一种方法可以让我通过主机名而不是通过裸 IP 地址登录客户机?然后我可以给我的 putty 会话命名,并在每次我想登录客户机时简单地使用这个保存的会话。

答案1

虚拟网卡的 MAC 在启动之间不会改变,因此如果您的 DHCP 设置允许您以这种方式为接口分配固定地址,那么这是简单的方法。如果您使用的是廉价路由器的 DHCP 功能,您可能没有此选项,但好的路由器会有,如果 DHCP 服务器是 Linux 或 Windows 机器,那么您肯定可以。Linux 发行版中最常见的 dhcp 服务器配置文件中的类似以下内容将解决问题:

host somevirtualmachine {
  hardware ethernet 00:0C:29:36:BC:91;
  fixed-address 192.168.39.240;
}

要在 Linux 中查找网络接口的 MAC,请运行ifconfig并查找HWaddr接口。VMWare 也可能在其管理屏幕上显示该信息。

如果你无法在 DHCP 服务器上设置固定地址,那么你可以在虚拟机中设置固定地址如果您的地址范围中有一部分是 DHCP 服务器不分配地址的(通常让 DHCP 设置部分地址范围,例如 192.168.X.2-128,而将其余地址保留给需要固定地址的设备)。具体怎么做取决于您的操作系统(/etc/network/interfaces在 Debian 风格的 Linux 设置上进行编辑)。

您还可以研究动态 DNS,但如果您没有设置为能够通过 DHCP 提供固定地址,那么您可能也没有设置为在本地配置动态 DNS。

注意:您应该在问题中详细说明您的设置,特别是虚拟机中运行的操作系统以及负责通过 DHCP 分发地址的设备。我在上面的示例中假设使用 Linux,但它也适用于 Windows(您只需向 Windows 管理员询问详细信息)。

答案2

这取决于主机和客户机操作系统,但我猜您使用 Windows 作为主机,使用某种形式的 Linux 作为客户机。

最常见的本地名称解析协议是 NBNS(NetBIOS)——所有版本的 Windows 均使用这种协议,由于使用广播,因此效率略低,但几乎与所有内容兼容。

如果客户机是 Linux,请安装 Samba 并启动其nmbd组件(smbd这里不需要),这将允许通过名称访问客户机。

要从访客访问主机,请添加hosts: ..... wins/etc/nsswitch.conf

另一种选择是 mDNS – 主要由 Mac OS X 使用,但也可用于 Windows(Apple 的“Bonjour 打印服务”的一部分)以及 Linux(以 和 的形式avahi-daemonnss_mdns

相关内容