原文地址

Vagrantfile 配置文件中私有网络的标识符:private_network,例如:

config.vm.network "private_network", type: "dhcp"

Vagrant 私有网络允许你通过某些无法从全球互联网公开访问的地址访问你的虚拟机。通常,这意味着你的机器在私有地址空间中分配了地址。

同一个专用网络中的多台机器(通常也只能使用同一个 provider 的支持)可以在专用网络上相互通信。

客户操作系统支持。私有网络通常需要配置虚拟机上的网络适配器。此过程因操作系统而异。Vagrant 提供有关如何在各种客户操作系统上配置网络的知识,但如果用的是特别旧或新的操作系统,则私有网络可能无法正确配置。

1. DHCP

使用私有网络的最简单的方式,是允许通过 DHCP 自动分配 IP。

Vagrant.configure("2") do |config|
config.vm.network "private_network", type: "dhcp"
end

这会从保留的地址空间中自动分配 IP 地址。通过 vagrant ssh 登录到机器后,使用合适的命令行工具(ifconfig 等)可以查看分配到的 IP 地址。

2. 静态 IP

可以为机器指定静态 IP,这样就可以通过已知的静态 IP 访问 Vagrant 机器。示例:

Vagrant.configure("2") do |config|
config.vm.network "private_network", ip: "192.168.50.4"
end

用户需要确保静态 IP 不会与同一网络上的其他机器发生冲突。

尽管可以选择任何 IP,但你应该使用来自保留的私有地址空间的 IP。这些 IP 永远不会被公开路由,并且大多数路由器会阻止到这些 IP 的来自外部世界的流量。

对于某些操作系统,可以使用静态 IP 地址的其他配置选项,例如设置默认网关或 MTU。

警告:不要选择与系统上任何其他 IP 空间重叠的 IP。这可能导致网络无法访问。

3. IPv6

可以分配 IPv6 的静态 IP 地址。不支持用于 IPv6 的 DHCP。要使用 IPv6,只需要将 IPv6 地址指定为 IP 地址即可:

Vagrant.configure("2") do |config|
config.vm.network "private_network", ip: "fde4:8dba:82e1::c4"
end

这会将该 IP 分配给机器。整个 /64 子网将被保留。请确保使用经批准用于 IPv6 的保留地址。

改变 netmask 选项可以修改前缀长度(默认是 64):

Vagrant.configure("2") do |config|
config.vm.network "private_network",
ip: "fde4:8dba:82e1::c4",
netmask: "96"
end

Vagrant 从 1.7.5 版开始支持 IPv6,部分 provider 不支持 IPv6。

4. 关闭自动配置

如果需要手动配置网络接口,可以通过 auto_confit 选项关闭 Vagrant 的自动配置特性:

Vagrant.configure("2") do |config|
config.vm.network "private_network", ip: "192.168.50.4",
auto_config: false
end

如果在设置 auto_config 之前已经启动了 Vagrant,那么它最初放置的文件将保留在那里。这种情况下,必须手动删除这些文件或销毁并重新创建机器。

由 Vagrant 创建的文件取决于操作系统。例如,对于许多 Linux 发行版,是 /etc/network/interfaces。你需要查看为你的发行版配置网络接口的正常位置。

