linux开发板网口连接笔记本电脑,电脑WiFi联网时,开发板uboot/linux,ubuntu虚拟机机,window主机三方网络互联,系统为Ubuntu16.04LTS,虚拟机为VM15Pro,电脑系统为WIN10,开发板为正点原子阿尔法IMX6ULL。
网络问题
编译uboot后,烧写到SD卡中,设置开发板由SD卡启动后,开发板ENET2网口连接至笔记本电脑网口,开发板上电启动uboot。
设置uboot环境变量
| 环境变量 | 描述 |
|---|---|
| ipaddr | 开发板IP地址 |
| ethaddr | 开发板MAC地址 |
| gatewayip | 网关地址 |
| netmask | 子网掩码 |
| serverip | 服务器ip地址,即Ubuntu主机ip地址 |
设置ip与Ubuntu主机同一网段192.168.146.x,mac地址随意但不能与同网段内设备mac地址冲突,网关为192.168.146.1,子网掩码为255.255.255.0,服务器ip则与Ubuntu主机ip一致。
保存后开始在开发板上ping Ubuntu主机ip,无法ping通,显示xxx Destination Host Unreachable。
解决过程
查找资料与百度后发现虚拟机网络设置问题,开始时为了方便Ubuntu联网直接设置的NAT模式,与Windows主机共享ip,为了连接到开发板需要设置Ubuntu主机为桥接模式且桥接到以太网卡,填完这个坑后又发现桥接模式下Ubuntu始终无法联网,尝试了一些修改Ubuntu网络配置的方案后均无法解决,最后增加了一个NAT连接网络,联网时设置回NAT模式,与开发板调试时设置桥接模式。
Windows主机设置
首先查看Windows主机ip信息
win+r运行cmd命令进入命令行,输入
1 | |
找到以太网适配器信息

记录ip地址,子网掩码,网关及DNS服务器地址

我的ip为192.168.146.xx,子网掩码为255.255.255.0,网关及dns无显示(好像可以忽略它们……)
打开控制面板>网络与Internet>网络连接

以太网连接就是开发板的网络连接,可以看到未识别网络
点击以太网,点击属性

找到Internet协议版本 4(TCP/IPv4)项目,点击设置属性

手动设置ip地址,按之前windows的ip信息设置,除了ip设置为192.168.146.yy与之前ip最后一位不同,其余地址与之前一致
点击确定设置完毕
虚拟机配置
点击虚拟网络编辑器

点击更改设置

设置VMnet0为桥接模式,桥接至以太网卡

确定后退出,点击虚拟机/设置

找到网络适配器,设置网络连接为桥接模式

Ubuntu主机设置
点击网络>编辑连接

增加一个桥接网络,设置IP地址

地址为192.168.146.zz,与前面两个ip最后一位不同,子网掩码及网关相同,保存后关闭

关闭再重新打开网络,选择桥接网络,建立连接。
此时尝试在Ubuntu终端Ping之前设置的以太网手动分配的ip,即192.168.146.yy
1 | |
发现已经可以Ping通,
再在Windows上尝试pingUbuntu主机
同样win+r运行cmd,输入
1 | |
也可以ping通。
开发板配置及测试
uboot
进入uboot,输入print查看uboot信息,设置ip
1 | |
现在各ip为
| 设备 | ip |
|---|---|
| windows以太网卡 | 192.168.146.xx |
| 以太网手动分配ip | 192.168.146.yy |
| Ubuntu主机 | 192.168.146.zz |
| 开发板uboot | 192.168.146.jj |
uboot上ping测试,返回alive,ping测试成功
(ping之前记得先关掉windows的防火墙,否则开发板可能ping失败)
1 | |
linux系统
开发板进入系统后,命令行输入ifconfig查看ip信息

修改ip
1 | |
再次输入ifconfig查看信息,ip已修改
现在各ip为
| 设备 | ip |
|---|---|
| windows以太网卡 | 192.168.146.xx |
| 以太网手动分配ip | 192.168.146.yy |
| Ubuntu主机 | 192.168.146.zz |
| 开发板ip | 192.168.146.jj |
在开发板上ping测试,可以ping通
(ping之前记得先关掉windows的防火墙,否则开发板可能ping失败)
1 | |
在window上ping测试,同样win+r运行cmd,输入
1 | |
均可以ping通。
在Ubuntu上ping测试,均可以ping通。
1 | |
接模式无法联网
尝试多种方法后均无效,于是建立了一个NAT连接,每次要联网时在虚拟机网络适配器中设置网络为NAT模式并在Ubuntu内连接到建立的NAT连接。
在Ubuntu网络连接中增加一个NAT连接,ip自动分配

在虚拟机设置中设置NAT模式

然后选择NAT连接,建立连接后打开浏览器可以访问网络
若要连接开发板则设置回桥接模式,并连接至桥接网络。