先声明

本文使用的虚拟机: VMware Workstation 14 Pro

本文使用的Ubuntu : ARM裸机1期加强版配套的Ubuntu16.04

特别注意:如果你使用的虚拟机和Ubuntu不一样,现象可能不一样,请具体情况具体分析。

一、为什么要让虚拟机中的Ubuntu上网?

想在线安装软件,下载git源码包,或者要用浏览器浏览网页

二、虚拟机中的Ubuntu有几种上网方式?

通常有2种,NAT、桥接

三、NAT上网怎么用?

NAT方式----让虚拟机内的系统上网的最快速的方式。如果你仅仅是想让虚拟机内的Ubuntu上网,建议使用这种方式。

NAT上网的前提:PC能上网即可,连路由器都不需要。

NAT上网的设置:VMware需要设置一处:

我们打开网络编辑器可以看到

软件已经将子网IP什么的都设置好了,只要Ubuntu中的网络设置为DHCP就可以正常上网。如果你需要固定ip,也可以,下面有截图。

另:上图192.168.47.0网段是分配给虚拟机中的Ubuntu的。为什么这个网段很怪?为什么不是我们常用的网段192.168.1.0?这是因为在NAT模式下,PC机充当了一个路由器的角色。它既要跟上层的路由器通信,又要跟Ubuntu通信。玩过路由器的同学就知道,路由器的上层网段和下层网段是不允许相同的,而我们常用的路由器的网段是192.168.1.0,所以为了避免冲突,软件自己便分配了一个不常用的网段给下层的设备。但也并不保险,如果你的上层路由器网段恰恰是192.168.47.0,那么需要更改这里的网段。

NAT上网的优点: 设置方便,只要PC能上网,虚拟机内的系统也能上网。

NAT上网的缺点: 由于经过了PC的路由器角色转换,虚拟机内的系统已经是PC的一个子网设备,它可以与PC及PC层的其它机器通信,但是PC层的其它机器却无法跟虚拟机内的系统通信。例如:把开发板接入路由器,虚拟机内的Ubuntu可以ping通开发板的,反过来却无法ping通。拓扑图如下:

四、桥接上网怎么用?

这可以说是功能最强大的方式了,在整个开发过程中,桥接完全能够满足需要,强烈推荐使用。

桥接上网的前提:你得有个路由器,PC机使用有线或者无线连接到能上网的路由器上。

桥接上网的设置:VMware需要设置两处:

设置之后虚拟机内的Ubuntu和PC机上的Windows处于局域网内的平等的位置,如下图:

此时Ubuntu跟Windows一样会获取到路由器分配的IP地址等,到这里,Ubuntu就可以上网了。

如果不想让UbuntuIP地址变来变去,可以进入Ubuntu的网络设置界面将IP固定,步骤如下:

选择手动,添加,填入正确的IP、掩码、网关,保存。这样Ubuntu的IP地址就固定下来了,在Windows下使用远程登录很方便。

桥接上网的优点:将虚拟机内的系统模拟成一台局域网内单独的主机,虚拟机内的系统可以跟整个局域网内的所有设备进行双向通信,如果再将你的开发板接入路由器,那么三者互ping没有任何问题。

桥接上网的缺点:桥接所选的网卡必须是激活的。如果你把网线拔掉或者断掉WIFI,不要说上网了,就连Windows和Ubuntu间的通信都无法进行,更别提使用SSH登录。

五、总结

如果单纯的想让虚拟机内的Ubuntu上网,就使用NAT方式。

如果要让虚拟机内的Ubuntu上网的同时,还要跟开发板进行通信,那么就使用桥接方式。

顺便附上校园网PING问题解决方法的口诀:

1.需要UBUNTU上网时,使用NAT方式;2.要跟开发板互联时,用桥接方式

3.使用我们提供的UBUNTU时,UBUNTU不需要上网

