当前位置: 首页 > news >正文

经验——IMX6UL的uboot无法ping主机或Ubuntu

       主要描述可能的方向,不涉具体过程,详细操作可以查阅网上相关教程

        跟随正点原子教程测试以太网端口时,即便按照步骤多次尝试也无法ping通,后补充了些许网络工程基础知识解决了这个问题。

        uboot无法ping主机或Ubuntu有多种可能,我所知的有以下几种情况

——物理上未连接或连接松动

——防火墙没有关

——uboot的ip地址、子网掩码等配置错误

——…………

        这次我所遇到的是第三种,这种情况比较复杂,有可能是虚拟机或主机网络配置错误、ip地址和子网掩码找错等。我描述一下我的连接情况,开发板通过网线连接到笔记本上,笔记本桥接Ubuntu,同时笔记本连接手机上的热点(就是WiFi)供上网

        正是由于我的这种配置,导致了开发板与Ubuntu无法通信,简单来说就是开发板是直接连接到主机的,而非Ubuntu,所以开发板与Ubuntu所用的不一定是同一个网络接口,也不一定是同一个网段。直接跳到【目录一下面的3】

一、检测配置

1、检测虚拟机联网

        在主机联上网的情况下(有线、无线都无所谓),在Ubuntu里直接打开火狐浏览器,然后随便点击一个网页,比如百度,看看能不能正常联网

        如果不能的话,那么就要检查下面配置是否正常

①网络适配器

②虚拟网络编辑器

         这个一般不用改,如果不小心改错了就点击【更改设置(C)】,进入下面窗口,然后点击【还原默认设置(R)】

③Ubuntu网络配置

        输入ifconfig后,正常情况下会出现下面信息,此时你可以看到inet 后的ip地址、netmask后的子网掩码等。

         如果不能的话,那么就要检查一下Ubuntu的network有没有改掉什么。由于我有时使用手机热点,有时使用以太网,有时使用公共WiFi,网关经常改变,所以配置成了动态分配。

        不过Ubuntu的network一般不会出现不显示ip地址的情况,此时可以尝试到虚拟网络编辑器里还原默认设置,然后重启Ubuntu。更严重的可能是VMware的网络方面的工具安装错误等

2、主机与虚拟机互相通信

    主机与虚拟机互相ping,如果不成功,首先要检测防火墙有没有关。如果防火墙关了仍会出现问题,那么要检查虚拟机与Ubuntu是否处于同一个网段,比如主机ip为192.168.116.140,那么虚拟机应为192.168.116.xx。可以选择动态分配,会自动生成同一个网段的ip地址

3、Uboot与主机通信

①基础知识

        在终端里输入ipconfig会出现一下信息,不同的网络适配器下会有不同的ip地址,以不同方式访问笔记本时,笔记本呈现的是对应方式下网络适配器的ip地址。比如笔记本连接上手机热点,此时用的是无线局域网适配器 WLAN,那么笔记本的ip地址是192.116.149,手机可以通过这个ip地址与笔记本通信。

        要注意的是,如果你使用桥接模式,并且虚拟网络编辑器里桥接模式设置的是自动,那么虚拟机就会自动匹配能连上网的网络适配器。所以此时我的Ubuntu的网段是192.168.116.0/24

         这里我们只看以太网适配器 以太网(注意,不是VM的网络适配器),因为开发板是通过网线直接连接笔记本的以太网端口。

         此时我们可以看到的是ip地址为169.254.10.236,子网掩码是255.255.0.0,通过子网掩码可以知道网段是169.254.0.0/16,那么ip地址可以设为169.254.xx.xx,而不是192.168.10.xx

 

②尝试主机与uboot通信

        那么就可以在uboot里把ip地址和子网掩码给改了,网关gatewayip和服务器地址serverip不改也不会影响uboot向主机通信

         改完重启开发板后,再去ping主机,一般来说这一步是可以正常ping,不会出现什么问题(要注意,这是单向通信,主机是不能ping通uboot的)

二、解决

1、_

2,_

3,创建新的网络接口

        前面提到,由于Ubuntu与开发板分别处于无线局网络接口和以太网接口两个不同的网络接口且不是同一个网段,所以是无法直接通信的(默认是无法通信的,可以添加路由规则什么的)。所以给Ubuntu添加一个网络接口就行了。

        具体操作见教程Ubuntu和IMX6ULL开发板网络通讯-配置方法,简单来说就是桥接模式供开发板通信,NAT供上网,因为桥接模式可以选择不同的网络适配器,而仅主机模式和NAT模式分别绑定了VMnet0和VMnet8

        直接添加一个NAT网口、桥接选为以太网适配时会出现下面信息,可以见到的是ens33(不同人的显示可能不同)这个代表是桥接模式的网口,ens37表示的是NAT网口。其中ens33由于动态分配ip地址,而此刻以太网端口连接的是开发板,自然没有网关,那么也就不会分配有效的ip地址

 所以需要自己手动设置ip地址和子网掩码,网关随便设置一个,此外还需要在主机的网络适配器里重新设置一下以太网适配器的ip地址,不然会出现主机无法ping通Ubuntu,Ubuntu在ping主机时会出现DUP!这种报文,同时开发板仍旧无法ping通Ubuntu

设置ip地址时要先ping一下,确保所设ip地址没有被占用。由于此时用于上网的是热点wifi,网段为192.168.116.0/24,所以可以把以太网的ip地址设为192.168.116.xx,子网掩码设为255.255.255.0

由于开发板是与笔记本直连的,所以不能上网,在Ubuntu手动设置ip时,可以不用设网关

下图所示中,主机设为192.168.116.168,开发板设为192.168.116,Ubuntu设为192.168.116.100

不过奇怪的是Ubuntu去ping主机时,还会出现DUP

 

【已解决】

 此时只有开发板去ping虚拟机时,虚拟机才能ping通开发板

 后来翻到这篇博客嵌入式Linux--正确设置网络使开发板ping同Ubuntu,才知道了原因

相关文章:

经验——IMX6UL的uboot无法ping主机或Ubuntu

主要描述可能的方向,不涉具体过程,详细操作可以查阅网上相关教程 跟随正点原子教程测试以太网端口时,即便按照步骤多次尝试也无法ping通,后补充了些许网络工程基础知识解决了这个问题。 uboot无法ping主机或Ubuntu有多种可能&…...

AUTOSAR-规范文档版本

https://www.autosar.org/standards 2024年11月(R24-11) Foundation(FO) // TODO Classic(CP) // TODO Adaptive(AP) // TODO 2023年11月(R23-11) Foundation&a…...

网络(四)——HTTP协议

文章目录 认识urlurlencode和urldecodeHTTP协议格式HTTP的方法HTTP的状态码HTTP常见Header 虽然应用层的协议是由人为规定的,但是已经有大佬们定义了一些现成的,又非常好用的应用层协议,供我们直接参考使用. HTTP(超文本传输协议)就是其中之一…...

comfyui中报错 Cmd(‘git‘) failed due to: exit code(128) 如何解决

🎈背景 comfyui今天在安装插件的过程中,发现有个插件第一次安装失败后,再次安装就开始报错了,提示: ComfyUI-Inpaint-CropAndStitch install failed: Bad Request 截图如下: 看下后台的报错: …...

测试-Gatling 与性能测试

Gatling 与性能测试详解 一、什么是性能测试? 性能测试是一种软件测试类型,旨在评估系统在负载下的响应时间、吞吐量和资源利用率等性能指标。通过性能测试,开发者和运维团队能够识别出系统的瓶颈、优化系统性能,并确保其在实际…...

ESRGAN——老旧照片、视频帧的修复和增强,提高图像的分辨率

ESRGAN(Enhanced Super-Resolution GAN):用于提高图像的分辨率,将低质量图像升级为高分辨率版本,常用于老旧照片、视频帧的修复和增强。 一、ESRGAN 介绍 1.1 背景 超分辨率问题是计算机视觉中的一个重要研究领域&a…...

跨界融合:EasyDSS+无人机视频直播推流技术助力行业多场景应用

随着科技的飞速发展,无人机技术与流媒体技术的结合正逐步改变着多个行业的运作模式。其中,EasyDSS互联网视频云服务与无人机视频直播推流技术的结合,更是为警务安防、赛事直播、农业监测等多个领域带来了前所未有的变革。本文将深入探讨EasyD…...

Linux实操笔记2 Ubuntu安装Nginx的不同方法

今天来了解Ubuntu或者说Linux系统安装Nginx的几种办法。包括从Ubuntu的库安装到官方源码编译安装。 一、Nginx是什么? 以下是来自Nginx中文文档的内容。 Nginx 是一个高性能的 Web 和反向代理服务器, 它具有有很多非常优越的特性: 作为 Web 服务器:相比…...

QCustomPlot笔记(一)

