本发明涉及计算机网络,特别涉及一种嵌入式arm设备自动生成和设置mac地址的方法。
背景技术:
1、在计算机网络技术领域,嵌入式设备进行以太网通信时,网口配置需要用到mac地址。mac地址是一组48位二进制数,是一种在计算机网络中用于识别各个网络设备的唯一标识符。mac地址不能重复,否则网络中的设备通信就会出现问题。
2、在现有的技术中,生成和设置mac地址包括固件生成、电子注册芯片生成、软件生成、串口或网口写入、等多种方法。其中,固件程序生成统一的mac地址,每台设备的网口mac地址都是重复的;软件随机生成mac地址,随机生成的结果依然有mac地址重复的可能性;购买mac地址或用电子注册芯片生成mac地址,虽然保证了唯一性,但是增加了额外软件或硬件成本;上位机指定mac地址,再由串口或网口设置mac地址的方法,每台设备需要运行软件进行手动设置,方法繁琐。
3、因此,设计一种能够保证mac地址唯一性,又能节省成本,操作简单,无需人工干预的自动生成和设置mac地址的方法是值得探讨的问题。
技术实现思路
1、本发明提供一种嵌入式arm设备自动生成和设置mac地址的方法,旨在解决现有mac地址生成方法无法兼顾mac地址唯一性、操作简单方便、低成本的问题。
2、为实现上述目的,本发明提供一种嵌入式arm设备自动生成和设置mac地址的方法,包括:
3、基于嵌入式固件程序,在设备开机时自动读取目标芯片的rom id编码,提取其中的唯一序列号部分;
4、基于所述唯一序列号部分,通过预设处理生成唯一的mac地址,并自动设置为网口的mac地址。
5、在一些实施例中,所述在设备开机时自动读取目标芯片的rom id编码,提取其中的唯一序列号部分包括:
6、通过linux内核驱动程序,和目标芯片通信,读取目标芯片的rom id编码,提取唯一序列号。
7、在一些实施例中,基于所述唯一序列号部分,通过预设处理生成唯一的mac地址,包括:
8、将所述唯一序列号部分与设备类型信息,组合生成所述mac地址,组合方式不限定先后顺序;其中,
9、所述预设处理包括基于所述唯一序列号进行算法处理,以保证mac地址的唯一性。
10、在一些实施例中,将所述唯一序列号部分与设备类型信息,组合生成所述mac地址的步骤,包括:
11、将所述设备类型信息作为第一个字节,将所述唯一序列号部分作为后续字节,组合生成所述mac地址。
12、在一些实施例中,所述目标芯片为内置rom id的温度传感芯片,所述id序列号为64位的rom id编码,所述唯一序列号部分为所述64位id序列号的第2至第5个字节部分。
13、在一些实施例中,所述目标芯片为qspi nor flash芯片,所述唯一序列号为芯片内部的64位unique id number。
14、在一些实施例中,所述在设备开机时自动读取目标芯片的rom id编码,提取其中的唯一序列号部分的步骤之前还包括:
15、基于嵌入式固件程序,通过设备树文件配置目标芯片和网口节点的硬件参数,完成mac地址初始化。
16、本发明技术方案提供一种嵌入式arm设备自动生成和设置mac地址的方法,包括基于嵌入式固件程序,在设备开机时自动读取目标芯片的rom id编码,提取其中的唯一序列号部分;基于所述唯一序列号部分,通过预设处理生成唯一的mac地址,并自动设置为网口的mac地址。其中,利用目标芯片的唯一序列号作为mac地址的生成依据,可以提高mac地址的安全性和唯一性,解决了mac地址重复的风险,也不需要额外购买mac地址,降低成本。利用嵌入式固件程序,自动生成和设置mac地址的方法,实现开机启动过程中自动运行,解决了设备开机后人工手动操作软件的流程繁琐问题。
1.一种嵌入式arm设备自动生成和设置mac地址的方法,其特征在于,包括:
2.根据权利要求1所述的嵌入式arm设备自动生成和设置mac地址的方法,其特征在于,所述在设备开机时自动读取目标芯片的rom id编码,提取其中的唯一序列号部分包括:
3.根据权利要求1所述的嵌入式arm设备自动生成和设置mac地址的方法,其特征在于,基于所述唯一序列号部分,通过预设处理生成唯一的mac地址,包括:
4.根据权利要3所述的嵌入式arm设备自动生成和设置mac地址的方法,其特征在于,将所述唯一序列号部分与设备类型信息,组合生成所述mac地址的步骤,包括:
5.根据权利要求1所述的嵌入式arm设备自动生成和设置mac地址的方法,其特征在于,所述目标芯片为内置rom id的温度传感芯片,所述id序列号为芯片内部64位的rom id编码,所述唯一序列号部分为所述64位id序列号的第2至第5个字节部分。
6.根据权利要求1所述的嵌入式arm设备自动生成和设置mac地址的方法,其特征在于,所述目标芯片为qspi nor flash芯片,所述唯一序列号为芯片内部的64位unique idnumber。
7.根据权利要求1所述的嵌入式arm设备自动生成和设置mac地址的方法,其特征在于,所述在设备开机时自动读取目标芯片的rom id编码,提取其中的唯一序列号部分的步骤之前还包括: