嵌入式linux开发环境搭建——VirtualBox虚拟机网络环境解析
嵌入式linux开发环境搭建——VirtualBox虚拟机网络环境解析
本博文转自:Pandoras Box
http://blog.csdn.net/yxc135/article/details/8458939
一、NAT模式
特点:
1、如果主机可以上网,虚拟机可以上网
2、虚拟机之间不能ping通
3、虚拟机可以ping通主机(此时ping虚拟机的网关,即是ping主机)
4、主机不能ping通虚拟机
应用场景:
虚拟机只要求可以上网,无其它特殊要求,满足最一般需求
配置方法:
连接方式 选择 网络地址转换(NAT)
高级-控制芯片 选择 PCnet-FAST III
高级-混杂模式 拒绝
高级-接入网线 √
(虚拟机ip自动获取)
ip样式:
ip 10.0.2.15
网关 10.0.2.2
注意此处的网关在不同虚拟机中可能是同一个值,但是这归属于不同的NAT Engine,因此实际上各个虚拟机用的不是同一个网关
原理:
虚拟机的请求传递给NAT Engine,由它来利用主机进行对外的网络访问,返回的数据包再由NAT Engine给虚拟机。
二、Bridged Adapter模式(桥接模式)
特点:
1、如果主机可以上网,虚拟机可以上网
2、虚拟机之间可以ping通
3、虚拟机可以ping通主机
4、主机可以ping通虚拟机
以上各点基于一个前提:主机可以上网
5、如果主机不可以上网,所有1-4特点均无
应用场景:
虚拟机要求可以上网,且虚拟机完全模拟一台实体机
配置方法:
连接方式 选择 桥接网卡
界面名称 选择 (如果你的笔记本有无线网卡和有线网卡,需要根据现在的上网方式对应选择)
高级-控制芯片 选择 PCnet-FAST III
高级-混杂模式 拒绝
高级-接入网线 √
(虚拟机ip自动获取)
ip样式:
ip 与本机ip在同一网段内
网关 与本机网关相同
原理:
通过主机网卡,架设一条桥,直接连入到网络中。它使得虚拟机能被分配到一个网络中独立的IP,所有网络功能完全和
在网络中的真实机器一样。 (虚拟机是通过主机所在网络中的DHCP服务得到ip地址的,所以按理来说,两者是完全独立的,但事实却是虚拟机是没有独立硬件的,它还是要依靠主机的网卡,因此,主机要断开网络,虚拟机也就没法拿到ip了,所以呵呵~~所有特点全消失咯)
三、Host-only Adapter模式
特点:
1、虚拟机不可以上网
2、虚拟机之间可以ping通
3、虚拟机可以ping通主机(注意虚拟机与主机通信是通过主机的名为VirtualBox Host-Only Network的网卡,因此ip
是该网卡ip 192.168.56.1,而不是你现在正在上网所用的ip)
4、主机可以ping通虚拟机
应用场景:
在主机无法上网的情况下(主机可以上网的情况下可以用host-only,也可以用桥接),需要搭建一个模拟局域网,所有机器可以互访
配置方法:
连接方式 选择 仅主机(Host-Only)适配器
界面名称 选择 VirtualBox Host-Only Ethernet Adapter
高级-控制芯片 选择 PCnet-FAST III
高级-混杂模式 拒绝
高级-接入网线 √
(虚拟机ip自动获取,也可以自己进行配置,网关配置为主机中虚拟网卡的地址【默认为192.168.56.1】,ip配置为与虚拟网卡地址同网段地址)
ip样式:
ip 与本机VirtualBox Host-Only Network的网卡ip在同一网段内(默认192.168.56.*)
网关 本机VirtualBox Host-Only Network的网卡ip(默认192.168.56.1)
原理:
通过VirtualBox Host-Only Network网卡进行通信,虚拟机以此ip作为网关,因此模拟了一个本机与各个虚拟机的局域网,如名称所指,应该是无法上网的(但是有人说可以通过对VirtualBox Host-Only Network网卡进行桥接等操作使虚拟机可以上网,但如此就不如直接采用桥接来的容易了,而且,呵呵,我没试成功,有的人也说不可以,因为主机不提供路由服务,我也不好乱说到底行不行,你自己试吧~~)
四、Internal模式(内网模式)
特点:
1、虚拟机不可以上网
2、虚拟机之间可以ping通
3、虚拟机不能ping通主机
4、主机不能ping通虚拟机
应用场景:
让各台虚拟机处于隔离的局域网内,只让它们相互通信,与外界(包括主机)隔绝
配置方法:
连接方式 选择 内部网络
界面名称 选择 intnet(可以重新命名,所有放在同一局域网内的虚拟机此名称相同)
高级-控制芯片 选择 PCnet-FAST III
高级-混杂模式 拒绝
高级-接入网线 √
(虚拟机ip:对于XP自动获取ip即可,但对于linux,必须手动配置ip和子网掩码,手动配置时需保证各个虚拟机ip在同一网段)
ip样式:
ip 169.254.147.9
子网掩码 255.255.0.0
默认网关 无
原理:
各个虚拟机利用VirtualBox内置的DHCP服务器得到ip,数据包传递不经过主机所在网络,因此安全性高,防止外部抓包~
五、NAT模式+端口映射
将虚拟机某端口映射到主机某端口,可以使主机和外部机器访问虚拟机提供的服务哦~~
命令如下:
(在命令行模式下,先到VirtualBox的安装目录下面,否则找不到命令)
vboxmanage setextradata <VM name> "VBoxInternal/Devices/pcnet/0/LUN#0/Config/<rule name>/Protocol" TCP
vboxmanage setextradata <VM name> "VBoxInternal/Devices/pcnet/0/LUN#0/Config/<rule name>/GuestPort" 80
vboxmanage setextradata <VM name> "VBoxInternal/Devices/pcnet/0/LUN#0/Config/<rule name>/HostPort" 8000
转载于:https://blog.51cto.com/9291927/1783908
嵌入式linux开发环境搭建——VirtualBox虚拟机网络环境解析相关推荐
- VirtualBox虚拟机网络环境解析和搭建-NAT、桥接、Host-Only、Internal、端口映射
本文以VirtualBox为例 如果出现主机无法ping通虚拟机的情况,请首先确认虚拟机防火墙已关闭. 一.NAT模式 特点: 1.如果主机可以上网,虚拟机可以上网 2.虚拟机之间不能ping通 3. ...
- 详解VirtualBox虚拟机网络环境解析和搭建-NAT、桥接、Host-Only、Internal、端口映射
原文链接:http://www.jb51.net/article/98575.htm -------------------------------------------------- 本文以Vir ...
- 嵌入式linux开发中常见的虚拟机和主机的文件共享问题
在嵌入式开发中常会用到linux系统,而有些单位必须使用虚拟机安装linux系统. 在使用vmware安装ubuntu系统后,要创建一个用作虚拟机和主机之间的共享目录. 但是这样做完之后,在ubunt ...
- 我的嵌入式linux开发步骤
我的嵌入式linux开发步骤: 1. 安装虚拟机,见<安装及使用心得>,选择桥接模式 2. 虚拟机串口设置,见<VMare里linux使用MINCOM通信&g ...
- 嵌入式linux开发环境搭建(VMware16.0.0+Ubuntu16.04.3_X64)
目录 一.安装VMware 1.VMware介绍 2.安装VMware16.0.0 二.安装ubuntu16.04.3 LTS 1.Ubuntu介绍 2.下载安装包iso 3.安装 四.新安装Ubun ...
- 构建嵌入式系统软件开发环境-VMware的安装及搭建嵌入式Linux开发环境
嵌入式系统操作系统 目前流行的嵌入式操作系统主要有VxWorks.WindowsCE.Linux等,由于Linux的源码开放性.内核可裁剪性.在图像处理.文件管理及多任务支持等诸多方面的特点,使得它成 ...
- 使用qemu搭建arm嵌入式linux开发环境
qemu搭建arm虚拟嵌入式linux开发环境 1.前言 1.安装qemu与arm交叉编译工具 2.Linux内核与设备树编译 3.busybox根文件系统制作 4.使用u-boot加载Linux内核 ...
- ubuntu20.04.1 64位搭建嵌入式linux开发环境
目录 背景 开发环境的搭建 1.交叉编译工具的安装 2.开发工具和依赖库的安装 2.1. 必需部分 2.2.可选部分 ubuntu20.04.1 64位配置和编译Linux3.0内核 背景 市面上的嵌 ...
- 嵌入式Linux开发环境搭建-曹国辉-专题视频课程
嵌入式Linux开发环境搭建-1199人已学习 课程介绍 系统讲解嵌入式Linux开发环境搭建方法,包括虚拟机安装,ubuntu安装,交叉编译器安装及配置,嵌入式QT开发环境的构建,u ...
最新文章
- Unity3D:中小型团队游戏研发的突围之道
- zookeeper 密码_「附源码」Dubbo+Zookeeper 的 RPC 远程调用框架
- linux 下添加,修改,删除路由
- 名为 cursor_jinserted 的游标不存在_质量工程师必须了解的测量常识,你不知道怎么行...
- [css] clear属性只对块级元素有效么?为何无法应用于行内元素?
- node中使用短信验证功能(阿里云为例)
- LeetCode: Word Ladder
- 【批量查询IP归属】
- 保存为UTF8的1byte文字,2byte文字,3byte文字,4byte文字大全
- PS给人物添加阴影和高光
- 红冲发票,负数发票,作废发票
- VBA金额转换中文大写(原创新解版)
- 陕西车牌顺口溜~~~~~~~~~~~
- Spring Cloud Netflix之为上一个damo添加Ribbon(负载均衡优化)
- 原创 | 使用JUnit、AssertJ和Mockito编写单元测试和实践TDD (六)测试哪些内容:Right-BICEP
- redis主从、哨兵、集群
- 【android studio】测试不同buf下flash的读写性能2
- 【Win10】电脑麦克风录音:设备调测
- 为什么华为 200 万招聘 AI 博士,马斯克却推出脑机接口对抗 AI?
- 微信第三方授权登录之oauth开发
热门文章
- C#访问Access和Win7 64位下可能遇到的 未在本地计算机上注册“Microsoft.Jet.OLEDB.4.0” 提供程序 问题
- 记一次内核模块查看 - 初步通过文件厂商判断有无可疑内核模块
- MySql外键学习总结
- Python类的部分
- Jenkins+Gradle+Git+Pyger+二维码搭建Android自动打包平台
- SQL Server Window Function 窗体函数读书笔记二 - A Detailed Look at Window Functions
- 15-奇怪的Js文件引用问题
- 验算双中心重叠积分程序
- 用神经网络的分类行为理解力的相互作用
- 存在于实数域的微观粒子6-放射性衰变与分类准确率