文章目录 简介将帮助文档添加到Qt Creator中编译共享库cmake工程编译提示ui_mainwindow.h找不到qcustomplot.h文件 环境:windowsQt Creator 10.0.1cmake 简介 QT中用于绘制曲线的第三方工具 下载地址:https://www.qcustomplot.com/index.php/download 第一个压缩…...

【机器学习】多模态AI——融合多种数据源的智能系统

随着人工智能的快速发展,单一模态(如文本、图像或语音)已经不能满足复杂任务的需求。多模态AI(Multimodal AI)通过结合多种数据源(如文本、图像、音频等)来提升模型的智能和表现,适用…...

QT学习与数据库连接

1.基础 1. 安装最后一个非在线版本 5.14, 没有的话联系我 新建一个.cpp文件 #include <QApplication> #include <QLabel> #include <QLineEdit> #include <QPushButton> #include <QHBoxLayout> #include <QVBoxLayout> #include <Q…...

泛读笔记:从Word2Vec到BERT

自然语言处理(NLP)模型的发展历史 1.统计方法时期&#xff1a;使用贝叶斯方法、隐马尔可夫模型、概率模型等传统统计方法 2.机器学习时期&#xff1a;支持向量机(SVM)、决策树模型、随机森林、朴素贝叶斯等传统机器学习方法 3.深度学习革命&#xff1a;各种新的深度学习模型&am…...

redis实现分布式锁详细教程,可续锁(看门狗)、可重入

前言 本文将讨论的做一个高并发场景下避不开的话题&#xff0c;即redis分布式锁。比如在淘宝 的秒杀场景、热点新闻和热搜排行榜等。可见分布式锁是一个程序员面向高级的一门必修课&#xff0c;下面请跟着本篇文章好好学习。 redis分布式锁有哪些面试题 1.Redis做分布式的时…...

代码随想录打卡Day32

今天有点事&#xff0c;先做一题&#xff0c;剩下的明天补。 509. 斐波那契数 这道题目太简单了&#xff0c;递归几行代码就结束了&#xff0c;用动态规划做也可以&#xff0c;主要是学习一下动态规划五部曲。 这是递归的代码 class Solution { public:int fib(int n) {//确…...

数学学习记录

目录 学习资源&#xff1a; 9月14日 1.映射&#xff1a;​编辑 2.函数: 9月15日 3.反函数&#xff1a; 4.收敛数列的性质 5.反三角函数&#xff1a; 9月16日 6.函数的极限&#xff1a; 7.无穷小和无穷大 极限运算法则&#xff1a; 学习资源&#xff1a; 3Blue1…...

R语言统计分析——散点图1(常规图)

参考资料&#xff1a;R语言实战【第2版】 R语言中创建散点图的基础函数是plot(x,y)&#xff0c;其中&#xff0c;x和y是数值型向量&#xff0c;代表着图形中的&#xff08;x,y&#xff09;坐标点。 attach(mtcars) plot(wt,mpg,main"Basic Scatter plot of MPG vs. Weigh…...

蓝桥杯—STM32G431RBT6按键的多方式使用(包含软件消抖方法精讲)从原理层面到实际应用(一)

新建工程教程见http://t.csdnimg.cn/JySLg 点亮LED教程见http://t.csdnimg.cn/Urlj5 末尾含所有代码 目录 按键原理图 一、按键使用需要解决的问题 1.抖动 1.什么是抖动 2.抖动类型 3.如何去消除抖动 FIRST.延时函数消抖&#xff08;缺点&#xff1a;浪费CPU资源&#xff…...

基于STM32的温度、电流、电压检测proteus仿真系统(OLED、DHT11、继电器、电机)

目录 一、主要功能 二、硬件资源 三、程序编程 四、实现现象 一、主要功能 基于STM32F103C8T6 采用DHT11读取温度、滑动变阻器模拟读取电流、电压。 通过OLED屏幕显示&#xff0c;设置电流阈值为80&#xff0c;电流小阈值为50&#xff0c;电压阈值为60&#xff0c;温度阈值…...

Linux - iptables防火墙

目录 一、iptables概述 二、规则表与规则链结构&#xff08;四表五链&#xff09; 1.简述 2.四表&#xff08;规则表&#xff09; 3.五链&#xff08;规则链&#xff09; 三、数据链过滤的匹配流程 四、iptables命令行配置方法 1.命令格式 2.基本匹配条件 3.隐含匹配 …...

【C语言零基础入门篇 - 3】:格式化输入输出、字符操作和sizeof运算符揭秘

