Vagrant 如何访问公网中的流浪汉信箱

Vagrant 如何访问公网中的流浪汉信箱,vagrant,vagrantfile,Vagrant,Vagrantfile,我在流浪汉里面的e盒上创建了。在流浪汉档案中,我把网络作为 Create a private network, which allows host-only access to the machine # using a specific IP. # config.vm.network :private_network, ip: "192.168.33.10" # Create a public network, which generally mat

我在流浪汉里面的e盒上创建了。在流浪汉档案中,我把网络作为

     Create a private network, which allows host-only access to the machine
  # using a specific IP.
  # config.vm.network :private_network, ip: "192.168.33.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

我无法访问VLAN外的VagrantBox。我需要进入公共网络中的流浪汉信箱。如何以我需要在公共网络中访问的方式配置vagrantfile?

取消对
vagrantfile

config.vm.network:public\u网络

该文件如下所示

VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  config.vm.box = "box_name"
  config.vm.network :public_network
end
保存它,使用
vagrant reload
重新启动VM

对于VirtualBox,它将使用桥接模式进行联网。这意味着VM将从DHCP服务器获取VLAN的IP地址

您还可以使用以下选项设置VLAN IP:
config.vm.network:public\u network,IP:“192.168.0.160”

请参阅=>

  • 单一虚拟机环境

    您可以使用命令:
    vagrant ssh

  • 多虚拟机环境

    您可以使用命令:
    vagrantssh{hostname}


  • 默认情况下,vagrant会删除虚拟机内其他桥接网络上的默认(工作)路由。我针对DHCP的问题只能通过如下配置桥接网络来解决:

    config.vm.network :public_network, :bridge => 'em1',:use_dhcp_assigned_default_route => true
    
    承蒙
    静态IP可能有一个等价物。

    最后!这是几年后,但我找不到更多的最新信息。对我来说,问题是我不仅定义了一个专用网络,而且还定义了一个转发端口,所有这些都工作得很好。然后我注释掉了私有网络,用公共网络代替了它,什么都联系不到。尝试了我在这里和其他地方找到的一切,没有成功。只有当我注释掉端口转发时,事情才重新开始工作,没有任何手动桥接/dhcp配置rigamarole建议。

    我无法用我读到的任何东西(这是数小时和数小时的研究)来理解这一点。相反,我是这样想的:

    下面是我的流浪汉档案。对我来说重要的部分是
    config.vm.network:public\u network
    。在使用
    vagrant reload
    重新加载vagrant后,我选择了4个可用桥接网络接口中的第一个选项(我不确定是否是幸运地选择了正确的接口,或者是否有合适的接口,我将进行实验),然后使用
    vagrant ssh
    ssh
    插入到vagrant框中,并执行
    ifconfig
    ,从它输出的3个ip地址中选择一个,粘贴到我的浏览器中,就成功了

    似乎没有其他人谈论的事情是
    ssh
    ing进入“流浪者”框,并在其中找到一个ip地址。我希望这可能会对未来的其他网络新手有所帮助

    # -*- mode: ruby -*-
    # vi: set ft=ruby :
    
    Vagrant.configure(2) do |config|
      config.vm.box = "bahmni-team/bahmni"
      config.vm.box_check_update = true
      config.ssh.insert_key = false
      config.vm.network :public_network
    
      config.vm.synced_folder "..", "/bahmni", :owner => "vagrant"
      config.vm.provider "virtualbox" do |v|
         v.customize ["modifyvm", :id, "--memory", 4092, "--cpus", 2, "--name", "Bahmni-RPM"]
      end
    end
    

    本地网络中的任何人都可以访问我的虚拟机?使用vagrant用户和密码?是的,使用
    ssh vagrant@
    对我来说,它只适用于
    config.vm.network“public\u network”、:bridge=>“eth0”、auto\u config:false
    ,然后使用
    shell
    provisioners手动添加eth1的设置。在
    config.vm.network
    中包含“ip”的任何类型的组合在这里都不起作用?这有关系吗?@Nikos我不确定,但没有它它仍然有效。