如何使用 vagrant 定义网络设置

2024-03-27

我在 vagrant 中运行 Ubuntu,这是 Vagrantfile:

# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  config.vm.box = "ubuntu/trusty64"
  config.vm.network :private_network, ip: "192.168.99.4", :netmask => "255.255.255.0", auto_config: false
end

所以我希望有 192.168.99.4 作为 IP,但我总是有:

eth0      Link encap:Ethernet  HWaddr 08:00:27:88:ba:8f  
          inet addr:10.0.2.15  Bcast:10.0.2.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe88:ba8f/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

eth1      Link encap:Ethernet  HWaddr 08:00:27:9c:a9:9f 
          inet6 addr: fe80::a00:27ff:fe9c:a99f/64 Scope:Link 
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

知道我做错了什么吗?

在这个问题上取得了一些进展,几乎就像这样:如何在 VirtualBox 下切换 Vagrant 中的网络适配器顺序? https://stackoverflow.com/questions/28722563/how-to-switch-order-of-network-adapters-in-vagrant-under-virtualbox

这是关于不使用“10.0.2.15”,据我了解,它将在virutalbox的“NAT”设置中进行更改,无法由Vagrant管理


来自流浪书 https://www.safaribooksonline.com/library/view/vagrant-up-and/9781449336103/ch04.html

NAT 要求作为 VirtualBox 的第一个网络接口,

Vagrant 需要连接到虚拟的第一个网络设备 机器作为 NAT 设备。 NAT设备用于端口 转发,这就是 Vagrant 通过 SSH 访问虚拟网络的方式 机器。

因此,任何仅主机或桥接网络都将添加为 附加网络设备并暴露给虚拟机 “eth1”、“eth2”等等。 “eth0”或“en0”通常始终是 NAT 设备。

目前无法覆盖此要求,但是 重要的是要了解它已经就位。

所以你报告的是这个 NAT。

另外 eth1 也没有按照您的设置进行定义auto_config: false在你的 Vagrantfile 中,所以你基本上告诉 vagrant 你将自己完成所有设置。所以你应该将此参数设置为 true (或删除)或设置etc/network/interfaces你自己