文章目录 格式化输入与输出格式化输入输出演示基本格式化输入输出 字符的输入输出sizeof运算符 格式化输入与输出 什么是数据的输出? 计算机向输出设备输出数据 什么是数据的输入? 从输入设备向计算机输入数据 #include<stdio.h>&#xff1a;标准的输入输出库&#…...

eNSP-Cloud(实现本地电脑与eNSP内设备之间通信)

说明&#xff1a; 想象一下&#xff0c;你正在用eNSP搭建一个虚拟的网络世界&#xff0c;里面有虚拟的路由器、交换机、电脑&#xff08;PC&#xff09;等等。这些设备都在你的电脑里面“运行”&#xff0c;它们之间可以互相通信&#xff0c;就像一个封闭的小王国。 但是&#…...

使用VSCode开发Django指南

使用VSCode开发Django指南 一、概述 Django 是一个高级 Python 框架&#xff0c;专为快速、安全和可扩展的 Web 开发而设计。Django 包含对 URL 路由、页面模板和数据处理的丰富支持。 本文将创建一个简单的 Django 应用&#xff0c;其中包含三个使用通用基本模板的页面。在此…...

高频面试之3Zookeeper

高频面试之3Zookeeper 文章目录 高频面试之3Zookeeper3.1 常用命令3.2 选举机制3.3 Zookeeper符合法则中哪两个&#xff1f;3.4 Zookeeper脑裂3.5 Zookeeper用来干嘛了 3.1 常用命令 ls、get、create、delete、deleteall3.2 选举机制 半数机制&#xff08;过半机制&#xff0…...

django filter 统计数量 按属性去重

在Django中&#xff0c;如果你想要根据某个属性对查询集进行去重并统计数量&#xff0c;你可以使用values()方法配合annotate()方法来实现。这里有两种常见的方法来完成这个需求&#xff1a; 方法1&#xff1a;使用annotate()和Count 假设你有一个模型Item&#xff0c;并且你想…...

JVM 内存结构 详解

内存结构 运行时数据区&#xff1a; Java虚拟机在运行Java程序过程中管理的内存区域。 程序计数器&#xff1a; ​ 线程私有&#xff0c;程序控制流的指示器&#xff0c;分支、循环、跳转、异常处理、线程恢复等基础功能都依赖这个计数器完成。 ​ 每个线程都有一个程序计数…...

安宝特案例丨Vuzix AR智能眼镜集成专业软件,助力卢森堡医院药房转型,赢得辉瑞创新奖

在Vuzix M400 AR智能眼镜的助力下&#xff0c;卢森堡罗伯特舒曼医院&#xff08;the Robert Schuman Hospitals, HRS&#xff09;凭借在无菌制剂生产流程中引入增强现实技术&#xff08;AR&#xff09;创新项目&#xff0c;荣获了2024年6月7日由卢森堡医院药剂师协会&#xff0…...

Spring AI Chat Memory 实战指南:Local 与 JDBC 存储集成

一个面向 Java 开发者的 Sring-Ai 示例工程项目&#xff0c;该项目是一个 Spring AI 快速入门的样例工程项目&#xff0c;旨在通过一些小的案例展示 Spring AI 框架的核心功能和使用方法。 项目采用模块化设计&#xff0c;每个模块都专注于特定的功能领域&#xff0c;便于学习和…...

【p2p、分布式,区块链笔记 MESH】Bluetooth蓝牙通信 BLE Mesh协议的拓扑结构 定向转发机制

目录 节点的功能承载层&#xff08;GATT/Adv&#xff09;局限性&#xff1a; 拓扑关系定向转发机制定向转发意义 CG 节点的功能 节点的功能由节点支持的特性和功能决定。所有节点都能够发送和接收网格消息。节点还可以选择支持一个或多个附加功能&#xff0c;如 Configuration …...

tomcat指定使用的jdk版本

说明 有时候需要对tomcat配置指定的jdk版本号&#xff0c;此时&#xff0c;我们可以通过以下方式进行配置 设置方式 找到tomcat的bin目录中的setclasspath.bat。如果是linux系统则是setclasspath.sh set JAVA_HOMEC:\Program Files\Java\jdk8 set JRE_HOMEC:\Program Files…...

【深度学习新浪潮】什么是credit assignment problem?

Credit Assignment Problem(信用分配问题) 是机器学习,尤其是强化学习(RL)中的核心挑战之一,指的是如何将最终的奖励或惩罚准确地分配给导致该结果的各个中间动作或决策。在序列决策任务中,智能体执行一系列动作后获得一个最终奖励,但每个动作对最终结果的贡献程度往往…...