1. 目标

实现PC,Linux虚拟机,开发板网络设置三者网络互联。

2. 理论知识

有两种方式,可以实现。

2.1. 情况1:PC机有无线网卡,有线网卡

  • Windows的有线网卡IP设为192.168.10.3
  • 那么Linux虚拟机IP可以设置为192.168.10.4
  • 开发板IP设为192.168.10.5
  • 开发板的网口通过网线接到PC的有线网口
    此种情况没有使用无线网卡。而且需要注意,IP地址不可以设置和无线网卡IP在同一网段上。

开发板如何与物联网连接 开发板网络设置_无线网卡

如果你的开发环境是笔记本,无线网卡,此时只需要将开发板的网线连接到笔记本的网口上即可。笔记本PC机,Linux虚拟机,开发板的联网通过笔记本内的有线网卡完成。
当然,笔记本的无线网卡的无线上网功能还是正常的。

2.2 情况2:PC机有无线网卡,通过路由器上网

-无线网卡自动分配IP为192.168.1.7
- Linux虚拟机IP设置为192.168.1.8
- 开发板IP设置为192.168.1.11
- 开发板的网口通过网线接到无线路由器上

开发板如何与物联网连接 开发板网络设置_IP_02

3. 构筑环境

我的环境是Win7 64-bit笔记本,Vmware11, Linux虚拟机使用开发板资料自带的Ubuntu9.10,开发板JZ-2440。 考虑到笔记本的开发环境,选择情况1的方式。(情况2是需要路由器或HUB的,没有那么长的网线~)

3.1 PC机网络设置

设备管理器中查看有线网卡信息

开发板如何与物联网连接 开发板网络设置_开发板_03

命令行ipconfig检查PC的网络信息,我的笔记本只有一个网卡,IP地址是之前固定设置的IP地址192.168.10.100,无线网卡的IP地址192.168.31.168。特别注意有线网卡与无线网卡的IP地址不能在同一个网段上。

开发板如何与物联网连接 开发板网络设置_linux_04


设置固定IP地址为192.168.10.100,注意选择有线网卡进行设置

开发板如何与物联网连接 开发板网络设置_无线网卡_05

开发板如何与物联网连接 开发板网络设置_开发板_06

PC机的网络设置就完成了。

3.2. Linux虚拟机网络设置

VMware网络设置

开发板如何与物联网连接 开发板网络设置_IP_07

选择虚拟机与PC的链接方式桥接,桥接到有线网卡上

开发板如何与物联网连接 开发板网络设置_linux_08

虚拟机使用桥接方式

开发板如何与物联网连接 开发板网络设置_开发板如何与物联网连接_09

设置网络连接,手动,自动都可以

开发板如何与物联网连接 开发板网络设置_IP_10

ifconfig查看虚拟机的网络地址

开发板如何与物联网连接 开发板网络设置_开发板_11

发现IP地址在31网段上,恰恰与无线网卡在同一网段上,修改IP地址

sudo ifconfig eth4 192.168.10.175

修改后:

开发板如何与物联网连接 开发板网络设置_开发板_12

测试一下,PC机命令行下PING一下虚拟机

ping 192.168.10.175

成功。PC机与虚拟机可以互联了。

开发板如何与物联网连接 开发板网络设置_无线网卡_13

使用SecureCRT远程登录虚拟机

打开SecureCRT,建立新的连接,输入主机名和用户名,

开发板如何与物联网连接 开发板网络设置_IP_14

连接后,提示输入用户名密码,选上保存密码

开发板如何与物联网连接 开发板网络设置_开发板_15

连接成功,执行ls

开发板如何与物联网连接 开发板网络设置_无线网卡_16

与虚拟机终端上执行ls命令结果一致。

开发板如何与物联网连接 开发板网络设置_开发板如何与物联网连接_17

3.3. 开发板网络设置

前提是,开发板上已经有Linux内核。

使用SecureCRT建立与开发板的串口连接。重启开发板后,串口上打印内核启动信息。

开发板如何与物联网连接 开发板网络设置_开发板_18

回车,打开控制台终端

开发板如何与物联网连接 开发板网络设置_开发板如何与物联网连接_19

使用网线将开发板和PC机连接,直接插到PC机的网口上即可。

ifconfig查看开发板网络信息,发现什么也没有。说明开发板还没有配置网络,其实仔细观察发现,开发板虽然插着网线,但是网口的等没有亮。

开发板如何与物联网连接 开发板网络设置_无线网卡_20

启动eth0

# ifconfig eth0 up

完成后开发板的网口灯就亮了。

设置IP地址

# ifconfig eth0 192.168.10.11
# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:60:6E:33:44:55  
          inet addr:192.168.10.11  Bcast:192.168.10.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:56 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:7556 (7.3 KiB)  TX bytes:0 (0.0 B)
          Interrupt:51 Base address:0xa000 

#

PING一下虚拟机

# ping 192.168.10.175
PING 192.168.10.175 (192.168.10.175): 56 data bytes
64 bytes from 192.168.10.175: seq=0 ttl=64 time=1.154 ms
64 bytes from 192.168.10.175: seq=1 ttl=64 time=1.457 ms
64 bytes from 192.168.10.175: seq=2 ttl=64 time=1.434 ms

过程中问题

过程中,曾经出现开发板可以PING通虚拟机,PC不能,或者PC可以PING通虚拟机,但开发板不通。
原因是开发板PING通虚拟机时,IP设置不正确,必须保证三者在同一网段上,且VMware桥接到有线网卡。具体可以参考下面文章