你可以看看流浪公共网络 https://www.vagrantup.com/docs/networking/public_network.html看看是否可以使用代码片段示例从配置中删除 eth0 网关

  config.vm.network "public_network", ip: "192.168.0.17"

  # default router
  config.vm.provision "shell",
    run: "always",
    inline: "route add default gw 192.168.0.1"

  # default router ipv6
  config.vm.provision "shell",
    run: "always",
    inline: "route -A inet6 add default gw fc00::1 eth1"

  # delete default gw on eth0
  config.vm.provision "shell",
    run: "always",
    inline: "eval `route -n | awk '{ if ($8 ==\"eth0\" && $2 != \"0.0.0.0\") print \"route del default gw \" $2; }'`"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 vagrant 定义网络设置 的相关文章

  • Ansible SSH 转发似乎不适用于 Vagrant

    好吧 奇怪的问题 我有 SSH 转发与 Vagrant 一起使用 但我试图在使用 Ansible 作为 Vagrant 配置程序时让它工作 我准确地找到了 Ansible 正在执行的内容 并亲自从命令行尝试了它 果然 它也失败了 commo
  • 无法在Windows 8.1中的vagrant中安装插件hostmanager

    无法安装插件 显示以下错误 C devbox gt vagrant 插件安装 vagrant hostmanager 插件安装目录 Vagrant 主目录 里面有一个空格 在 Windows 上 Ruby 编译时存在错误 插件到带有空格的目
  • “include_recipe”与 Vagrantfile“chef.add_recipe”。有什么不同?

    刚刚在我的流浪盒子上运行 nginx source Recipe 并且我有非常不寻常的行为 当我包含来自的食谱时流浪文件 如下 一切都像魅力一样 Chef add recipe 项目 nginx Chef add recipe nginx
  • 如何导出 Vagrant 虚拟机以进行传输

    我有一个 vagrant box 已启动并正在运行 配置有 LAMP 堆栈 我需要将其转移到另一台电脑上 我怎样才能导出它 我想我可以获得一个可以复制到另一台电脑的文件 这样我就可以运行一些命令来导入流浪盒 你有两种方法可以做到这一点 我称
  • NoSuchModuleError:无法加载插件:sqlalchemy.dialects:redshift.psycopg2

    我正在尝试从我的 python 代码连接到 redshift 我安装的点 psycopg2 2 6 1 redshift sqlalchemy 0 4 1 SQLAlchemy 1 0 9 我的虚拟机有 libpq dev python p
  • Vagrant 和 Google App Engine 不同步文件

    我目前正在使用 Vagrant 启动虚拟机以在虚拟机中运行 GAE 的 dev appserver 同步文件夹工作正常 我可以看到所有文件 但是 在我运行开发应用程序服务器后 主机对 python 文件的更改不会动态更新 要查看 pytho
  • Bash 变量字符替换最终为空字符串或命令无效

    我正在编写一个 shell 脚本 通过 JQ 从 JSON 文件中检索变量内容 JSON 文件采用字符串格式 无论这是真实字符串还是数字 为了在 bash 脚本中检索变量 我做了类似的事情 my domain cat vagrant dat
  • 如何将 Vagrant 与 Jenkins 结合起来,打造完美的持续集成环境?

    您有一个需要运行一些软件要求的项目 例如 特定版本的 Apache PHP 版本 MySQL 数据库实例和其他几个软件 你已经发现了Vagrant http vagrantup com docs getting started why ht
  • 多台物理机上的 Vagrant VM

    我看到 Vagrant 有一个 AWS 插件 支持使用 Vagrant 来配置和运行多个 ec2 实例 AWS 之外是否存在此功能 使用示例 目前我在一台机器上有 5 个虚拟机 通过 VagrantFile 可以直接设置和管理 我现在可以访
  • Vagrant 和 Ansible 的“跳过:没有匹配的主机”问题

    我已经安装了 Vagrant VirtualBox 和 Ansible 并尝试在一台主机上运行配置 但它总是返回 正在跳过 没有匹配的主机 我的剧本文件的头部如下所示 hosts webservers user vagrant sudo y
  • 安装后无法使用指南针

    我似乎无法在 Vagrant 上使用指南针这个 Vagrant 文件 https github com Ilyes512 Vaprobash blob compass Vagrantfile 请在此处查看 bash 脚本的其余部分 已删除存
  • 白屏死机 - PHP/Vagrant 环境中没有显示错误 (Yii)

    我不能确定这个问题是否部分是由于 vagrant 造成的 但是我在运行 Unix 的 Vagrant 盒子中安装了 Yii 1 x 我试图强制执行一个简单的 PHP 错误 例如控制器中缺少分号 即使我 100 确定我创建了一个错误 但我没有
  • 如何在 IntelliJ IDEA 13(或 WebStorm)上远程运行 mocha 测试?

    IntelliJ IDEA 13 通过 Node js 插件对 Mocha 测试提供了非常出色的支持 https www jetbrains com idea webhelp running mocha unit tests html ht
  • Vagrant、VirtualBox - 找不到适配器?

    输入 vagrant up 时获取以下日志转储 已尝试在 VirtualBox 上没有任何混乱 并且还手动添加端口转发规则 主机 IP 127 0 0 1 主机端口 2222 访客端口 22 Bringing machine polecat
  • vagrant up 错误不起作用

    我尝试在我的计算机上安装 Laravel Homestead 我已经按照文档进行操作 昨天我就开始工作了 然而 我让笔记本电脑处于睡眠状态 并尝试运行 vagrant 配置 但收到了这个奇怪的错误 Jafars iMac Homestead
  • 如何在 Vagrant 和 Homestead 中回滚 PHP 版本?

    因此 我的公司正在使用 PHP 和 Laravel 为客户进行软件开发 我是公司的新人 正在使用 VirtualBox 设置较新的 Macbook 使用 Homestead 和 Vagrant 设置 Laravel 我已经完成了所有设置 以
  • Mac:执行 Vagrant 使用的 CLI“VBoxManage”时出现错误

    我正在使用 aerospike 并使用 vagrant virtual box 安装它 安装后 当我尝试启动虚拟机时 出现以下错误 执行时出现错误VBoxManage Vagrant 使用的 CLI 用于控制 VirtualBox 命令和
  • Microsoft Edge 不会在 Vagrant VM 中加载本地 nginx 网站

    我遇到了一个奇怪的问题 Microsoft Edge 无法加载托管在 vagrant 虚拟机内的本地 Craft CMS 网站 任何加载本地配置的主机名或 IP 的尝试都会返回 嗯 我们无法访问此页面 错误 我的主机文件中有一行 192 1
  • 使用流浪文件回答提示?

    是否可以将脚本添加到 Vagrantfile 来回答提示 我正在为 docker 配置一个 ubuntu 盒子 config vm box ubuntu config vm provision shell inline gt sudo ap
  • Vagrant 提供,无法启动 grunt

    我正在尝试让 vagrant 安装 nodejs 正常运行所需的所有内容 然后在节点项目的根文件夹上执行 nohup grunt server 之后 我期望服务器在端口 3030 上侦听 但事实并非如此 如果在配置后我这样做 流浪者 ssh

随机推荐

  • PRIME ng 确认服务的 Angular 单元测试

    首先 我是角度单元测试的新手 我想对以下从数据中删除记录的方法进行单元测试 方法是 Confirm Button for deletion confirm name string id any this confirmationServic
  • 使用 sourcetree 将推送恢复到远程

    我不小心将一个功能分支推送到了远程主控 现在我想将 master 恢复到之前的提交 当我选择 将当前分支恢复到此提交 时 仅恢复本地分支 并且由于远程主分支领先 55 意外推送 我无法将刚刚恢复的本地主分支推送到远程 当在 SO 和 Goo
  • 将 data.frame 转换为 ff

    我想将 data frame 转换为 ff 对象 并使用 as ffdf 进行描述here https stackoverflow com questions 15787221 how can i apply ffdf to non ato
  • 如何将绘图线颜色从蓝色更改为黑色

    当我生成一组数据并尝试在 python 中为绘图线着色时 我陷入了困境 例如 我想在这里将线条颜色从蓝色更改为黑色 这就是我所拥有的 返回的是我从 pandas 获得的数据集 ax plt gca ax set axis bgcolor c
  • TCP打孔(NAT穿越)库什么的?

    我想用 C 进行 TCP 打洞 NAT 穿越 如果需要 可以使用集合服务器来完成 我发现http sharpstunt codeplex com http sharpstunt codeplex com 但无法让它发挥作用 理想情况下 我需
  • iOS 景观左、右、错

    TL DR iOS 文档不同意Info plist关于哪个方向 横向左与右 的主页按钮位于哪一侧 我错过了什么吗 例如 代码的方向有区别thinks它所在的位置以及设备的方向knows它在 请参阅下面标记为 的倒数第二个要点 该文档用于UI
  • SELECT 语句中的列别名不适用于 SQuirrel SQL + Firebird

    我尝试使用 SQuirrel SQL 3 4 Firebird 1 5 Driver JDBC Jaybird 2 2 0 1 JVM 1 7 0 03 在 SELECT 语句中添加列别名 但不起作用 别名列与列的原始名称一起出现 在另一个
  • Collectors.toSet() 和 HashSet

    采取以下示例代码行 Set
  • Spring AMQP Java 客户端中的队列大小

    我使用 Spring amqp 1 1 版本作为我的 java 客户端 我有一个大约有 2000 条消息的队列 我想要一个服务来检查这个队列大小 如果它是空的 它会发出一条消息说 所有项目已处理 我不知道如何获取当前队列大小 请帮忙 我用谷
  • 以编程方式(无需 XML)为 Android 视图设置属性(边距、重力等)

    我需要在 java 活动类中创建一个 GUI 布局 视图 我知道使用 xml 布局文件更加灵活且更容易 但我现在不想使用它 我找不到任何 setGravity 但我不知道如何使用 Gravity 对象 或 View 对象的任何 setset
  • C11内存模型——两个线程执行atomic_fetch_add,然后执行atomic_load——可能输出什么?

    考虑以下测试程序 该程序在完全实现 C2011 原子和线程的实现上编译和运行 include
  • $this->db->insert_id();每次在 codeigniter 中返回 0 [重复]

    这个问题在这里已经有答案了 我正在使用 codeigniter 并一次插入一条记录 但问题是 this gt db gt insert id 每次都返回 0 但是记录已成功创建 我无法弄清楚 这是常见情况还是我犯了一些愚蠢的错误 我使用 e
  • C++ Visual Studio“非标准语法;使用‘&’创建指向成员的指针”[关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我多次遇到此错误 错误 C3867 非标准语法 使用 创建指向成员的指针 我知道这个问题已被问过很多次 但我不明白为什么会出现问题
  • 如何卸载隐藏/不活动的 jquery ui 选项卡?

    我在我的 asp net mvc Web 应用程序中使用 Jquery UI 选项卡 我总共有 6 个选项卡 每个选项卡都包含一个用户控件 我使用 ajax 将内容动态加载到每个选项卡中 如下所示 div align center ul l
  • 什么是“一流”对象?

    在给定的编程语言中 什么时候对象或其他东西被称为 一流 为什么 它们与非它们的语言有何不同 当人们说 一切都是对象 就像在 Python 中 时 他们真的意味着 一切都是一流的 吗 简而言之 这意味着该对象的使用没有任何限制 它是一样的 任
  • zsh 更改提示输入颜色

    我想更改 zsh 中输入文本的颜色 我为每个命令键入的文本 示例 在user host gt ls 我想要ls 为黄色以从标准输出中脱颖而出 我知道我可以完成这个bash using export PS1 BIGreen u h w IYe
  • 以编程方式删除 AppWidget

    我最难弄清楚如何以编程方式删除主屏幕 AppWidget 即无需用户实际将其拖入垃圾箱 举个例子 考虑一个可以有多个帐户的应用程序 每个帐户有任意数量的小部件 一旦删除帐户 小部件也应该被删除 我尝试过遵循一个不起眼的例子http www
  • 自动对焦仅适用于页面刷新

    我有一个弹出窗口中的表单 我设置了自动对焦属性autofocus autofocus 但当表单加载时它不会聚焦 但是如果刷新页面它会聚焦 该表格被插入到div 表格样本 First Name
  • 从 AsyncTaskLoader 更新进度条?

    使用 AsyncTaskLoader 时 如何更新显示更新状态的进度条 通常 您会等待回调完成后删除 但是如何进行运行更新呢 您会让主线程 ui 在设置数据时轮询数据吗 编辑 我正在谈论异步任务加载器 看loader部分 这是课程链接 ht
  • 如何使用 vagrant 定义网络设置

    我在 vagrant 中运行 Ubuntu 这是 Vagrantfile Vagrantfile API syntax version Don t touch unless you know what you re doing VAGRAN