开发板,PC,虚拟机三者互通

当前情况:
在韦东山老师淘宝店购买的JZ2440开发板,个人笔记本电脑,在电脑上安装虚拟机VMware9.10(使用的是韦老师教程里面配置好的Ubantu)
设置情况:
通过查阅资料以及视频教程,有两种情况可以互相联通
1.开发板通过网线连接到路由器或交换机,电脑通过网线连接到路由器或交换机或者无线连接路由器(这是最简单高效的连接方式,建议使用这种方法)
开发板,PC,虚拟机三者互通_第1张图片
2.直接用交叉网线把开发板和电脑连起来,使用过的人就知道这种方式很繁,很不利于开发。因为条件的限制,大多数学校使用的试验箱就是这种连接方式,别人用过,很不方便。
我在学校使用的是校园网,所以PC使用网口连接每个宿舍的路由器拨号上网,于是我选择的第一种方法,开发板使用网线也接到路由器上,由路由器自动给PC分配IP地址
开发板,PC,虚拟机三者互通_第2张图片
开发板,PC,虚拟机三者互通_第3张图片
第2点中的桥接目的是为了让Linux也和PC上网
第3点特别重要:很多同学的Linux不能上网或者无法ping通就是因为这里,一定要选对网卡。千万别选自动,因为它还不够智能。(猜测安装的VMware版本太低)
如果你的物理机PC在用网线进行上网,那这里你就选择有线网卡,这样虚拟机和物理机就都用这个网卡上网,
只要你外面可以上网,里面也就可以了。如果你用的无线网络上网,就选择列表中的无线网卡,理由同上。
当你切换网络连接方式后,记得来改这里的网卡设置。
网卡的选择一般只选一个,多网卡、多重网络的同学可以尝试一下选择多个网卡,这适合那些爱折腾的同学。
开发板,PC,虚拟机三者互通_第4张图片
查看PC网卡对应第3步。
PS:介绍下网卡
开发板,PC,虚拟机三者互通_第5张图片

开发板,PC,虚拟机三者互通_第6张图片
第4点就是要选择桥接。进行嵌入式开发你就这么做就对了,这样你的虚拟机里就会跟你的物理机处在一个局域网内,
你可以随心所欲的进行开发了
另外无论PC是无线连接还是有线连接都要把获取IP地址设置成自动获取
开发板,PC,虚拟机三者互通_第7张图片

2.物理机、开发板、虚拟机无法互相ping通?
在局域网内,连接到路由器的设备都可以互相ping通。所以你最好是有一个无线路由器(带LAN口的那种,既可以连接有线,也可以连接无线),
让你的各个设备连接在同一个网络中
路由器通常地址为192.168.1.XXX
那么你的这些设备就要跟路由器的地址在同一个网段。
比如:
开发板:192.168.1.100
Windows:192.168.1.101
Linux: 192.168.1.102

实际上我的地址是这样的:
Windows:10.18.65.113
然后再通过secureCRT给开发板配置IP地址
开发板:10.18.65.17
然后在VMware打开Linux,配置IP地址
Linux:10.18.65.18
一定要把三者的网段设置成一样,这样才能通信

IP分配之后,看看能否都可以ping通路由器,如果不通,一定是线路问题,检查检查。
我见过一些同学,因为学校运营商的限制,学生只能用指定的客户端进行拨号上网,买的路由器无法拨号上网。
这就困扰了很多学生,三个设备始终无法互通。这里告诉你,其实有办法。
运营商的网线插到路由器的LAN口(不是WLAN口),开发板也通过网线连接到路由器的LAN口。
这样,电脑可以直接拨号上网的同时,三个设备就在同一个网络内了。
给三者分配IP之后互相ping一下,看能否互通。如果不能,就看看下面的原因了。

首先关掉虚拟机下Linux系统的防火墙(关闭方法因系统而异,最好百度一下)
再去关掉windows下面的防火墙(这个简单,但是有些精简版的系统,连关闭防火墙的功能也删掉了,
这样你也只好自己摸索如何关掉防火墙了)
进入Linux系统,设置好IP,保证在一个网段内。一般Linux和windows就可以ping通了。
如果Linux能ping通windows,而windows ping不通Linux,说明Linux防火墙没关或者Linux不会回复ping包。
若windows能ping通Linux,而Linux不能ping通windows,那就好好检查一下windows的防火墙吧。

http://www.100ask.org/bbs/forum.php?mod=viewthread&tid=11196

在之后遇到一些小问题:发现PC与虚拟机Linux可以互相ping通,开发板可以ping通PC和虚拟机Linux,但是PC和虚拟机Linux不可以ping通开发板,因为开发板运行与Uboot时,不回应ping数据,所以这时它只能ping通别人,不能被ping通

你可能感兴趣的:(嵌入式学习)