Vagrant 手册之网络 - 私有网络 private network的更多相关文章

  1. 区块链入门(2):搭建以太坊私有链(private network of ethereum),以及挖矿的操作..

    在做一些测试工作的时候, 为了方便控制以及更快的进入真正的测试工作,可能需要搭建一个私有的以太坊网络. 而以太坊节点之间能够互相链接需要满足1)相同的协议版本2)相同的networkid,所以搭建私有 ...

  2. OpenStack 网络服务 Neutron 私有网络构建(十九)

    本章内容基于之前提供者网络构建的基础上进行改动,之前文章参考如下: Openstack 网络服务 Neutron介绍和控制节点部署 (九) Openstack 网络服务 Neutron计算节点部署(十 ...

  3. Vagrant 手册之网络 - 公共网络 public network

    原文地址 Vagrantfile 配置文件中公共网络的标识符:public_network,例如: config.vm.network "public_network" Vagra ...

  4. openstack通过Network Namespace和iptables实现租户私有网络互訪和L3路由功能

    安装架构介绍 本文旨在通过自己搭建类似neutron (openvswitch + gre) 实现SDN 的环境,学习了解其工作原理,模拟核心原理.比方:同一租户自己定义网络 instance 互通, ...

  5. Vagrant 手册之网络 - 端口转发

    原文地址 Vagrantfile 配置文件中端口转发的网络标识符:forwarded_port,例如: config.vm.network "forwarded_port", gu ...

  6. Vagrant 手册之网络 - 概述及基本用法

    原文地址 - 概述 原文地址 - 基本用法 为了访问创建的 Vagrant 环境,Vagrant 为端口转发.连接公共网络.创建私有网络等功能暴露了一些高层网络选项. 高层网络选项用于提供可以跨 pr ...

  7. Virtual Private Cloud 专有网络 软件定义网络的方式 私有网络 大流量视频、直播类业务

    私有网络 VPC_云上网络空间_自定义网络 - 腾讯云 https://cloud.tencent.com/product/vpc 私有网络 VPC 简介 私有网络(Virtual Private C ...

  8. Neutron 理解 (1): Neutron 所实现的虚拟化网络 [How Netruon Virtualizes Network]

    学习 Neutron 系列文章: (1)Neutron 所实现的虚拟化网络 (2)Neutron OpenvSwitch + VLAN 虚拟网络 (3)Neutron OpenvSwitch + GR ...

  9. Android训练课程(Android Training) - 使用Volley传输网络数据(Transmitting Network Data Using Volley)

    使用Volley传输网络数据(Transmitting Network Data Using Volley) Volley 是一个 HTTP 库,它使得在Android应用程序中操作网络更容易,是重要 ...

随机推荐

  1. BAT程序员常用的开发工具,建议收藏!

    今天给大家推荐一批 BAT 公司常用的开发工具,个个好用,建议转发+收藏. 阿里篇 一.Java 线上诊断工具 Arthas Arthas 是阿里巴巴 2018 年 9 月开源的一款 Java 线上诊 ...

  2. 不用找了,300 分钟帮你搞定 Spring Cloud!

    最近几年,微服务架构一跃成为 IT 领域炙手可热的话题,大量一线互联网公司因为庞大的业务体量和业务需求,纷纷投入了微服务架构的建设中,像阿里巴巴.百度.美团等大厂,很早就已经开始了微服务的实践和应用. ...

  3. Segment tree Beats

    Segment tree Beats Segment tree Beats,吉司机线段树,主要是关于如何用线段树实现区间取min/max.我们先看一道例题: HDU5306 Gorgeous Sequ ...

  4. LLVM思想与功能综述

    llvm似乎还有一个奇怪的优化方法:llvm(low level virtual machine)本身就是一种抽象的.虚拟的计算机架构,其特性介于RISC和CISC之间,llvm会先将代码编译为llv ...

  5. ASP.NET MVC @html帮助类

    原文:https://www.cnblogs.com/caofangsheng/p/10462494.html HTML Helpers是用来创建HTML标签进而创建HTML控件的.HTML Help ...

  6. JQ的简单使用(基础)——————JQ

    JQ基础--JQ的简单使用 <!DOCTYPE html> <html> <head> <meta charset="utf-8" /&g ...

  7. C++宽字符串转字符串

    这文章是更改别人代码 #include <string> #include <iostream> #include <stdlib.h> #include < ...

  8. nodejs 文件读写

    文件读取: //例如: fs.readFile 就是用来读取文件的 //1. 使用require方法来加载 fs 核心模块 var fs = require('fs'); /* *2. 读取文件 * ...

  9. 树——binary-tree-postorder-traversal(树的前序遍历)

    问题: Given a binary tree, return the preorder traversal of its nodes' values. For example: Given bina ...

  10. split 分割文件

    1.命令功能 split将文件分割成多个碎片文件. 2.语法格式 split  option  input  prefix split  选项    输入文件名   输出文件名前缀 参数说明 参数 参 ...