I.MX6U 开发板网络环境搭建----(电脑 WiFi 上网,开发板和电脑直连)--虚拟机双网口实现-- Ubuntu20.04

I.MX6U 开发板网络环境搭建----(电脑 WiFi 上网,开发板和电脑直连)--虚拟机双网口实现-- Ubuntu20.04

🎬 渡水无言个人主页渡水无言

专栏传送门linux专栏
⭐️流水不争先,争的是滔滔不绝

 📚博主简介:第二十届中国研究生电子设计竞赛全国二等奖 |国家奖学金 | 省级三好学生

| 省级优秀毕业生获得者 | ZEEKLOG新星杯TOP18 | 半导纵横专栏博主 | 211在读研究生

在这里主要分享自己学习的linux嵌入式领域知识;有分享错误或者不足的地方欢迎大佬指导,也欢迎各位大佬互相三连

目录

前言

一、使用场景

二、VMware 设置

三、Ubuntu 设置

3.1设置ens37网络(即NAT 模式的网络适配器)

3.2、测试ubuntu上网功能

3.3、测试ubuntu和Windows互传功能

3.4设置桥接模式的网络适配器 1 的 IP 信息

3.5关闭防火墙

四、windows设置

五、开发板设置并ping测试

5.1、uboot启动后测试

5.2、linux内核启动后测试

总结


前言

进行linux驱动开发时,为了方便测试,需要Linux 系统选择通过 TFTP 从网络启动,并且使用 NFS 挂载网络根文件系统,这篇博客就介绍了一下I.MX6U 开发板网络环境的搭建,即虚拟机双网口实现。此次博客使用的场景为:电脑 WiFi 上网,开发板和电脑直连。


一、使用场景

使用场景:路由器离电脑比较远,只有一条网线。

设备:电脑(Windows)、正点原子 Linux 开发板(出厂系统)、路由器/交换机、直通网线。

二、VMware 设置

打开 VMware Workstation 里的 虚拟机 ,点开设置选项。

设置网络适配器为桥接模式。这里不要勾选“复制物理网络连接状态”。

因为电脑是 WiFi 上网,所以需要添加一个网络适配器并设置成 NAT 模式,供虚拟机上网。 具体操作如下图所示。

默认添加的网络适配器是 NAT 模式的,如果不是 NAT 模式则要手动设置成 NAT 模式。如下图所示:

打开菜单栏的 编辑 -> 虚拟网络编辑器。如下图所示:

再点击虚拟网络编辑器的更改设置选项。

 打开如下图所示:

如果此时没有VMnet0,需要我们手动添加:


 

因为开发板是直连到电脑的网口的,所以需要虚拟网络编辑器里的网络适配器 1(即 VMnet0)

桥接到有线网卡上,比如我的电脑这里是 Realtek PCIe,如下图所示:

设置完之后点确认如下:

最终设置如下:

三、Ubuntu 设置

