AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 1026439
Accepted
Enrique Moreno Tent
Enrique Moreno Tent
Asked: 2018-04-20 07:25:11 +0800 CST2018-04-20 07:25:11 +0800 CST 2018-04-20 07:25:11 +0800 CST

无法 ping 使用 NAT 创建的虚拟机

  • 772

所以我在我的主机(Ubuntu 17.10)中创建了一个带有 VirtualBox + Vagrant + Ansible 的虚拟机。

Vagrant.configure("2") do |config|

  config.vm.box = "centos-7.3-x86_64_latest.box"
  config.vm.box_url = "http://nas.my-compamy.intern/centos-7.3-x86_64_latest.box"

  config.vm.hostname = "login.my-cloud.dev"
  config.vm.network "private_network", ip: "192.168.33.240"

  # enable to use synced folders
  # config.vm.synced_folder "/my/local/path", "/var/www/cce_login", disabled: true

  config.ssh.forward_agent = true
  config.ssh.keep_alive = true
  config.ssh.username = "vagrant"
  config.ssh.password = "vagrant"

  config.vm.provider :virtualbox do |v|
    # workaround as some virtualbox version seem to disconnect the NAT adapter
    v.customize ['modifyvm', :id, '--cableconnected1', 'on']

    v.memory = 1024
    v.cpus = 2
    v.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
    v.customize ["modifyvm", :id, "--name", "login.cce-cloud.dev"]
    v.customize ["modifyvm", :id, "--accelerate3d", "off"]
    v.customize ["modifyvm", :id, "--accelerate2dvideo", "off"]
    v.customize ["modifyvm", :id, "--cpuexecutioncap", "75"]
    v.customize ["modifyvm", :id, "--largepages", "on"]
  end

  config.vm.provision "ansible" do |ansible|
    ansible.playbook = "ansible/site.yml"
    ansible.verbose = "vvv"
  end

end

我通过

$ vagrant up --provision

完成所有这些之后,我可以像这样通过 Vagrant 登录 SSH。

$ vagrant ssh

但是当我想从 MySQL Workbench、FTP 访问或直接 SSH 中使用它时,我得到一个错误。我什至无法ping通机器。

$ ping 192.168.33.240

PING 192.168.33.240 (192.168.33.240) 56(84) bytes of data.
From 192.168.33.1 icmp_seq=1 Destination Host Unreachable
From 192.168.33.1 icmp_seq=2 Destination Host Unreachable
From 192.168.33.1 icmp_seq=3 Destination Host Unreachable

由于我没有从 DevOps 团队更改 Vagrantfile 的权限,我认为错误一定出在我的主机配置方式中,但我似乎看不出问题出在哪里。

$ ifconfig 

enxdc9b9cee07b2: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.111.198  netmask 255.255.255.0  broadcast 192.168.111.255
        inet6 fe80::f0ad:1d52:8e55:7fc7  prefixlen 64  scopeid 0x20<link>
        ether dc:9b:9c:ee:07:b2  txqueuelen 1000  (Ethernet)
        RX packets 11159  bytes 4878538 (4.8 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 8289  bytes 2106425 (2.1 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 1607  bytes 173261 (173.2 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1607  bytes 173261 (173.2 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

vboxnet0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.33.1  netmask 255.255.255.0  broadcast 192.168.33.255
        inet6 fe80::800:27ff:fe00:0  prefixlen 64  scopeid 0x20<link>
        ether 0a:00:27:00:00:00  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 170  bytes 18067 (18.0 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

如何更改主机操作系统的配置,使其达到虚拟操作系统?

注意:这enxdc9b9cee07b2是我的有线连接。我知道通常是这样,eth0但我正在使用 USB 端口的适配器

更新

更多信息

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

networking virtualbox vagrant ping
  • 2 2 个回答
  • 6010 Views

2 个回答

  • Voted
  1. rtaft
    2018-04-20T08:44:44+08:002018-04-20T08:44:44+08:00

    唯一允许主机到 VM 通信的网络配置是 Host Only 和 Bridged 模式。这里有一个表格,显示了不同的网络类型,以及它是否可以访问主机、其他虚拟机、互联网等。只有桥接模式才能让您获得完整的网络访问权限,但通常会从您的 DHCP 中提取 IP,您可能不想要在这个情况下。

    您可以通过 2 个网络来满足您的需求,即 NAT 和仅主机来解决此问题。

    • 0
  2. Best Answer
    Enrique Moreno Tent
    2018-04-25T07:35:15+08:002018-04-25T07:35:15+08:00

    我最终自己找到了解决方案。

    显然,预装 Ubuntu 的版本不是 oracle 的官方 DEB。

    我所做的是将我的虚拟机保存在临时备份文件夹中,然后删除 Vagrant 和 Virtualbox,然后从他们的网站下载官方 deb 。

    一旦我启动机器,它们就可以毫无问题地工作。

    • 0

相关问题

  • 如何将主机 Ubuntu 上的 VPN (tun0) 网络适配器映射到 VirtualBox 来宾 Windows?

  • 如何限制下载/上传带宽?

  • 如何通过 Windows 网络共享文件?

  • 如何在 Ubuntu 中运行 Windows XP

  • 面板小程序以文本形式显示当前网络流量?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve