networking - 在 Vagrant 下使用私有(private)网络无法访问访客 ip

标签 networking vagrant virtualbox vagrant-windows

我的 Windows 主机上有下一个 vagrant 文件

Vagrant.configure(2) do |config|  
    config.vm.provider :virtualbox do |v|
        v.customize [
            "modifyvm", :id,
            "--memory", 1024,
            "--cpus", 1,
        ]
    end
    config.vm.box = "ubuntu/trusty64"
    config.vm.network "private_network", ip: "192.168.0.101"
end

虚拟机正常启动,但无法通过“192.168.0.101”ip 从主机访问。 guest 上的/etc/network/interface 是
auto lo
iface lo inet loopback

source /etc/network/interfaces.d/*.cfg

#VAGRANT-BEGIN
# The contents below are automatically generated by Vagrant. Do not modify.
auto eth1
iface eth1 inet static
      address 192.168.0.101
      netmask 255.255.255.0
#VAGRANT-END

和/etc/network/interfaces.d/eth0.cfg 是
auto eth0
iface eth0 inet dhcp

此外,在每次运行该 vagrant 之后,都会创建新的虚拟网络适配器,并在 Virtualbox UI 工具中看到有关该新网络的信息 - 真实 IP 是不同的和随机的,即 169.254.173.8。我有> 20个虚拟网络:)通过该IP guest 机器也被ping通了。但是在重新启动 vagrant 后,将使用新 IP 创建新网络

如何使用静态不可更改的 IP 运行 vagrant 机器?我需要用几个节点构建集群,每个节点都必须知道每个节点的 IP

更新:
在 Linux 主机上一切正常。我可以从我的主机 ping 所有客人,客人可以看到对方
在 Windows 上,客人无法 ping 其他客人,即 192.168.0.101 看不到 192.168.0.102

最佳答案

专用网络就是 guest 专用的,它是在默认的 NAT-ed 适配器之外创建的。如果您有多个客人,他们可以在专用网络上相互交互。

关于节点交互,有许多插件可以帮助您管理它,无论是使用实际 DNS 还是更简单地使用 /etc/hosts .我尝试了一些并确定了vagrant-hosts .

关于networking - 在 Vagrant 下使用私有(private)网络无法访问访客 ip,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30385200/

相关文章:

java - asmack android XMPP - 获取所有用户

Vagrant向上错误: superclass mismatch for class ImageNotConfiguredError

shell - Vagrant 配置 shell 与 puppet 与 Chef

jenkins - Jenkins是否有一个稳定的插件可以在VM上运行构建?

c++ - 游戏协议(protocol)

c++ - iptables C++ 控制

php - 如何在 Vagrant (Homestead) 上使用 XDebug 和 VSCode?

windows - 虚拟机 : Windows 7 on Ubuntu 11 or Ubuntu 11 on Windows 7?

mysql - 清理生产数据库以用于测试

android - iOS/Android - 你能读/写移动操作系统上的数据链路层吗?