3.1设置ens37网络(即NAT 模式的网络适配器

启动虚拟机,打开 Ubuntu 的网络设置 。

此时有两个有线网络

可以看到此时ens37已经连接网络了,已经自动分配好IP了,但ens33没有设置IP。

注意:此时这个 NAT 模式的网络适配器和笔者前面设置的 VMnet8 是在同一网段的(192.168.49.X),如下图所示:

把这个网络设置为自动模块即可如下图:

有了这个 NAT 模式的网络适配器,Ubuntu 就能上网且能和 Windows 互通。

3.2、测试ubuntu上网功能

先测试一下ubuntu 的上网功能,pinng下百度

ping www.baidu.com

如下图所示

3.3、测试ubuntu和Windows互传功能

使用 Filezilla 软件验证 Ubuntu 和 Windows 文件互传,依次打开 文件 -> 站点管理器。

按下图设置站点:

设置完后连接站点服务器,即可加载 Ubuntu 和 Windows 的目录,可以实现文件互传。

3.4设置桥接模式的网络适配器 1 的 IP 信息

现在要做的就是设置桥接模式的网络适配器 1 的 IP 信息。网络适配器 1 用于和 Windows 和开发板通信,所以我们要先看下 Windows 主机的用于桥接网络的 IP。

查看 Windows 主机的 IP:在 Windows 端按下 win + R 快捷键打开运行栏,输入 cmd 指令

后按下回车。如下图所示:

在打开的终端中输入 ipconfig 指令,查看电脑的 IP。

ipconfig

如下图所示:

可以看到 Windows 主机的网络比较复杂,这里我们只截取可能用到的信息。根据 Windows 的 ipconfig 指令和 Ubuntu 虚拟网络编辑器,可以对应到以下表格。

网络适配器名IP 地址备注
以太网适配器 以太网2169.254.58.28以太网的 IP 信息,默认有一个 IP,需要手动修改。如果显示已断开,请将电脑网口接到开发板网口上
以太网适配器 VMware Network Adapter VMnet1 192.168.142.1在 host-only 模式下,动态分配虚拟系统的 TCP/IP 配置信息(不涉及我们此次博客)
以太网适配器 VMware Network Adapter VMnet8192.168.49.1提供 DHCP 服务,用于主机和虚拟机互通,虚拟机上网
无线局域网适配器 WLAN192.168.1.4用于 Windows 主机上网
以太网适配器 VMware Network Adapter VMnet0不提供 DHCP用于桥接网络,要在虚拟网络编辑器设置手动设置 IP

在 Windows 终端没有看到 VMnet0,在虚拟网络编辑器中可以看到。这是我们用来桥接的网络适配器,不会自动分配IP,需要手动设置。

注意:VMnet0设置的网段不能和VMnet1、 VMnet8 的网段一样,不然会有冲突。需手动设Ubuntu 中桥接网络的 IP。

回到 Ubuntu 中,打开网络适配器 1 的选项。如下图所示:

参考如下设置,这里我们将连接名称改为 VMnet0,方便区别。将

IP 手动设置为192.168.10.100 子网掩码 255.255.255.0。

注意:Ubuntu 中使用了桥接网卡和 NAT 网卡,在 Ubuntu 联网上网时会默认使用桥接网卡,但这个网卡我们是用于连接开发板的局域网,不能连接公网使用。因此我们需要设置双网卡的优先级,让 Ubuntu 连接公网时使用 NAT 网卡。

勾选仅对该网络上的资源使用此连接,如下图所示:

然后重新打开网络设备,让修改生效。

此时可以看到两个以太网都以连接

3.5关闭防火墙

输入以下命令:

sudo ufw disable

四、windows设置

设置完 Ubuntu 的 VMnet0 后,再设置 Windows 的以太网 IP 的相关信息。

在 Windows 主机打开控制面板 -> 网络和 Internet -> 网络连接,找到以太网。

打开以太网的属性,然后双击Internet 协议版本 4 (TCP/IPv4),如下图所示。

按照下图设置以太网的 IP 为 192.168.10.200,要和虚拟机的 VMnet0 在同一网段。

五、开发板设置并ping测试

5.1、uboot启动后测试

接下来设置下开发板的 IP。这里我们将开发板 IP 设置为 192.168.10.50,和 VMnet0 在同一网段即可。

在uboot阶段,使用uboot 命令行设置完开发板 IP 相关的信息后,也能 ping 虚拟机 Ubuntu。

使用如下命令:

setenv ipaddr 192.168.10.50 setenv ethaddr 00:04:9f:04:d2:35 setenv gatewayip 192.168.10.1 setenv netmask 255.255.255.0 setenv serverip 192.168.10.100 saveenv

设置好之后,再用如下命令ping 虚拟机 Ubuntu:

ping 192.168.10.100

可以看出已经ping成功了。

注意:uboot 阶段时,Ubuntu 虚拟机 ping 开发板是没有反馈的,所以不用进行这一步。

5.2、linux内核启动后测试

我们还是将开发板 IP 设置为 192.168.10.50,和 VMnet0 在同一网段即可。 进入开发板文件系统,设置开发板 IP。

ifconfig eth0 up ifconfig eth0 192.168.10.50 ifconfig

如下图所示:

设置好之后,再用如下命令ping 虚拟机 Ubuntu:

ping 192.168.10.100

如下图所示:

开发板ping主机 Windows 的 IP。

ping 192.168.10.200

如下图所示:

Ubuntu 虚拟机 ping 开发板的 IP。

ping 192.168.10.50

Windows 主机 ping 开发板。

ping 192.168.10.50

以上就是开发板、Ubuntu 和 Windows 三者互 ping 测试。

接下来就可以搭建 TFTP和和 NFS 来挂载内核、设备树和文件系统了。


总结

此次博客介绍了I.MX6U 开发板网络环境的搭建,即虚拟机双网口实现。下一期博客将搭建 TFTP和和 NFS 来挂载内核、设备树和文件系统了。

Read more

打工人摸鱼新姿势!轻量斗地主服务器,内网穿透让同事远程联机不翻车

打工人摸鱼新姿势!轻量斗地主服务器,内网穿透让同事远程联机不翻车

Ratel 斗地主服务器是一款基于 Netty 和 Protobuf 开发的轻量级服务端软件,核心功能是搭建斗地主游戏服务,适配 Windows、Linux、macOS 多系统,适合职场上班族、学生群体这类想利用碎片时间休闲的人群,它的核心优点是资源占用极低,CPU 仅占 3%,内存消耗也少,还支持 AI 对手和隐藏进程,日常使用不会给设备带来负担。 使用这款软件时也有一些小细节需要注意,比如在办公场景下启动服务要注意隐藏会话,避免被察觉;和 AI 对战时不同难度模式的出牌节奏有差异,新手可以先从简单模式上手,而且软件启动后需要保持终端窗口运行,不小心关闭就会中断游戏。 不过这款软件仅靠局域网使用时,会遇到不少实际问题:比如上班族想和异地的同事联机,却因为不在同一局域网无法连接;学生在宿舍搭建好服务器,放假回家后就没法和室友继续玩,只能局限在小范围的网络环境里,大大降低了使用的灵活性。 而将 Ratel 斗地主服务器和 cpolar 内网穿透结合后,这些问题就能迎刃而解。cpolar 无需公网 IP 就能把本地的游戏服务映射到公网,

By Ne0inhk
OpenClaw 汉化版完整部署手册:Docker + SSH 隧道 + 多端访问

OpenClaw 汉化版完整部署手册:Docker + SSH 隧道 + 多端访问

0 前言 本文将介绍如何在服务器上部署 OpenClaw(小龙虾) —— 一款基于 Claude Code(Clawdbot/Moltbot)的第三方开源汉化中文发行版。它提供了完整的中文界面适配,让国内用户能够更顺畅地使用 AI 编程助手的强大能力。 为什么要这样部署? 直接在本地运行 Claude Code 存在以下痛点: * 网络限制:国内直连官方服务不稳定,延迟高、访问受阻 * 语言障碍:原版界面为英文,上手门槛较高 * 设备依赖:本地运行受限于单一设备,无法多端共享 通过将 OpenClaw 部署在服务器上,配合 Docker 容器化管理,可以实现 7×24 小时稳定运行、局域网/公网多设备随时访问,一次部署,长期使用。 需要什么服务器? 配置项最低要求推荐配置操作系统Ubuntu 20.04 LTSUbuntu 22.

By Ne0inhk
Flutter for OpenHarmony: Flutter 三方库 flutterfire_cli 自动化鸿蒙应用与 Firebase 云端的集成链路(工程自动化神器)

Flutter for OpenHarmony: Flutter 三方库 flutterfire_cli 自动化鸿蒙应用与 Firebase 云端的集成链路(工程自动化神器)

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net 前言 在进行 OpenHarmony 应用的出海开发时,Firebase 是必不可少的后端基础设施。然而,在鸿蒙工程中手动配置 Firebase 的各个平台配置文件(如 google-services.json 或 GoogleService-Info.plist)以及管理各个功能模块(Auth, Crashlytics, Analytics)的初始化代码,不仅繁琐且极其容易出错。 flutterfire_cli 是官方提供的自动化工具链。它能通过命令行交互的方式,自动为你的 Flutter 鸿蒙项目配置所有必要的文件,并生成跨平台一致的初始化 Dart 代码。它是实现鸿蒙-Firebase 体系“零配置”集成的关键。 一、自动化集成工作流模型 flutterfire_cli 取代了原本需要数小时的手动配置过程。 flutterfire configure (命令行) Firebase

By Ne0inhk
Ubuntu 24.04 换源教程:快速切换为阿里源

Ubuntu 24.04 换源教程:快速切换为阿里源

Ubuntu 24.04 LTS(代号 "Noble Numbat")已经正式发布,默认的软件源位于国外,国内用户在使用时可能会遇到下载速度慢、更新失败等问题。为了提高软件包的下载速度和稳定性,我们可以将默认的软件源更换为国内的阿里云镜像源。本文将详细介绍如何在 Ubuntu 24.04 中更换为阿里源。 一、为什么要换源? 1. 下载速度更快:国内镜像源通常位于国内服务器,访问速度更快。 2. 稳定性更高:避免因网络问题导致的下载失败或中断。 3. 减少延迟:国内源可以显著减少软件包下载和更新的延迟。 二、更换阿里源的步骤 方法一:命令行方式(推荐) 1. 保存并退出 按下 Ctrl + X,然后按 Y 确认保存,最后按 Enter 键退出编辑器。 更新软件包列表 执行以下命令更新软件包列表:

By Ne0inhk