使 Vagrant Box 可从家庭网络上的其他计算机访问

使 Vagrant Box 可从家庭网络上的其他计算机访问

我的笔记本电脑上有一个 Vagrant box(使用 Virtual Box)在本地运行。我的笔记本电脑(主机)运行的是 Mac OS 10.11.6;客户机运行的是 Ubuntu 16.04。

目前,只能从主机访问客户机,使用 Vagrantfile 中的以下节:

  # Create a private network, which allows host-only access to the machine
  # using a specific IP.
   config.vm.network "private_network", ip: "192.168.13.37"

我想让其他计算机(仅在家庭网络上)可以访问 Vagrant 盒子。当然,只有当我的笔记本电脑在家庭网络上启动并运行并且 Vagrant 盒子正在运行时,它才可以访问,但这对我的目的来说没问题。

我特别希望 vagrant box 可以访问固定 IP来自家庭网络上的其他计算机。(它将从运行 Ubuntu 18.04 的笔记本电脑和另一台运行 Windows 10 的笔记本电脑访问,但这并不重要。)

配置文件中这个注释掉的部分看起来可能与我想要的有关:

  # Create a public network, which generally matched to bridged network.
  # Bridged networks make the machine appear as another physical device on
  # your network.
  # config.vm.network "public_network"

但是,通过在线搜索,我找不到有关 vagrant 的文档或答案来描述我的需求的“可预测 IP”部分。

我如何配置这个 vagrant box 来让它有一个可以从家庭网络的其余部分访问的 IP(但仅有的来自家庭网络)?

答案1

我没有完全解决上面描述的问题,但我发现通过为特定服务我希望可以从家庭网络上的其他主机访问,这样我就可以处理我的用例。

由于端口是非标准的,因此它不太干净,但它可以工作。

我正在运行 https 服务,因此我使用的配置行是:

 config.vm.network "private_network", ip: "192.168.13.37" # as before

 config.vm.network "forwarded_port", guest: 443, host: 4443

相关内容