本发明属于计算机网络技术领域,特别是涉及一种多网卡环境下物理网卡的命名方法和装置。
背景技术:
随着计算机技术的飞速发展,高性能高稳定性的计算机系统越来越成为经济社会发展的需要。这就为需要计算机系统有多条物理通信链路,保证通信稳定性。目前对于多条物理网卡的情况,有传统的命名方法是将MAC地址与网卡命名对应起来,系统重启后能获得与之前一致的网卡名,但此种方法不能有效应对新增及替换网卡的情况;还有基于网卡在主板上的位置来命名网卡名的方法,但此种方法的网卡名晦涩难懂,不方便用户理解,且不能广泛适用于所有网卡和计算机主板。
技术实现要素:
为解决上述问题,本发明提供了一种多网卡环境下物理网卡的命名方法和装置,能够自适应的对网卡进行命名,使网卡名在不断重启后保持一致,且方便用户理解。
本发明提供的一种多网卡环境下物理网卡的命名方法,包括:
在操作系统安装完成后,生成包含MAC地址与网卡名的对应关系的原始规则文件,并将自适应算法放置在预设位置;
重启所述操作系统之后,查询所述原始规则文件,返回与当前网卡的MAC地址相对应的网卡名;
对于MAC地址不存在于所述原始规则文件中的网卡,调用所述自适应算法获得并返回网卡名。
优选的,在上述多网卡环境下物理网卡的命名方法中,在所述调用所述自适应算法获得并返回网卡名之后,还包括:
将更新规则文件的脚本放置在所述操作系统的自启动规则或自启动文件夹中;
重启完成之后,调用所述更新规则文件的脚本,对所述原始规则文件进行更新。
优选的,在上述多网卡环境下物理网卡的命名方法中,所述对于MAC地址不存在于所述原始规则文件中的网卡,调用所述自适应算法获得并返回网卡名包括:
利用所述自适应算法对所述原始规则文件中的网卡名进行遍历;
查询所述原始规则文件中的预设原始网卡的MAC地址是否存在于当前硬件环境中,如果不存在,则判定所述MAC地址不存在于所述原始规则文件中的网卡为替换网卡,将所述预设原始网卡的网卡名赋予所述MAC地址不存在于所述原始规则文件中的网卡。
优选的,在上述多网卡环境下物理网卡的命名方法中,所述对于MAC地址不存在于所述原始规则文件中的网卡,调用所述自适应算法获得并返回网卡名还包括:
当遍历结束之后发现所述原始规则文件中的所有原始网卡的MAC地址均存在于当前硬件环境中,则判定所述MAC地址不存在于所述原始规则文件中的网卡为新增网卡,将所述MAC地址不存在于所述原始规则文件中的网卡命名为eth-N,其中N为当前硬件环境中的网卡的总个数。
优选的,在上述多网卡环境下物理网卡的命名方法中,所述调用所述更新规则文件的脚本,更新规则文件包括:
对比旧规则和新规则,如果所述旧规则与所述新规则相同,则不做改变;
如果所述新规则是新增网卡得到的,则直接添加所述新规则;
如果所述新规则是替换网卡得到的,则添加所述新规则,删除对应的旧规则。
本发明提供的一种多网卡环境下物理网卡的命名装置,包括:
生成单元,用于在操作系统安装完成后,生成包含MAC地址与网卡名的对应关系的原始规则文件,并将自适应算法放置在预设位置;
第一返回单元,用于重启所述操作系统之后,查询所述原始规则文件,返回与当前网卡的MAC地址相对应的网卡名;
第二返回单元,用于对于MAC地址不存在于所述原始规则文件中的网卡,调用所述自适应算法获得并返回网卡名。
优选的,在上述多网卡环境下物理网卡的命名装置中,还包括:
放置单元,用于将更新规则文件的脚本放置在所述操作系统的自启动规则或自启动文件夹中;
更新单元,用于重启完成之后,调用所述更新规则文件的脚本,对所述原始规则文件进行更新。
优选的,在上述多网卡环境下物理网卡的命名装置中,所述第二返回单元具体用于:
利用所述自适应算法对所述原始规则文件中的网卡名进行遍历;
查询所述原始规则文件中的预设原始网卡的MAC地址是否存在于当前硬件环境中,如果不存在,则判定所述MAC地址不存在于所述原始规则文件中的网卡为替换网卡,将所述预设原始网卡的网卡名赋予所述MAC地址不存在于所述原始规则文件中的网卡。
优选的,在上述多网卡环境下物理网卡的命名装置中,所述第二返回单元具体用于:
当遍历结束之后发现所述原始规则文件中的所有原始网卡的MAC地址均存在于当前硬件环境中,则判定所述MAC地址不存在于所述原始规则文件中的网卡为新增网卡,将所述MAC地址不存在于所述原始规则文件中的网卡命名为eth-N,其中N为当前硬件环境中的网卡的总个数。
优选的,在上述多网卡环境下物理网卡的命名装置中,所述更新单元包括:
对比部件,用于对比旧规则和新规则,如果所述旧规则与所述新规则相同,则不做改变;
第一更新部件,用于如果所述新规则是新增网卡得到的,则直接添加所述新规则;
第二更新部件,用于如果所述新规则是替换网卡得到的,则添加所述新规则,删除对应的旧规则。
通过上述描述可知,本发明提供的上述多网卡环境下物理网卡的命名方法和装置,由于该方法包括:在操作系统安装完成后,生成包含MAC地址与网卡名的对应关系的原始规则文件,并将自适应算法放置在预设位置;重启所述操作系统之后,查询所述原始规则文件,返回与当前网卡的MAC地址相对应的网卡名;对于MAC地址不存在于所述原始规则文件中的网卡,调用所述自适应算法获得并返回网卡名,因此能够自适应的对网卡进行命名,使网卡名在不断重启后保持一致,且方便用户理解。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的第一种多网卡环境下物理网卡的命名方法的示意图;
图2为本申请实施例提供的第一种多网卡环境下物理网卡的命名装置的示意图。
具体实施方式
本发明的核心思想在于提供一种多网卡环境下物理网卡的命名方法和装置,能够自适应的对网卡进行命名,使网卡名在不断重启后保持一致,且方便用户理解。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请实施例提供的第一种多网卡环境下物理网卡的命名方法如图1所示,图1为本申请实施例提供的第一种多网卡环境下物理网卡的命名方法的示意图。该方法包括如下步骤:
S1:在操作系统安装完成后,生成包含MAC地址与网卡名的对应关系的原始规则文件,并将自适应算法放置在预设位置;
具体的,可以利用Linux系统的Udev模块和规则文件,建立一种可靠的网卡命名规则,根据自适应算法在替换、新增网卡时获得网卡名,在操作系统安装完成后由操作系统安装程序自动生成udev规则文件,并将自适应算法放在合适位置,供udev规则文件调用。
S2:重启所述操作系统之后,查询所述原始规则文件,返回与当前网卡的MAC地址相对应的网卡名;
具体的,重启后操作系统可以使用udev规则文件匹配网卡MAC地址等信息,进行网卡命名。
S3:对于MAC地址不存在于所述原始规则文件中的网卡,调用所述自适应算法获得并返回网卡名。
也就是说,在新增网卡或替换网卡的情况下,调用自适应算法获得网卡名。
上述网卡命名方式,更加方便用户理解,并且能够保存网卡名,使网卡名在不断重启后仍保持一致,还可以在新增和替换网卡时自适应的进行网卡命名,保持网卡命名的统一。
通过上述描述可知,本申请实施例提供的第一种多网卡环境下物理网卡的命名方法,由于包括:在操作系统安装完成后,生成包含MAC地址与网卡名的对应关系的原始规则文件,并将自适应算法放置在预设位置;重启所述操作系统之后,查询所述原始规则文件,返回与当前网卡的MAC地址相对应的网卡名;对于MAC地址不存在于所述原始规则文件中的网卡,调用所述自适应算法获得并返回网卡名,因此能够自适应的对网卡进行命名,使网卡名在不断重启后保持一致,且方便用户理解。
本申请实施例提供的第二种多网卡环境下物理网卡的命名方法,是在上述第一种多网卡环境下物理网卡的命名方法的基础上,还包括如下技术特征:
在所述调用所述自适应算法获得并返回网卡名之后,还包括:
将更新规则文件的脚本放置在所述操作系统的自启动规则或自启动文件夹中;
重启完成之后,调用所述更新规则文件的脚本,对所述原始规则文件进行更新。
具体而言,利用更新规则文件的算法对网卡名称固化,下次启动时保持网卡名不变。
本申请实施例提供的第三种多网卡环境下物理网卡的命名方法,是在上述第二种多网卡环境下物理网卡的命名方法的基础上,还包括如下技术特征:所述对于MAC地址不存在于所述原始规则文件中的网卡,调用所述自适应算法获得并返回网卡名包括:
利用所述自适应算法对所述原始规则文件中的网卡名进行遍历;
查询所述原始规则文件中的预设原始网卡的MAC地址是否存在于当前硬件环境中,如果不存在,则判定所述MAC地址不存在于所述原始规则文件中的网卡为替换网卡,将所述预设原始网卡的网卡名赋予所述MAC地址不存在于所述原始规则文件中的网卡。
需要说明的是,这种自适应算法能够判断出网卡替换的情况,并且将被替换掉网卡的网卡名直接命名替换后的新的网卡,这样就能够符合用户对于网卡命名的习惯和期望,也不会给用户造成混乱。
本申请实施例提供的第四种多网卡环境下物理网卡的命名方法,是在上述第三种多网卡环境下物理网卡的命名方法的基础上,还包括如下技术特征:所述对于MAC地址不存在于所述原始规则文件中的网卡,调用所述自适应算法获得并返回网卡名还包括:
当遍历结束之后发现所述原始规则文件中的所有原始网卡的MAC地址均存在于当前硬件环境中,则判定所述MAC地址不存在于所述原始规则文件中的网卡为新增网卡,将所述MAC地址不存在于所述原始规则文件中的网卡命名为eth-N,其中N为当前硬件环境中的网卡的总个数。
需要说明的是,这种情况下,原来的所有网卡任然都存在与硬件环境中,没有减少,就说明所述MAC地址不存在于所述原始规则文件中的网卡就是新增网卡,就将其命名为eth-N,既保证不会与其他网卡的网卡名重复,也更符合用户的命名习惯,且命名方式简单,就不会给用户带来困扰。
本申请实施例提供的第五种多网卡环境下物理网卡的命名方法,是在上述第四种多网卡环境下物理网卡的命名方法的基础上,还包括如下技术特征:所述调用所述更新规则文件的脚本,更新规则文件包括:
对比旧规则和新规则,如果所述旧规则与所述新规则相同,则不做改变,这就是没有发生网卡替换或新增的情况,无需作出改变;
如果所述新规则是新增网卡得到的,则直接添加所述新规则,也就是说,对于新增网卡,有了新的网卡名,就需要将这种新的对应关系添加进来,等下次重启系统之后就能够识别出这种网卡;
如果所述新规则是替换网卡得到的,则添加所述新规则,删除对应的旧规则,在这种情况下,将之前的网卡的MAC地址和网卡名的对应关系删除,而将替换之后的网卡的MAC地址和网卡名的对应关系添加进来,这样就能够保证下次重启系统之后识别出这种网卡。
以CentOS7系统为例,但不限于CentOS7系统,还可以是其他的Linux操作系统实施方式如下:
首先,修改CentOS7系统的安装文件,添加自适应算法文件,自适应算法文件放入/usr/bin/目录下;
然后,在规则文件如/etc/udev/rules.d/70-persistent-net.rules中添加条目,每个条目中包含了MAC地址和网卡名的对应关系,在最后一个条目中增加了默认的操作,保证没有MAC和网卡名对应关系时,调用自适应算法获得合适的网卡名
最后,将更新规则文件的算法放在/usr/bin/目录下,保证系统启动成功后被调用,更新规则文件。
本申请实施例提供的第一种多网卡环境下物理网卡的命名装置如图2所示,图2为本申请实施例提供的第一种多网卡环境下物理网卡的命名装置的示意图,该装置包括:
生成单元201,用于在操作系统安装完成后,生成包含MAC地址与网卡名的对应关系的原始规则文件,并将自适应算法放置在预设位置,具体的,可以利用Linux系统的Udev模块和规则文件,建立一种可靠的网卡命名规则,根据自适应算法在替换、新增网卡时获得网卡名,在操作系统安装完成后由操作系统安装程序自动生成udev规则文件,并将自适应算法放在合适位置,供udev规则文件调用;
第一返回单元202,用于重启所述操作系统之后,查询所述原始规则文件,返回与当前网卡的MAC地址相对应的网卡名,具体的,重启后操作系统可以使用udev规则文件匹配网卡MAC地址等信息,进行网卡命名;
第二返回单元203,用于对于MAC地址不存在于所述原始规则文件中的网卡,调用所述自适应算法获得并返回网卡名,也就是说,在新增网卡或替换网卡的情况下,调用自适应算法获得网卡名。
本申请实施例提供的第二种多网卡环境下物理网卡的命名装置,是在上述第一种多网卡环境下物理网卡的命名装置的基础上,还包括如下技术特征:
放置单元,用于将更新规则文件的脚本放置在所述操作系统的自启动规则或自启动文件夹中;
更新单元,用于重启完成之后,调用所述更新规则文件的脚本,对所述原始规则文件进行更新。
具体而言,利用更新规则文件的算法对网卡名称固化,下次启动时保持网卡名不变。
本申请实施例提供的第三种多网卡环境下物理网卡的命名装置,是在上述第二种多网卡环境下物理网卡的命名装置的基础上,还包括如下技术特征:
所述第二返回单元具体用于:
利用所述自适应算法对所述原始规则文件中的网卡名进行遍历;
查询所述原始规则文件中的预设原始网卡的MAC地址是否存在于当前硬件环境中,如果不存在,则判定所述MAC地址不存在于所述原始规则文件中的网卡为替换网卡,将所述预设原始网卡的网卡名赋予所述MAC地址不存在于所述原始规则文件中的网卡。
需要说明的是,这种自适应算法能够判断出网卡替换的情况,并且将被替换掉网卡的网卡名直接命名替换后的新的网卡,这样就能够符合用户对于网卡命名的习惯和期望,也不会给用户造成混乱。
本申请实施例提供的第四种多网卡环境下物理网卡的命名装置,是在上述第三种多网卡环境下物理网卡的命名装置的基础上,还包括如下技术特征:
所述第二返回单元具体用于:
当遍历结束之后发现所述原始规则文件中的所有原始网卡的MAC地址均存在于当前硬件环境中,则判定所述MAC地址不存在于所述原始规则文件中的网卡为新增网卡,将所述MAC地址不存在于所述原始规则文件中的网卡命名为eth-N,其中N为当前硬件环境中的网卡的总个数。
需要说明的是,这种情况下,原来的所有网卡任然都存在与硬件环境中,没有减少,就说明所述MAC地址不存在于所述原始规则文件中的网卡就是新增网卡,就将其命名为eth-N,既保证不会与其他网卡的网卡名重复,也更符合用户的命名习惯,且命名方式简单,就不会给用户带来困扰。
本申请实施例提供的第五种多网卡环境下物理网卡的命名装置,是在上述第四种多网卡环境下物理网卡的命名装置的基础上,还包括如下技术特征:
所述更新单元包括:
对比部件,用于对比旧规则和新规则,如果所述旧规则与所述新规则相同,则不做改变,这就是没有发生网卡替换或新增的情况,无需做出改变;
第一更新部件,用于如果所述新规则是新增网卡得到的,则直接添加所述新规则,也就是说,对于新增网卡,有了新的网卡名,就需要将这种新的对应关系添加进来,等下次重启系统之后就能够识别出这种网卡;
第二更新部件,用于如果所述新规则是替换网卡得到的,则添加所述新规则,删除对应的旧规则,在这种情况下,将之前的网卡的MAC地址和网卡名的对应关系删除,而将替换之后的网卡的MAC地址和网卡名的对应关系添加进来,这样就能够保证下次重启系统之后识别出这种网卡。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。