如何让虚拟机的Ubuntu上网?的更多相关文章

  1. ARM+linux学习过程(1)虚拟机下ubuntu上网

    总结:(1)通过bridge方式也可以实现ubuntu上网(只要PC物理网卡能上网),可以实现ping通主机和开发板 (2)要想上网简单上网,可以通过nat方式,在vmware中设置为nat方式,选择 ...

  2. 局域网内主机ssh访问服务器宿主下VMWare 虚拟机(Ubuntu 12.04.1)并且实现虚拟机能上网的那点事

    (1)首先虚拟机已安装ssh服务 1) 自动安装 ssh 服务 apt-get install openssh-server 安装完成后,将自动开启 ssh 服务. 2) 查看 ssh 服务是否已开启 ...

  3. 【转】虚拟机安装Ubuntu的上网设置(有线网络和无线网络)

    虚拟机下ubuntu共享方式上网: 一. 有线网络 在有线网络的条件下,vmware的安装非常简单,上网方式几乎不用怎么设置(默认NAT模式)    如果默认情况下不能上网,则按以下步骤尝试: *** ...

  4. 虚拟机安装Ubuntu的上网设置(有线网络和无线网络)

    (恩,是转的) 虚拟机下ubuntu共享方式上网: 一. 有线网络 在有线网络的条件下,vmware的安装非常简单,上网方式几乎不用怎么设置(默认NAT模式)     如果默认情况下不能上网,则按以下 ...

  5. (转)windows宿主机,ubuntu虚拟机下的上网设置(有线网络和无线网络)

    转自:http://hi.baidu.com/puppywst/item/d9f73734856e2af32684f4e3 虚拟机下ubuntu共享方式上网: 有线网络 在有线网络的条件下,vmwar ...

  6. win10 下使用虚拟机安装ubuntu及其网络配置

    通过虚拟机安装ubuntu 我的机器是64位的win10系统,使用的虚拟机VMware workstation 12 pro 安装的是ubuntu 14.04, 网上教程很多,很详细也有有效 win1 ...

  7. 虚拟机中Ubuntu安装及基本功能设置

    虚拟机下安装ubuntu 虚拟机使用VMware14 PRO,在TOSHIBA EXT/Anon Comm Group\Experimental Environment\VMware下. 系统使用ub ...

  8. Linux(二):VMware虚拟机中Ubuntu安装详细过程

    Linux(二):VMware虚拟机中Ubuntu安装详细过程 目录 1 准备 2 安装 2.1 虚拟机的建立 2.2 虚拟机安装Ubuntu系统 2.3 虚拟机设置 3 完成 1 准备 1.操作系统 ...

  9. SecureCRT连接虚拟机(ubuntu)配置

    使用SecureCRT连接虚拟机(ubuntu)配置记录   这种配置方法,可以非常方便的操作虚拟机里的Linux系统,且让VMware在后台运行,因为有时候我直接在虚拟机里操作会稍微卡顿,或者切换速 ...

随机推荐

  1. python type()函数

    我怎么把一个变量的类型写入文件?a = 3type(a)貌似返回的是type类型,不能打印,也不能用文件的write怎么半,或者怎么转换成srt之类的? type()函数得到的是一个类型而不是字符串, ...

  2. Effective Java P2 Item1 Consider static factory methods instead of constructors

    获得一个类的实例的传统方法是公共的构造方法,还可以提供一个公共的静态工厂方法(一个返回值为该类实例的简单静态方法), 例如Boolean(boolean 的封装类) public static Boo ...

  3. Linux下使用curl进行http请求(转)

    curl在Linux下默认已经安装,Windows需要自行安装. 下载地址:https://curl.haxx.se/download.html Windows离线版本:链接:http://pan.b ...

  4. 内核调试 SystemTap

    http://www.cnblogs.com/wangkangluo1/archive/2012/06/26/2562971.html   相关技术:utrace, probe, ftrace, dt ...

  5. hdoj-1856-More is better【并查集】

    More is better Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 327680/102400 K (Java/Others) To ...

  6. Win7 VNC远程连接Centos桌面

    一,安装Linux桌面: yum -y groupinstall Desktop yum -y groupinstall "X Window System" yum -y grou ...

  7. 谜题 之 C语言

    本篇文章展示了14个C语言的迷题以及答案.代码应该是足够清楚的,并且我也相信有相当的一些样例可能是我们日常工作可能会见得到的.通过这些迷题,希望你能更了解C语言.假设你不看答案.不知道是否有把握回答各 ...

  8. System V IPC相关函数

    System V IPC 将一个已保存的路径名和一个整数标识符转换成一个key_t值,称为IPC键key_t:System V IPC(System V消息队列.System V信号量.System ...

  9. rtsp 播放器

    http://blog.csdn.net/niu_gao/article/details/7753672 /********************************************** ...

  10. linux学习:进程间通信—管道

    1.进程间通信当中一种比較简单的方法是管道操作 /* ========================================================================= ...