最近,因为想调试Uboot,连接开发板与虚拟机ubuntu20时,在打通网络通信这一块快整崩溃了?

幸亏,结果还好。也算从坑里爬出来了。这里梳理下。

首先,对于我们配置网络的目的,提出几个问题。

【1】、如何配置可以使虚拟机与物理电脑主机相连同?

【2】、如何配置可以使虚拟机上外网(互联网)?

【3】、如何配置可以使虚拟机与开发板相互连同?

【4】、如何配置可以使物理电脑主机、虚拟机、开发板的IP固定,是静态IP?方便我们调试,不用IP地址换过来换过去?

本文章,为了简化问题,不讨论外联物理路由器(交换机)的情况。电脑、开发板和物理路由器(交换机)又是另外一种拓扑。

然后,基于上面问题,我们需要理清,物理电脑主机、虚拟机、开发板三者之间的网络拓扑结构。

本人也看过其他网上文章,要不是讲的无目的,不知道用来干什么,只将概念。要不就是说不用理清拓扑,只会让你按图索骥,授予鱼,不授予渔,不能变通。

我们这里从总体到细节上,搞清。先下面几个概念:

 

 

 

上图中,1是Vmware虚拟机软件自带的路由器(交换机或者是一根网线)比路由器功能更强大,我这里称它为虚拟路由器。

上图中,2是ubuntu虚拟机的网卡。

 

虚拟路由器是你安装Vmware软件时,默认自带的,跟你安不安装Ubuntu虚拟机无关。且如上图默认情况下,自带3个网口(远大于网口的作用)。为什么默认带了3个网口?

因为Vmware有3种类型,所以他每个类型举了一个例子。实际上,你可以再增加网口。如下图添加网络:

 

 

 

但一般没人添加,因为1个类型1个网口已经足够我们使用了。

ubuntu虚拟机的网卡也是可以添加的,虚拟机可以任意编辑硬件配置的是他最大的优点。

 

上图中的,步骤就是添加了一个虚拟机的网卡。

好了,知道了虚拟路由器和虚拟机网卡都可以添加修改。有助于对网络拓扑的理解。

虚拟路由器的三种网口配置时,相互之间约束的规则。

最常见的有3条:

1、虚拟路由器的所有网口中只有一个可以配置成NAT模式。

2、如果有一个虚拟路由器网口配置为桥接模式,且为自动桥接。则其他虚拟路由器不能再配置为桥接模式,因为自动桥接占用了所有的可用的物理网络适配器(桥接至哪里的选项没了)

3、虚拟机网卡可以是多个,虚拟路由器网口可以是多个。所以两者直接的连接关系,可以多种多样。只要连接线路有一个通了就通了。所以网络拓扑不是简单的三种虚拟路由器网口模式的三选一。

三种虚拟路由器网口模式,桥接模式、NAT模式、 Host-only模式。

引用网上的介绍,这种文章网上很多。

这里简单介绍他们的用处

 

 

 

 桥接模式,他的最大功能是,ubuntu虚拟机可以直接连接开发板。我们可以让ubuntu虚拟机具备一个物理网口,有线无线的均可。例如,桥接至有线网口,那么我们插一根网线到电脑,连接到外部的物理路由器或开发板,相当于插在了ubuntu虚拟机上。

这样就可以上网了,但IP不可控,是由外部的物理路由器分配的。

 

 

 

 NAT模式,该模式最大的功用是,在没有外部物理路由器的情况下,让虚拟机可以上网。

 

 Host-only模式,该模式最大的功用是,只能让物理主机和ubuntu虚拟机之间互联互通。

由上面可见,

【1】、如何配置可以使虚拟机与物理电脑主机相连同?

配置虚拟机网卡。三种模式都可以。

【2】、如何配置可以使虚拟机上外网(互联网)?

配置虚拟机网卡为桥接(连接外部路由),NAT模式(无外部路由)即可上网。

【3】、如何配置可以使虚拟机与开发板相互连同?

只能使用桥接模式,桥接至开发板。

【4】、如何配置可以使物理电脑主机、虚拟机、开发板的IP固定,是静态IP?方便我们调试,不用IP地址换过来换过去?

这个后续完善。

 

posted on 2021-01-01 20:22  长缨在手_521  阅读(256)  评论(0编辑  收藏  举报