前段时间有人遇到一些网络连接问题,让我帮忙处理,他想让ARM开发板连接外网,可以连接网络数据库,同时保证自己的电脑可以上网。

本来说直接可以连接一个路由器,分配一个内网IP给ARM就可以了,但是当时那个朋友是在我们学校做的。我们学校的情况是,基本所有的内网IP都分配好了(可能没有多余的IP地址,找起来比较麻烦)。其次所有上网都需要用到蝴蝶,没有蝴蝶上不了外网。但是路由器不能登陆蝴蝶,也就是说路由器下连接的所有终端设备(pc机、ARM)都需要登录一个对应的蝴蝶才能上外网。

这样情况就复杂了,后来我查了一些资料,找到了解决办法。想到以后可能会遇到同样的情况,就写在博客里。

Windows和ARM开发板连接

首先要配置Windows的网络。

1.Windows网络配置


a.第一步,设置以太网1的属性为自动获取ip地址。

这里以太网1的意思是因为我有虚拟机,这些虚拟网卡所对应的是以太网2、以太网3。这些网络我们不需要用到,所以只用以太网1,其他windows系统版本应该叫做本地连接

右键属性,找到 “Internet协议版本4 (TCP/IPV4)” 。其他windows版本名称可能有所不同。如图

windows创建arm架构的linux虚拟机_虚拟机

这是最基础的网络配置了,如果实在不知道怎么弄的,百度一下怎么改你正在使用的windows系统版本的IP地址。

“Internet协议版本4 (TCP/IPV4)”里面可以设置自己的IP,这里你不要设置哪些IP信息来固定了,直接选择自动获取。(就算你这里改成了固定IP一会有个操作也会改变你这里的IP设置的,这个操作只是为了保证不会出错)


b.第二步,设置无线网络(WLAN,如果不知道是什么,说wifi就懂了吧,就是wifi的适配器)

右键属性->共享->"允许其他网络用户通过此计算机的internet连接来连接",选择以太网1(本地连接)。

windows创建arm架构的linux虚拟机_windows_02

设置了这个,就可以将WIFI连接的网络,共享给本地连接了。


c.第三步查看自己以太网1(本地连接)的IP地址,这时候你可以通过cmd命令提示符,ipconfig查看自己的本地连接是不是变成了192.168.137.1

windows创建arm架构的linux虚拟机_网络_03

到此Windows的配置就可以了。



2.ARM的配置

将ARM与Pc机用网线连接,并且关闭windows防火墙(一定要关,否则ARM会ping不通pc机)。

这里要将ARM的IP地址设置成与192.168.137.1相同网段上(不能是192.168.137.1),这样才能ping通。

这里我将我的ARM IP地址设置成192.168.137.2。

同时要设置路由器,路由器就是PC机的以太网1(本地连接)的IP。

windows创建arm架构的linux虚拟机_linux_04

然后就可以直接在ARM里ping 我们的IP 192.168.137.1,如果成功了再ping www.baidu.com

如果都可以你就可以通过ARM连接外网了。



以上是ARM与PC机相连的情况,如果你的电脑里还有虚拟机的话,这里也可以将我们的Linux系统也连接到我们的网络中来。

我这里使用的是VMware11.7版本的虚拟机。

这里的设置跟上面ARM差不多,只是操作不太一样。


3.虚拟机中linux系统接入

首先连接网络,虚拟机连接网络的方式有很多种,我们使用桥接的方式,并且我们要设置桥接的网卡有且只有以太网1的网卡

在VMware上面的编辑->虚拟网络编辑器

windows创建arm架构的linux虚拟机_虚拟机_05

选择第一个桥接模式,一开始应该是自动的,在这里我们选择桥接到我们以太网1(本地连接)对应的网卡配置器上。如果不知道那个是我们以太网1(本地连接)的网卡配置器,有两个方法解决,一个是一个一个试,另一个是在网上找一下你电脑的网卡型号。设置完后确定。

打开你的linux虚拟机的终端

与刚刚配置ARM的命令一样,不过我们这里设置的ip地址要和以太网1(本地连接)、ARM的IP地址区别开来。

ifconfig eth0 192.168.137.3 netmask 255.255.255.0

route add default gw 192.168.137.1

设置完了就可以直接ping外网了。

到这里所有网络都被连接到了以太网1的适配器上,并且通过网络共享上网。


注:

如果想要配置自己的IP的话,也可以在设置wifi共享以太网1(本地连接)之后,再改变以太网1(本地连接)的IP地址,这样也可以,但是不论以太网1(本地连接)的地址怎么改变,ARM和linux虚拟机都要配制成与以太网1(本地连接)相同的网段上。