开发板ping不通Ubuntu?

前言

我是一名刚入门的Arm-Linux小白,和大多数小白一样,碰到的第一个问题就是网络问题,一般arm开发板ping不通Ubuntu或者其他宿主机的原因一般是网段配置不正确,物理连接的问题极少啊。我在解决这类问题时,碰到多个计算机网络的知识点,比如:什么是桥接模式、NAT模式、仅主机模式?如何配置ip地址到同一网段内?接下来我将依次弄懂这两个问题并解决掉自己碰到的问题!

三种网络模式

桥接模式

桥接模式就是物理机、开发板、ubuntu三者组成一个虚拟交换机下的局域网,这个交换机是物理机虚拟出来的,当一个新的网卡通过网线连接到物理机时,物理机上就会出现一个虚拟网卡,如下图所示
开发板ping不通Ubuntu?_第1张图片
物理机的这个虚拟网卡既可以作为自身的网卡,也可以作为虚拟交换机,当开发板要和ubuntu进行通信时,ubuntu和开发板必须处于同一局域网中,当然物理机也将同处于一个网段内,因为此时我们可以将物理机看成交换机。只要配置Ubuntu、开发板、物理机三者ip地址在同一网段内和配置一样的DNS服务,开发板就可以与Ubuntu进行通信了。

虚拟机桥接到上图网卡Realtek PCle

按下面的顺序依次进入配置页面:
1、打开虚拟机>虚拟机>设置>网络适配器,最后点击确认
开发板ping不通Ubuntu?_第2张图片
2、打开虚拟机>编辑>虚拟网络编辑器>更改配置,然后再点击应用,最后点击确认。
开发板ping不通Ubuntu?_第3张图片
到此网桥模式基本配置完成,接下来的任务就是修改ip地址!

如何配置ip地址在同一网段内呢

判断一个ip地址是否处于同一网段,只需将ip地址和子网掩码做与运算,结果相同则说明处于同一网段,同一网段内的计算机可以相互通信,互不干扰。比如:

开发板网卡信息如下:
在这里插入图片描述网段计算:192.168.1.136 & 255.255.255.0 = 192.168.1.0

Ubuntu网卡信息如下:
在这里插入图片描述
网段计算:192.168.172.88 & 255.255.0 = 192.168.172.0,发现开发板与Ubuntu不在一个网段内,所以不能实现同信。

物理机虚拟网卡(上图以太网)信息如下:
开发板ping不通Ubuntu?_第4张图片网段计算:192.168.172.3 & 255.255.255.0 = 192.168.172.0 ,物理机和Ubuntu处于一个网段,所以可以是实现。

这个时候只需将开发板的ip地址修改一下就可以了,比如这里我将开发板ip地址配置成192.168.172.66,这样三者就在同一网段内了,相互之间就可以实现通信了。
开发板ping不通Ubuntu?_第5张图片Ubuntu上ping一下开发板:
开发板ping不通Ubuntu?_第6张图片通信成功!

开发板上ping一下Ubuntu:
开发板ping不通Ubuntu?_第7张图片
通信成功!

桥接特点

  • 手动为虚拟机配置IP地址、子网掩码、DNS服务
  • 交换机
  • 不可以上外网

到此呢,已经将我遇到的问题解决了,但是呢接下来我还想学习一下NAT模式和仅主机模式,嘻嘻~

NAT模式(地址转换模式)

1、学习NAT原理:NAT原理
2、我参考学习博客,有图有真相:虚拟机配置NAT模式

NAT模式下,即使物理机网卡的ip地址和虚拟机不在同一网段内,虚拟机也照样可以上网,有点类似家里的路由器,NAT和DHCP服务将不同的网络地址进行转换,从而实现虚拟机上网。有点难以理解的就是Vmware8这个虚拟网卡的作用,Vmware8是物理机和虚拟机通信的接口,NAT和DHCP工作在上面,简单地将第三者理解为路由器吧。

NAT特点

  • 可以自动分配I地址,也可以手动设置静态IP
  • 可以上外网

仅主机模式

参考学习:虚拟机配置仅主机模式

为了确保虚拟机安全,设置仅主机模式下虚拟机只能和物理机通信,如果要实现上网,物理机要共享给一个虚拟网卡。仅主机模式共享网卡

特点

  • 不共享网卡情况下,不可上外网,只能与物理机通信。

三种模式的区别

你可能感兴趣的:(ARM)