问题——IMX6UL的uboot无法ping主机或Ubuntu

news/2024/9/24 2:05:30/

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

        跟随正点原子教程测试以太网端口时,即便按照步骤多次尝试也无法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.168.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是192.168.10.x还是10.236.x.x亦或者是什么别的形式

        我在用Ubuntu桥接模式过程中,经常会遇到动不动就把设置的端口给关掉的情况(可能是因为我设的ip不是192.168.10.x?),这会导致uboot去ping主机时可以ping通,但是去ping虚拟机时失败,这一点要留意

 下图是用uboot去ping主机(169.254.10.236)时能ping通,但去ping同一子网下的Ubuntu时却没ping通,检查一遍才发现Ubuntu对应网口被关了,于是打开后重新用uboot去ping虚拟机(169.254.10.100)就成功了

 

        在ping的过程中,uboot可以单向ping主机或虚拟机,反之不行。主机与虚拟机可以正常互ping,只不过虚拟机去ping主机时,会时不时等间隔出现DUP这种报文

 

 

 只有开发板去ping虚拟机时,虚拟机才能ping通开发板【已解决】

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


http://www.ppmy.cn/news/1529596.html

相关文章

C++语言设计期末考试知识点

C语言设计期末考试知识点 1. 基础语法 变量和数据类型: int, float, double, char, bool 等基本数据类型。常量:const 关键字。变量的作用域:局部变量、全局变量。 输入输出: cin 和 cout:标准输入输出流。格式化输出…

中间件:maxwell、canal

文章目录 1、底层原理:基于mysql的bin log日志实现的:把自己伪装成slave2、bin log 日志有三种模式:2.1、statement模式:2.2、row模式:2.3、mixed模式: 3、maxwell只支持 row 模式:4、maxwell介…

PHP、Java等其他语言转Go时选择GoFly快速快速开发框架指南

概要 经过一年多的发展GoFly快速开发框架已被一千多家科技企业或开发者用于项目开发,它的简单易学得到其他语言转Go首选框架。且企业版的发展为GoFly社区提供资金,这使得GoFly快速框架得到良好的发展,GoFly技术团队加大投入反哺科技企业和开…

828华为云征文 | 云服务器Flexus X实例,Docker集成搭建Mysql集群

828华为云征文 | 云服务器Flexus X实例,Docker集成搭建Mysql集群 MySQL 集群是一种高可用性、高性能的数据库解决方案,旨在支持分布式应用程序,允许多个 MySQL 实例以集群的方式共同工作,提供数据冗余和故障恢复能力 搭建Mysql集群…

如何进入电脑BIOS

前言 在日常使用电脑的过程中,有时我们需要进入BIOS(基本输入输出系统)来调整设置,比如更改启动顺序、调整系统日期时间或是优化硬件配置。BIOS是计算机启动时最先运行的程序之一,它位于主板上的一个ROM芯片中。下面&…

简单接口自动化框架实现(Python+requests+pytest)

1、接口自动化流程 1.需求分析2.挑选需要做自动化测试的功能3.设计测试用例4.搭建自动化测试环境[可选]5.设计自动化测试项目的架构[可选]6.编写代码7.执行测试用例8.生成测试报告并分析结果 2、框架结构 --api -->封装请求 --scripts -->编写测试脚本…

汽车英文单词缩写汇总

缩略词英文全文中文翻译备注ACCAdaptive Cruise Control自适应巡航控制ACCMAir Conditioner Compressor Module空调压缩机模块ASILAutomotive Safety Integrity Level汽车安全完整性等级BOMBill of Materials物料清单CCCChina Compulsory Certification中国强制性产品认证CSDCe…

基于JAVA+SpringBoot+Vue的医院资源管理系统

基于JAVASpringBootVue的医院资源管理系统 前言 ✌全网粉丝20W,csdn特邀作者、博客专家、CSDN[新星计划]导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末附源码下载链接🍅 哈…