首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不允许在适配器1上使用NatNetwork的流浪者

不允许在适配器1上使用NatNetwork的流浪者
EN

Stack Overflow用户
提问于 2016-07-20 19:50:07
回答 1查看 1.9K关注 0票数 2

即使在Virutalbox中将网络设置为nat时,流浪者也会在适配器1 (eth0)上强制使用网络类型natnetwork

我可以通过Virtualbox手动设置所有的东西,我的所有VM都可以根据需要通过eth0相互通信,端口转发也可以工作。我想让瓦格兰特以同样的方式工作,以便于同事之间的分配。

看来其他人也有这个问题,Vagrant:https://github.com/mitchellh/vagrant/issues/2779没有解决这个问题。

有人知道解决办法吗?

详细信息:

代码语言:javascript
复制
$ VBoxManage list natnetworks
NetworkName:    ff_mgmt
IP:             10.0.2.1
Network:        10.0.2.0/24
IPv6 Enabled:   No
IPv6 Prefix:    fd17:625c:f037:2::/64
DHCP Enabled:   No
Enabled:        Yes
Port-forwarding (ipv4)
    https1:tcp:[]:4441:[10.0.2.11]:443
    https2:tcp:[]:4442:[10.0.2.12]:443
    https3:tcp:[]:4443:[10.0.2.13]:443
    ssh1:tcp:[]:2221:[10.0.2.11]:22
    ssh2:tcp:[]:2222:[10.0.2.12]:22
    ssh3:tcp:[]:2223:[10.0.2.13]:22
loopback mappings (ipv4)
    127.0.0.1=2

Vagrantfile相关部分

代码语言:javascript
复制
boxes = [
{
    :name => "ff1",
    :ip => "10.0.2.11",
    :ssh_port => "2221",
    :https_port => "4441",
    :mac =>  "0800270fa302",
    :memory => "8192",
    :cpus => "4"
},
{
    :name => "ff2",
    :ip => "10.0.2.12",
    :ssh_port => "2222",
    :https_port => "4442",
    :mac =>  "0800270fb302",
    :memory => "8192",
    :cpus => "4"
},
{
    :name => "ff3",
    :ip => "10.0.2.13",
    :ssh_port => "2223",
    :https_port => "4443",
    :mac =>  "0800270fc302",
    :intnet2 => "seg5a",
    :memory => "8192",
    :cpus => "4"
}
]

Vagrant.configure(2) do |config|
boxes.each do |opts|
    config.vm.define opts[:name] do |config|

        config.vm.box = "ff"
        #config.vm.box_version = 402

        config.vm.hostname = opts[:name]

        config.ssh.username = 'niska'
        config.ssh.private_key_path = '/home/niska/.ssh/id_rsa'
        config.vm.network :private_network, ip: opts[:ip]
        config.vm.network :forwarded_port, guest: 22, guest_ip: opts[:ip], host: opts[:ssh_port], id: 'ssh'
        config.vm.network :forwarded_port, guest: 443, host: opts[:https_port]

        config.vm.provider "virtualbox" do |vb|
            vb.gui = false
            vb.memory = opts[:memory]
            vb.cpus = opts[:cpus]

            vb.customize ["modifyvm", :id, "--nic1", "natnetwork"]
            vb.customize ["modifyvm", :id, "--nictype1", "virtio"]
            vb.customize ["modifyvm", :id, "--macaddress1", opts[:mac]]
            #vb.customize ["modifyvm", :id, "--intnet1", "ff_mgmt"]

        end
    end
end

vagrant up输出。通知覆盖natnetwork。此外,端口转发选择不同的端口,因此无法连接。

代码语言:javascript
复制
$ vagrant reload ff1
==> ff1: Attempting graceful shutdown of VM...
    ff1: Guest communication could not be established! This is usually because
    ff1: SSH is not running, the authentication information was changed,
    ff1: or some other networking issue. Vagrant will force halt, if
    ff1: capable.
==> ff1: Forcing shutdown of VM...
==> ff1: Clearing any previously set network interfaces...
==> ff1: Preparing network interfaces based on configuration...
->>>     ff1: Adapter 1: nat                       <<<--- (overrode w/ 'nat')
    ff1: Adapter 2: hostonly
==> ff1: Forwarding ports...
    ff1: 22 (guest) => 2221 (host) (adapter 1)
    ff1: 443 (guest) => 4441 (host) (adapter 1)
==> ff1: Running 'pre-boot' VM customizations...
==> ff1: Booting VM...
==> ff1: Waiting for machine to boot. This may take a few minutes...
    ff1: SSH address: 127.0.0.1:22
    ff1: SSH username: niska
    ff1: SSH auth method: private key
    ff1: Warning: Authentication failure. Retrying...
    ...
    Vagrant never connects
EN

回答 1

Stack Overflow用户

发布于 2017-11-13 18:31:11

不要将nic1 (eth0)设置为NAT以外的任何东西。virtualbox要求第一个接口为NAT。

代码语言:javascript
复制
ff1: Warning: Authentication failure. Retrying...

如果您将nic的网络类型更改为natnetwork,则流浪者无法知道如何将ssh转到机器上。

如果您首先需要流浪汉提供服务,则在完成配置后更改您的网络设置。然而,在这一点之后,你将不能使用流浪汉。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38489618

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档