前言
本文将介绍一种最为简单有效的通信方法,可以实现windows,ubuntu和ARM开发板之间的自由通信,同时可以保证三者都可以连接互联网
原理图如下,为了实现三者的数据通信,同时重点是为了实现ARM开发板可以连接互联网,主要采用了以下方法:1.windows端实现wifi共享,使得有线网卡可以上网;2.虚拟机桥接,将ubuntu系统和windows有线网卡,ARM开发板处于一个子网内,实现了三者之间的数据通信,由于wifi共享,又实现了上网功能
1.windows端的设置
1.启动wifi共享
查看windows系统下的网络适配器,如下图所示,包括一个无线网卡,他是和路由器wifi或者和手机热点连接的,第一个是虚拟机NAT生成的虚拟网卡
打开wlan的属性,如下所示,点击共享,他的主要作用就是可以将wifi网络通过有线网络接口共享出去,而ARM开发板是连接这个有线接口的,所以ARM可以使用这个共享连接互联网
在共享里面选择以太网,也就是电脑上的有线网卡
点击确定后会弹出下面对话框,表示将有线网卡的ip设置成了192.168.137.1
重新打开有线网卡,可以发现他的Ip确实变成了192.168.137.1
使用ipconfig在命令行窗口查看所有的Ip信息,如下所示,重点是有线网卡,此时他已经和wifi无线网卡建立了共享关系,可以通过连接这个有线网卡进行上网。
2.关闭防火墙
打开控制面板,按照下图中的步骤关闭所有网络防火墙,不然会出错
2.VMware虚拟机的设置
1.网络桥接模式
首先点击编辑下的虚拟网络编辑器
在下面的界面中添加网络,采用的模式是桥接模式,桥接的网卡是之前windows下的有线网卡。
桥接的意思就是虚拟机ubuntu可以和有线网卡进行数据交互,因为有线网卡和wifi是共享的,自然也可以进行上网。
第二个NAT模式可有可无。
3.虚拟机中ubuntu设置
如下所示,会有两个网卡,一个是NAT生成的,另一个就是之前桥接模式生成的网卡
查看这个桥接网卡ip,发现他的前三组子网和windows的有线网卡192.168.137.1是一致的,表明他们之间建立起了网络通信关系,可以进行数据通信,又由于有线网卡和wifi共享,所以可以上网
使用ifconfig查看所有的网卡Ip
在这里插入图片描述
和windows的有线网卡数据通信
连接互联网也没问题
4.ARM开发板的设置
ARM开发板的网卡通过网线和windows的有线网卡进行连接,在虚拟的可移动设备中可以选择连接windows主机,也可以连接ubuntu,因为ubutun和windows的有线网卡已经建立桥接关系了,可以互相数据通信。
设置ARM开发板的ip和网关,要将ARM开发板的Ip子网设置成和windows和Ubuntu同样的子网,之前windows采用的ip是192.168.173.1,ubuntu采用的是192.168.137.169,所以这里ARM开发板设置成了192.168.137.3,此外还需要把网关设置成192.168.137.1,如下所示
ifconfig eth0 192.168.137.3 #设置ip
route add default gw 192.168.137.1 #设置网关
为了实现上网功能,需要对以下内容进行添加,首先 vi /etc/resolv.conf
打开下面文件,添加进以下内容,但是这里有个问题,每次板子重启里面的内容都会清空,必须重新手动添加
nameserver 192.168.137.1
数据通信测试
ARM和windows通信测试
ARM和ubuntu通信测试
ARM挂载Ubuntu的网络文件系统,连接的是ubuntu的ip
上网测试,如下所示,ARM开发板实现了和baidu.com的网络通信