Linux 未连接到网络时如何访问(ping)VM?

Linux 未连接到网络时如何访问(ping)VM?,linux,networking,dns,virtualbox,Linux,Networking,Dns,Virtualbox,我有一台mac主机,其中一台Virtualbox VM运行Linux(ubuntu),另一台运行Windows。 我已为所有来宾虚拟机设置了桥接网络适配器和仅限主机的网络适配器。 主机能够ping虚拟机,虚拟机能够ping主机。当主机连接到网络时,此功能可以正常工作。家中的路由器充当DNS,因此ping(和其他网络服务)被路由到正确的VM。 但是,当我没有连接到网络时,我该怎么办呢?(我经常旅行)是否有某种方式(可能是服务)可以在主机上运行,就像一个轻量级DNS,并将流量路由到正确的VM?您可以

我有一台mac主机,其中一台Virtualbox VM运行Linux(ubuntu),另一台运行Windows。

我已为所有来宾虚拟机设置了桥接网络适配器和仅限主机的网络适配器。

主机能够ping虚拟机,虚拟机能够ping主机。当主机连接到网络时,此功能可以正常工作。家中的路由器充当DNS,因此ping(和其他网络服务)被路由到正确的VM。

但是,当我没有连接到网络时,我该怎么办呢?(我经常旅行)是否有某种方式(可能是服务)可以在主机上运行,就像一个轻量级DNS,并将流量路由到正确的VM?

您可以查找VM的本地地址

# ip addr
然后编辑

# vi /etc/hosts "hosts - static table lookup for hostnames "
并添加您的虚拟机本地地址

# ip addr
你可以编辑

# vi /etc/host.conf
订购主机,绑定

并更改查找顺序

“etc/host.conf文件。行顺序hosts,bind指定/etc/hosts优先于名称服务器。将行更改为订单绑定,主机将系统配置为首先使用名称服务器解析主机名和IP地址。如果无法通过名称服务器解析IP地址,系统将在/etc/hosts文件中查找IP地址。"

更新 你可以创建一个VPN吗

这将允许您拥有静态ip,然后离开VPN来处理来自路由器的动态ip

选择Apple菜单>系统首选项

然后单击网络。单击网络连接服务列表底部的添加(+),然后从界面弹出菜单中选择VPN

根据要连接的网络,从VPN类型弹出菜单中选择要设置的VPN连接类型,并为VPN服务命名

输入VPN连接的服务器地址和帐户名。 单击“身份验证设置”,然后输入网络管理员向您提供的用户身份验证信息

输入用户身份验证信息后,单击确定,然后单击连接

然后将虚拟机指向新的网络接口

VBoxManage modifyvm "VM name" --natbindip1 "192.168.0.x"
您还可以在脚本中运行上述操作,以便在“脱机”时更改所有vm的网络

参考号

参考号

这是一个小技巧

我的路由器也会动态地分配我的ip。但是我强制它给我ip。我通过在我的linux机器上将其设置为静态来分配ip:)这在办公室中确实有效。对于办公室外,我有一个网络脚本的备份,所以我只需删除网络,然后替换文件并启动网络(文件位置在Fedora/Redhat/Centos/etc/sysconfig/networkscripts/)


最好的

您所说的“虚拟机本地地址”是什么意思"?我在虚拟机上有两个网络适配器,它们都有一个IP地址。我应该在/etc/hosts中添加哪一个?嗨,阿贾伊,我有另一个想法。你在使用哪一个虚拟机?我有OS X主机、3个ubuntu虚拟机和一个Windows 7虚拟机。所有这些虚拟机都需要通过网络相互通信。端口转发是一个选项,但我不想跟踪几十个映射。嗨,阿贾伊谢谢你的回答。我是人类,所以如果我说错了,请原谅。你正在使用哪个虚拟机提供商,例如Parallels、VMware Fusion VirtualBox等?VirtualBox,最新版本。