CN102209123B - Mac地址管理方法、***、mac地址服务器及客户机 - Google Patents

Mac地址管理方法、***、mac地址服务器及客户机 Download PDF

Info

Publication number
CN102209123B
CN102209123B CN201110141820.9A CN201110141820A CN102209123B CN 102209123 B CN102209123 B CN 102209123B CN 201110141820 A CN201110141820 A CN 201110141820A CN 102209123 B CN102209123 B CN 102209123B
Authority
CN
China
Prior art keywords
mac address
address
message
virtual server
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201110141820.9A
Other languages
English (en)
Other versions
CN102209123A (zh
Inventor
蔡康
冯明
樊勇兵
唐宏
金华敏
赖培源
陈楠
燕杰
秦润锋
陈天
蒋春元
李巧玲
陈培鸿
朱培军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Telecom Corp Ltd
Original Assignee
China Telecom Corp Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Telecom Corp Ltd filed Critical China Telecom Corp Ltd
Priority to CN201110141820.9A priority Critical patent/CN102209123B/zh
Publication of CN102209123A publication Critical patent/CN102209123A/zh
Application granted granted Critical
Publication of CN102209123B publication Critical patent/CN102209123B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Small-Scale Networks (AREA)

Abstract

本发明公开了一种MAC地址管理方法、***、MAC地址服务器及客户机。其中,该方法包括MAC地址服务器接收客户机发送的地址申请消息,地址申请消息包含客户机的建议地址;MAC地址服务器根据建议地址在可用MAC地址库中搜索客户机可用的MAC地址;如果搜索到可用的MAC地址,则向客户机发送地址分配消息,地址分配消息包括搜索到的可用MAC地址,并将搜索到的可用MAC地址从可用MAC地址库中移除。本发明不仅能够解决虚拟服务器MAC地址统一规划管理及唯一性校验的问题,而且还可以提高虚拟服务器MAC地址的分配效率、虚拟化环境的安全性和稳定性。

Description

MAC地址管理方法、***、MAC地址服务器及客户机
技术领域
本发明涉及计算机科学虚拟化技术领域,特别地,涉及一种MAC地址管理方法、***、MAC地址服务器及客户机。
背景技术
媒体接入控制(Medium Access Control,MAC)地址是由48比特(即,6个字节)、十六进制的数字组成,其中,前24bit为组织唯一标识(Organizationally Unique Identifier,OUI),由生产厂家向IEEE申请分配,其中有2个bit位为特殊标示位,分别为全球统一或本地标识和组播标示。传统物理服务器的MAC地址一般都是在出厂时固定在物理网卡上,由不同的网卡生产厂家分配。
在虚拟化环境中,虚拟服务器管理器(Virtual Machine Monitor,VMM)在创建虚拟服务器或虚拟服务器启动时需要为虚拟服务器分配可用的MAC地址或者检查虚拟服务器已有MAC地址的可用性。从目前来看,虚拟服务器的MAC地址分配主要有以下几种方法:
(1)VMWare公司的VMware ESX虚拟化软件:虚拟服务器MAC地址的前三个字节使用VMWare向OUI申请的固定地址(00-50-56),第四个字节通过虚拟服务器管理中心(vCenter)的编号(vCenterID)计算得到,最后两个字节则由VMM随机生成。在虚拟服务器启动之前,vCenter还将检查虚拟服务器的MAC地址是否重复,如果虚拟化环境中没有vCenter,则MAC的OUI将会不同。
(2)微软公司的Hyper-V虚拟化软件:前三个字节使用微软向OUI申请的固定地址(00-15-5d),第四和第五个字节通过VMM的IP地址转换得到,最后一个字节由Hyper-V从头开头分配,从地址池中最小的MAC地址开始一直往下分配,遇到已经分配的MAC地址则跳过这个地址再继续往下寻找,找到空闲的MAC地址便分配给虚拟服务器。
(3)Citrix公司的Xen虚拟化软件:虚拟服务器MAC地址的前三个字节一般使用IEEE OUI为Xen domU保留的一段MAC地址(00-16-3e),后面三个字节由VMM随机生成。
(4)Redhat公司的KVM虚拟化软件:虚拟服务器MAC地址一般是在创建虚拟服务器时由人工输入MAC地址。
发明人经过分析发现,目前虚拟服务器的MAC地址分配方法在应用时会存在以下缺点和不足:
(1)现有的大部分MAC地址分配方法都采用先由VMM进行分配之后再做唯一性校验的方式,如果发现重复,则再重新分配之后再做校验,例如,VMWare,这造成分配效率较低,尤其是像KVM的人工输入方式,在应用中将给***管理员带来极大的工作量,也无法充分发挥虚拟服务器快速部署的优势,分配效率低下。
(2)现有的大部分MAC地址分配方法一些情况下在使用前不能进行MAC地址的唯一性校验,因此不能保证子网内虚拟机MAC地址的唯一性。例如,没有vCenter的虚拟化环境就没有MAC地址的唯一性校验,多个Hyper-V主机间虚拟服务器的MAC地址也没有唯一性校验,Xen也存在同样的问题,这样就会导致网络通信的混乱、信息的不安全、甚至会造成虚拟服务器不能正常使用。
(3)现有的大部分MAC地址分配方法都缺乏统一的管理,一方面带来了很多管理上的问题,例如,MAC地址的回收和重用往往很难有很好的实现,跨多个虚拟化软件之间的虚拟服务器MAC地址的唯一性校验目前还没有较好的方法;另一方面也造成管理效率低下,已分配的MAC地址和可用的地址池没有做统一的统计规划,在分配的时候往往需要通过被动随机尝试的方式进行,随机选择一个尝试失败以后再随机选择,与有统一管理的情况下进行主动合理分配的方式相比,效率要低很多。
发明内容
本发明要解决的一个技术问题是提供一种MAC地址管理方法、***、MAC地址服务器及客户机,能够在虚拟化环境中高效地为虚拟服务器分配可用的MAC地址。
根据本发明的一方面,提出了一种MAC地址管理方法,包括MAC地址服务器接收客户机发送的地址申请消息,地址申请消息包含客户机的建议地址;MAC地址服务器根据建议地址在可用MAC地址库中搜索客户机可用的MAC地址;如果搜索到可用的MAC地址,则向客户机发送地址分配消息,地址分配消息包括搜索到的可用MAC地址,并将搜索到的可用MAC地址从可用MAC地址库中移除。
根据本发明的另一方面,还提出了一种MAC地址服务器,包括第一消息接收单元,用于接收客户机发送的地址申请消息,地址申请消息包含客户机的建议地址;地址搜索单元,与第一消息接收单元相连,用于根据建议地址在可用MAC地址库中搜索客户机可用的MAC地址;第一消息发送单元,与地址搜索单元相连,用于在搜索到可用的MAC地址的情况下向客户机发送地址分配消息,地址分配消息包括搜索到的可用MAC地址;地址管理单元,与地址搜索单元相连,用于将搜索到的可用MAC地址从可用MAC地址库中移除。
根据本发明的又一方面,还提出了一种客户机,包括第二消息发送单元,用于向MAC地址服务器发送地址申请消息,地址申请消息包含客户机的建议地址;第二消息接收单元,用于接收MAC地址服务器发送的地址分配消息,地址分配消息包括MAC地址服务器搜索到的虚拟服务器可用的MAC地址。
根据本发明的再一方面,还提出了一种MAC地址管理***,包括前述MAC地址服务器和客户机,其中,MAC地址服务器和客户机通过IP网络相连。
本发明提供的MAC地址管理方法、***、MAC地址服务器及客户机,基于客户机-服务器(C/S)模式动态地为客户机承载的虚拟服务器分配MAC地址,不仅能够解决虚拟服务器MAC地址统一规划管理及唯一性校验的问题,而且还可以提高虚拟服务器MAC地址的分配效率、虚拟化环境的安全性和稳定性。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分。在附图中:
图1是本发明实施例的应用场景示意图。
图2是本发明MAC地址管理方法的一个实施例的流程示意图。
图3是本发明虚拟服务器MAC地址释放过程的流程示意图。
图4是本发明虚拟服务器MAC地址的可用性校验流程示意图。
图5是本发明MAC地址服务器的一个实施例的结构示意图。
图6是本发明客户机的一个实施例的结构示意图。
图7是本发明MAC地址管理***的一个实施例的结构示意图。
具体实施方式
下面参照附图对本发明进行更全面的描述,其中说明本发明的示例性实施例。本发明的示例性实施例及其说明用于解释本发明,但并不构成对本发明的不当限定。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
本发明的下述实施例适用于一般的IP网络,对传输链路和传输设备没有特殊的要求,只要客户机VMM和服务器之间能进行正常的IP通信。
图1是本发明实施例的应用场景示意图。
如图1所示,在一个IP网络中有一台主机作为MAC地址服务器和两台安装了VMM软件的物理服务器(即,客户机A和客户机B),在客户机A和客户机B上各承载着一些虚拟服务器,例如,客户机A上承载着虚拟服务器C,客户机B上承载着虚拟服务器D。MAC地址服务器上维护着与其相连的所有客户机的信息,包括客户机的通信信息、已申请的MAC地址以及正在使用的MAC地址。
MAC地址服务器和客户机的通信报文格式如下述表1所示:
Figure BDA0000064643150000051
表1
其中,MAC地址服务器和客户机两者之间的通信信息可以在传统的IP报头中获取,上述表1中各字段的长度和含义如下述表2所示:
Figure BDA0000064643150000052
表2
图2是本发明MAC地址管理方法的一个实施例的流程示意图。
如图2所示,该实施例可以包括以下步骤:
S202,MAC地址服务器接收客户机发送的地址申请消息,该地址申请消息包含客户机的建议地址;
S204,MAC地址服务器根据建议地址在可用MAC地址库中搜索客户机可用的MAC地址;
S206,如果搜索到可用的MAC地址,则向客户机发送地址分配消息,地址分配消息包括搜索到的可用MAC地址,并将搜索到的可用MAC地址从可用MAC地址库中移除,并添加到已占用MAC地址库中,否则,向客户机发送地址枯竭消息。
举例说明,如图1所示,当客户机A要创建一台虚拟服务器C时,如果***管理员没有手动设定MAC地址,客户机则将数据报的第一个字节“消息类型”设为1,然后可用根据自身的需要(例如,需要标识自己的虚拟化软件)将地址长度设为3,再在“建议地址”中将自己的OUI填进去,后面补0,例如,VMWare虚拟化软件可以填为00-50-56-00-00-00。这样服务器在收到地址申请消息后会利用客户机提供的建议地址的前三个字节在可用MAC地址库中进行搜索,一旦找到与建议地址的前三个字节相同的MAC地址就将该地址填入“分配地址”中,并把“消息类型”设为3,向客户机发送地址分配消息,同时将该MAC地址从可用MAC地址库中移除,并将其添加到已占用MAC地址库中,至此完成一次MAC地址的分配过程。
可选地,还可用将可用MAC地址库细分为未曾使用的MAC地址库和曾使用但未被占用的MAC地址库。首先,MAC地址服务器在收到地址申请消息后,根据建议地址的前三个字节在未曾使用的MAC地址库中进行搜索,一旦找到与建议地址的前三个字节相同的MAC地址就将该地址填入“分配地址”中,并把“消息类型”设为3,向客户机发送地址分配消息,同时将该MAC地址从可用MAC地址库中移除,并添加到已占用MAC地址库中,如果在未曾使用的MAC地址库中没有找到合适的地址,则MAC地址服务器将在曾使用但未被占用的MAC地址库中进一步查找,将搜索范围扩大到曾经分配过但目前不被占用的地址,如果找到合适的地址,则和上面一样进行正常分配,如果没有找到合适的地址,则将“消息类型”设为7,向客户机发送地址枯竭消息,并向***管理员报错。
该实施例基于客户机-服务器(C/S)模式动态地为客户机承载的虚拟服务器分配MAC地址,不仅能够解决虚拟服务器MAC地址统一规划管理及唯一性校验的问题,而且还可以提高虚拟服务器MAC地址的分配效率、虚拟化环境的安全性和稳定性。
进一步地,在虚拟服务器从运行状态转为关闭状态超过预定时间后,启动虚拟服务器的MAC地址释放过程。
图3是本发明虚拟服务器MAC地址释放过程的流程示意图。
如图3所示,该地址释放过程可以包括以下步骤:
S302,MAC地址服务器接收客户机发送的地址释放消息,地址释放消息包含待释放的地址;
S304,MAC地址服务器将待释放的地址从已占用MAC地址库中移到可用MAC地址库中。
举例说明,当客户机发现其承载的虚拟服务器从运行状态转为关闭状态超过一定时间T1,则启动地址释放过程。具体地,将要释放的地址添加到“释放地址”字段,将“消息类型”设为4,向MAC地址服务器发送地址释放消息。MAC地址服务器在收到该地址释放消息后,将待释放的地址从已占用MAC地址库中移除,同时添加到可用MAC地址库中。
从该实施例可以看出,MAC地址的释放过程可以高效利用有限的MAC地址资源。
此外,这个固定时间T1可以由***管理员设定,例如,一个小时。当然,根据MAC地址池的容量,***管理员也可以设定取消地址释放过程,即,虚拟服务器一旦分配到该MAC地址之后,在没有管理员参与修改的情况下可以永久占用该地址。
另外,在虚拟服务器从关闭状态转为开启状态时,启动虚拟服务器的MAC地址可用性校验过程。
图4是本发明虚拟服务器MAC地址的可用性校验流程示意图。
如图4所示,MAC地址的可用性校验过程可以包括以下步骤:
S402,MAC地址服务器接收客户机发送的地址校验消息,地址校验消息包括虚拟服务器关闭前所使用的MAC地址;
S404,MAC地址服务器在已占用MAC地址库中查找是否存在虚拟服务器关闭前所使用的MAC地址;
S406,如果不存在,则向客户机发送地址可用消息,并将虚拟服务器关闭前所使用的MAC地址从可用MAC地址库中移除,并添加到已占用MAC地址库中;
S408,如果存在,则MAC地址服务器在可用MAC地址库中查找是否存在与虚拟服务器关闭前所使用的MAC地址相似的MAC地址,其中,相似的MAC地址是指其前五个字节与虚拟服务器关闭前所使用的MAC地址的前五个字节相同、其前四个字节与虚拟服务器关闭前所使用的MAC地址的前四个字节相同、或其前三个字节与虚拟服务器关闭前所使用的MAC地址的前三个字节相同;
S410,如果存在,则向客户机发送新地址分配消息,新地址分配消息包含查找到的与虚拟服务器关闭前所使用的MAC地址相似的MAC地址,并将相似的MAC地址从可用MAC地址库中移除,并添加到已占用MAC地址库中,如果不存在,则向客户机发送地址不可用消息。
举例说明,仍参见图1,当客户机B承载的虚拟服务器D从关闭状态下开启时,客户机B要将虚拟服务器D上一次使用的MAC地址发送到MAC地址服务器,由MAC地址服务器进行可用性的校验。此时客户机B将“校验地址”设为虚拟服务器D上一次使用的MAC地址,并将“消息类型”设为2,通过IP网络向MAC地址服务器发送地址校验消息。
MAC地址服务器在收到该地址校验消息后,先在已占用MAC地址库中查找是否存在该校验地址,如果没有找到该地址,则将“消息类型”设为5,向客户机B发送地址可用消息,同时将该校验地址从可用地址库中移到已占用MAC地址库中。如果找到该地址,则说明该地址目前正被其他虚拟服务器所使用,虚拟服务器D将不能再使用该地址。首先,MAC地址服务器在可用MAC地址库中查找和该校验MAC地址前五个字节相同的MAC地址,如果找到了最相似的地址,则MAC地址服务器将“消息类型”设为3,并将找到的第一个最相似地址发送给客户机B,同时将该地址从可用MAC地址库移到已占用MAC地址库中;如果没有找到最相似的地址,则继续在可用MAC地址库中查找与该校验MAC地址的前四个字节相同的MAC地址,如果找到则以上面同样的方式向客户机发送该分配地址。如果没有找到,则类似地在可用MAC地址库中继续查找前三个字节相同的情况,并作相应处理。如果MAC地址服务器还没有找到相似的地址,则将“消息类型”设为6,向客户机B发送地址不可用消息,以表明该校验地址不可用。
相应地,在客户机上,虚拟服务器的MAC地址可用性校验过程还可以包括:
S412,客户机判断接收到的消息类型;
S414,如果为地址可用消息,则直接使用并启动虚拟服务器;
S416,如果为新地址分配消息,则判断虚拟服务器关闭前所使用的MAC地址是否为管理员手动设定或锁定为不可改写,如果是,则向MAC地址服务器发送地址释放消息以释放所分配的MAC地址,否则,客户机检查所分配的MAC地址是否符合客户机设定的地址要求,如果符合要求,则将所分配的MAC地址作为虚拟服务器的MAC地址启动虚拟服务器,否则,向MAC地址服务器发送地址释放消息以释放所分配的MAC地址。
举例说明,客户机在发送地址校验消息后,如果收到地址可用消息,则直接使用并启动虚拟机,如果收到的是地址分配消息,则检查历史MAC地址是否为***管理员手动设定或者已锁定不可改写MAC地址,如果是,则向MAC地址服务器发送MAC地址释放消息,释放新分配的MAC地址,同时向***管理员报错,告知***管理员所设MAC地址已被占用。如果为非人工设定的MAC地址,并且也不是其他不可改写的情况,则客户机则将检查新分配的MAC地址是否符合客户机上设定的要求,例如,前三个字段是否为其厂家标示、针对VMWare软件,其第四个字节的vCenter是否正确、针对Hyper-V软件,其第四和第五额字节是否与IP地址相关等,如果符合要求,则MAC地址服务器将上次分配的MAC地址改写为新分配的MAC地址,并正常启动虚拟服务器。如果新分配的MAC地址不符合要求,则客户机将向MAC地址服务器发送新MAC地址释放信息,同时向管理员报错,例如,没有可用的MAC地址。
如果客户机在发送地址校验消息后收到地址不可用信息,则检查历史MAC地址是否为***管理员手动设定或者已锁定不可改写MAC地址,如果是,则向***管理员报错,告知***管理员所设MAC地址已被占用,否则,重新按照地址分配流程发起对MAC地址的申请,具体流程如图2所示。
图5是本发明MAC地址服务器的一个实施例的结构示意图。
如图5所示,该实施例的MAC地址服务器50可以包括:
第一消息接收单元51,用于接收客户机发送的地址申请消息,地址申请消息包含客户机的建议地址;
地址搜索单元52,与第一消息接收单元相连,用于根据建议地址在可用MAC地址库中搜索客户机可用的MAC地址,例如,在可用MAC地址库中搜索与建议地址前三个字节相同的MAC地址作为可用的MAC地址;
第一消息发送单元53,与地址搜索单元相连,用于在搜索到可用的MAC地址的情况下向客户机发送地址分配消息,地址分配消息包括搜索到的可用MAC地址;
地址管理单元54,与地址搜索单元相连,用于将搜索到的可用MAC地址从可用MAC地址库中移除,并添加到已占用MAC地址库中。
该实施例基于客户机-服务器(C/S)模式动态地为客户机承载的虚拟服务器分配MAC地址,不仅能够解决虚拟服务器MAC地址统一规划管理及唯一性校验的问题,而且还可以提高虚拟服务器MAC地址的分配效率、虚拟化环境的安全性和稳定性。
进一步地,在虚拟服务器从运行状态转为关闭状态超过预定时间后启动虚拟服务器的MAC地址释放过程,相应地:
第一消息接收单元,还用于接收客户机发送的地址释放消息,地址释放消息包含待释放的地址;
地址管理单元,与第一消息接收单元相连,还用于将待释放的地址从已占用MAC地址库中移到可用MAC地址库中。
另外,在虚拟服务器从关闭状态转为开启状态时启动虚拟服务器的MAC地址可用性校验过程,相应地:
第一消息接收单元,还用于接收客户机发送的地址校验消息,地址校验消息包括虚拟服务器关闭前所使用的MAC地址;
地址搜索单元,还用于在已占用MAC地址库中查找是否存在虚拟服务器关闭前所使用的MAC地址,在已占用MAC地址库中存在虚拟服务器关闭前所使用的MAC地址的情况下在可用MAC地址库中查找是否存在与虚拟服务器关闭前所使用的MAC地址相似的MAC地址;
第一消息发送单元,还用于在已占用MAC地址库中不存在虚拟服务器关闭前所使用的MAC地址的情况下向客户机发送地址可用消息,在可用MAC地址库中存在与虚拟服务器关闭前所使用的MAC地址相似的MAC地址的情况下向客户机发送新地址分配消息,新地址分配消息包含查找到的与虚拟服务器关闭前所使用的MAC地址相似的MAC地址,在可用MAC地址库中不存在与虚拟服务器关闭前所使用的MAC地址相似的MAC地址的情况下向客户机发送地址不可用消息;
地址管理单元,还用于在向客户机发送地址可用消息时将虚拟服务器关闭前所使用的MAC地址从可用MAC地址库中移除,并添加到已占用MAC地址库中,在向客户机发送新地址分配消息时将相似的MAC地址从可用MAC地址库中移除,并添加到已占用MAC地址库中。
图6是本发明客户机的一个实施例的结构示意图。
如图6所示,该实施例的客户机60可以包括:
第二消息发送单元61,用于向MAC地址服务器发送地址申请消息,地址申请消息包含客户机的建议地址;
第二消息接收单元62,用于接收MAC地址服务器发送的地址分配消息,地址分配消息包括MAC地址服务器搜索到的虚拟服务器可用的MAC地址。
该实施例基于客户机-服务器(C/S)模式动态地为客户机承载的虚拟服务器分配MAC地址,不仅能够解决虚拟服务器MAC地址统一规划管理及唯一性校验的问题,而且还可以提高虚拟服务器MAC地址的分配效率、虚拟化环境的安全性和稳定性。
进一步地,在虚拟服务器从运行状态转为关闭状态超过预定时间后启动虚拟服务器的MAC地址释放过程,相应地:
第二消息发送单元,还用于向MAC地址服务器发送地址释放消息,地址释放消息包含待释放的地址。
另外,在虚拟服务器从关闭状态转为开启状态时启动虚拟服务器的MAC地址可用性校验过程,相应地:
第二消息发送单元,还用于向MAC地址服务器发送地址校验消息,地址校验消息包括虚拟服务器关闭前所使用的MAC地址;
第二消息接收单元,还用于在已占用MAC地址库中不存在虚拟服务器关闭前所使用的MAC地址情况下接收MAC地址服务器发送的地址可用消息,在可用MAC地址库中存在虚拟服务器关闭前所使用的MAC地址情况下接收MAC地址服务器发送的新地址分配消息,新地址分配消息包含查找到的与虚拟服务器关闭前所使用的MAC地址相似的MAC地址,在可用MAC地址库中不存在虚拟服务器关闭前所使用的MAC地址情况下接收MAC地址服务器发送的地址不可用消息。
进一步地,为了完成MAC地址的校验过程,客户机还可以包括:
判断单元,与第二消息接收单元相连,用于判断所接收消息的类型;
消息处理单元,与判断单元相连,用于在接收到的消息为地址可用消息时直接使用并启动虚拟服务器,在接收到的消息为新地址分配消息时判断虚拟服务器关闭前所使用的MAC地址是否为管理员手动设定或锁定为不可改写,在接收到的消息为新地址分配消息、虚拟服务器关闭前所使用的MAC地址不是管理员手动设定且未锁定为不可改写的情况下检查所分配的MAC地址是否符合客户机设定的地址要求,如果符合要求,则将所分配的MAC地址作为虚拟服务器的MAC地址启动虚拟服务器;
第二消息发送单元,与消息处理单元相连,还用于在接收到的消息为新地址分配消息且虚拟服务器关闭前所使用的MAC地址为管理员手动设定或锁定为不可改写的情况以及所分配的MAC地址不符合要求的情况下向MAC地址服务器发送地址释放消息以释放所分配的MAC地址。
图7是本发明MAC地址管理***的一个实施例的结构示意图。
如图7所示,该实施例的MAC地址管理***70可以包括通过IP网络相互连接的MAC地址服务器71和客户机72,其中,MAC地址管理服务器71可以通过图5所示的方式实现,客户机72可以通过图6所示的方式实现。
上述MAC地址服务器、客户机以及MAC地址管理***可以实现前述MAC地址管理方法的相应流程,具体实例参见方法流程的描述,在此不再重复。
本发明的上述实施例针对虚拟化环境中虚拟机服务器MAC地址分配的特点提出了基于客户机-服务器(C/S)模式的动态MAC地址分配架构,通过设置一个统一的MAC地址服务器,建立一个统一的管理机制,使得每次MAC地址分配或MAC地址唯一性校验都在MAC地址服务器端进行,不仅能有效解决MAC地址分配的复杂性和如何进行唯一性校验的问题,而且还能方便地兼容各种虚拟化软件,实现简单、高效,能够有效解决虚拟服务器MAC地址统一规划管理及唯一性校验的问题,提高虚拟服务器MAC地址的分配效率和虚拟化环境的安全性和稳定性。
虽然已经通过示例对本发明的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本发明的范围。本领域的技术人员应该理解,可在不脱离本发明的范围和精神的情况下,对以上实施例进行修改。本发明的范围由所附权利要求来限定。

Claims (10)

1.一种MAC地址管理方法,其特征在于,包括:
MAC地址服务器接收客户机发送的地址申请消息,所述地址申请消息包含所述客户机的建议地址;
所述MAC地址服务器根据所述建议地址在可用MAC地址库中搜索所述客户机可用的MAC地址;
如果搜索到可用的MAC地址,则向所述客户机发送地址分配消息,所述地址分配消息包括搜索到的可用MAC地址,并将搜索到的可用MAC地址从所述可用MAC地址库中移除;
在所述虚拟服务器从关闭状态转为开启状态时,启动虚拟服务器的MAC地址可用性校验过程,该过程包括:
所述MAC地址服务器接收所述客户机发送的地址校验消息,所述地址校验消息包括虚拟服务器关闭前所使用的MAC地址;
所述MAC地址服务器在已占用MAC地址库中查找是否存在虚拟服务器关闭前所使用的MAC地址;
如果不存在,则向所述客户机发送地址可用消息,并将虚拟服务器关闭前所使用的MAC地址从所述可用MAC地址库中移除;
如果存在,则所述MAC地址服务器在所述可用MAC地址库中查找是否存在与虚拟服务器关闭前所使用的MAC地址相似的MAC地址,其中,相似的MAC地址是指其前五个字节与虚拟服务器关闭前所使用的MAC地址的前五个字节相同、其前四个字节与虚拟服务器关闭前所使用的MAC地址的前四个字节相同、或其前三个字节与虚拟服务器关闭前所使用的MAC地址的前三个字节相同;
如果存在,则向所述客户机发送新地址分配消息,所述新地址分配消息包含查找到的与虚拟服务器关闭前所使用的MAC地址相似的MAC地址,并将相似的MAC地址从所述可用MAC地址库中移除,如果不存在,则向所述客户机发送地址不可用消息。
2.根据权利要求1所述的MAC地址管理方法,其特征在于,还包括:
在所述虚拟服务器从运行状态转为关闭状态超过预定时间后,启动虚拟服务器的MAC地址释放过程。
3.根据权利要求2所述的MAC地址管理方法,其特征在于,所述虚拟服务器的MAC地址释放过程包括:
所述MAC地址服务器接收所述客户机发送的地址释放消息,所述地址释放消息包含待释放的地址;
所述MAC地址服务器将待释放的地址从已占用MAC地址库中移到所述可用MAC地址库中。
4.根据权利要求1所述的MAC地址管理方法,其特征在于,所述虚拟服务器的MAC地址可用性校验过程还包括:
所述客户机判断接收到的消息类型;
如果为所述地址可用消息,则直接使用并启动虚拟服务器;
如果为所述新地址分配消息,则判断虚拟服务器关闭前所使用的MAC地址是否为管理员手动设定或锁定为不可改写,如果是,则向所述MAC地址服务器发送地址释放消息以释放所分配的MAC地址,否则,所述客户机检查所分配的MAC地址是否符合所述客户机设定的地址要求,如果符合要求,则将所分配的MAC地址作为虚拟服务器的MAC地址启动虚拟服务器,否则,向所述MAC地址服务器发送地址释放消息以释放所分配的MAC地址。
5.一种MAC地址服务器,其特征在于,包括:
第一消息接收单元,用于接收客户机发送的地址申请消息和地址校验消息,所述地址申请消息包含所述客户机的建议地址,所述地址校验消息包括虚拟服务器关闭前所使用的MAC地址;
地址搜索单元,与所述第一消息接收单元相连,用于根据所述建议地址在可用MAC地址库中搜索所述客户机可用的MAC地址,在已占用MAC地址库中查找是否存在虚拟服务器关闭前所使用的MAC地址,在所述已占用MAC地址库中存在虚拟服务器关闭前所使用的MAC地址的情况下在所述可用MAC地址库中查找是否存在与虚拟服务器关闭前所使用的MAC地址相似的MAC地址,其中,相似的MAC地址是指其前五个字节与虚拟服务器关闭前所使用的MAC地址的前五个字节相同、其前四个字节与虚拟服务器关闭前所使用的MAC地址的前四个字节相同、或其前三个字节与虚拟服务器关闭前所使用的MAC地址的前三个字节相同;
第一消息发送单元,与所述地址搜索单元相连,用于在搜索到可用的MAC地址的情况下向所述客户机发送地址分配消息,在已占用MAC地址库中不存在虚拟服务器关闭前所使用的MAC地址的情况下向所述客户机发送地址可用消息,在所述可用MAC地址库中存在与虚拟服务器关闭前所使用的MAC地址相似的MAC地址的情况下向所述客户机发送新地址分配消息,所述新地址分配消息包含查找到的与虚拟服务器关闭前所使用的MAC地址相似的MAC地址,在所述可用MAC地址库中不存在与虚拟服务器关闭前所使用的MAC地址相似的MAC地址的情况下向所述客户机发送地址不可用消息,所述地址分配消息包括搜索到的可用MAC地址;
地址管理单元,与所述地址搜索单元相连,用于将搜索到的可用MAC地址从所述可用MAC地址库中移除,在向所述客户机发送地址可用消息时将虚拟服务器关闭前所使用的MAC地址从所述可用MAC地址库中移除,在向所述客户机发送新地址分配消息时将相似的MAC地址从所述可用MAC地址库中移除。
6.根据权利要求5所述的MAC地址服务器,其特征在于,
所述第一消息接收单元,还用于接收所述客户机发送的地址释放消息,所述地址释放消息包含待释放的地址;
所述地址管理单元,与所述第一消息接收单元相连,还用于将待释放的地址从已占用MAC地址库中移到所述可用MAC地址库中。
7.一种客户机,其特征在于,包括:
第二消息发送单元,用于向MAC地址服务器发送地址申请消息和地址校验消息,所述地址申请消息包含所述客户机的建议地址,所述地址校验消息包括虚拟服务器关闭前所使用的MAC地址;
第二消息接收单元,用于接收所述MAC地址服务器发送的地址分配消息,在已占用MAC地址库中不存在虚拟服务器关闭前所使用的MAC地址情况下接收所述MAC地址服务器发送的地址可用消息,在所述可用MAC地址库中存在虚拟服务器关闭前所使用的MAC地址情况下接收所述MAC地址服务器发送的新地址分配消息,所述新地址分配消息包含查找到的与虚拟服务器关闭前所使用的MAC地址相似的MAC地址,在所述可用MAC地址库中不存在虚拟服务器关闭前所使用的MAC地址情况下接收所述MAC地址服务器发送的地址不可用消息,其中,相似的MAC地址是指其前五个字节与虚拟服务器关闭前所使用的MAC地址的前五个字节相同、其前四个字节与虚拟服务器关闭前所使用的MAC地址的前四个字节相同、或其前三个字节与虚拟服务器关闭前所使用的MAC地址的前三个字节相同,所述地址分配消息包括所述MAC地址服务器搜索到的虚拟服务器可用的MAC地址。
8.根据权利要求7所述的客户机,其特征在于,
所述第二消息发送单元,还用于向所述MAC地址服务器发送地址释放消息,所述地址释放消息包含待释放的地址。
9.根据权利要求7所述的客户机,其特征在于,所述客户机还包括:
判断单元,与所述第二消息接收单元相连,用于判断所接收消息的类型;
消息处理单元,与所述判断单元相连,用于在接收到的消息为所述地址可用消息时直接使用并启动虚拟服务器,在接收到的消息为新地址分配消息时判断虚拟服务器关闭前所使用的MAC地址是否为管理员手动设定或锁定为不可改写,在接收到的消息为新地址分配消息、虚拟服务器关闭前所使用的MAC地址不是管理员手动设定且未锁定为不可改写的情况下检查所分配的MAC地址是否符合所述客户机设定的地址要求,如果符合要求,则将所分配的MAC地址作为虚拟服务器的MAC地址启动虚拟服务器;
所述第二消息发送单元,与所述消息处理单元相连,还用于在接收到的消息为新地址分配消息且虚拟服务器关闭前所使用的MAC地址为管理员手动设定或锁定为不可改写的情况以及所分配的MAC地址不符合要求的情况下向所述MAC地址服务器发送地址释放消息以释放所分配的MAC地址。
10.一种MAC地址管理***,其特征在于,包括权利要求5-6中任一项所述的MAC地址服务器和权利要求7-9中任一项所述的客户机,其中,所述MAC地址服务器和所述客户机通过IP网络相连。
CN201110141820.9A 2011-05-30 2011-05-30 Mac地址管理方法、***、mac地址服务器及客户机 Active CN102209123B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110141820.9A CN102209123B (zh) 2011-05-30 2011-05-30 Mac地址管理方法、***、mac地址服务器及客户机

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110141820.9A CN102209123B (zh) 2011-05-30 2011-05-30 Mac地址管理方法、***、mac地址服务器及客户机

Publications (2)

Publication Number Publication Date
CN102209123A CN102209123A (zh) 2011-10-05
CN102209123B true CN102209123B (zh) 2013-10-30

Family

ID=44697781

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110141820.9A Active CN102209123B (zh) 2011-05-30 2011-05-30 Mac地址管理方法、***、mac地址服务器及客户机

Country Status (1)

Country Link
CN (1) CN102209123B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102333133A (zh) * 2011-10-11 2012-01-25 中兴通讯股份有限公司 一种介质访问控制地址分配方法、装置和***
CN103108053A (zh) * 2011-11-10 2013-05-15 中兴通讯股份有限公司 虚拟机的mac地址配置方法、装置及***
CN103171277B (zh) * 2011-12-21 2016-06-01 北大方正集团有限公司 印刷设备的授权方法和装置
CN103312828A (zh) * 2012-03-09 2013-09-18 中兴通讯股份有限公司 虚拟机的mac与ip地址对配置方法、装置及***
CN102685267B (zh) * 2012-05-16 2018-02-16 上海兆民云计算科技有限公司 一种桌面云集群运行态下的ip地址泄露防止方法
CN103108059A (zh) * 2012-12-28 2013-05-15 上海斐讯数据通信技术有限公司 宽带猫mac地址分配方法
CN105068829A (zh) * 2015-07-28 2015-11-18 深圳Tcl数字技术有限公司 特征数据烧录方法、装置及***
CN105847464B (zh) * 2016-05-30 2019-11-29 上海斐讯数据通信技术有限公司 一种多dhcp服务器网络环境下的ip地址管理方法和dhcp客户机
CN107888713B (zh) * 2016-09-30 2021-10-01 中兴通讯股份有限公司 一种动态分配mac地址的方法、装置以及接入设备
CN108306762A (zh) * 2018-01-03 2018-07-20 郑州云海信息技术有限公司 一种基于界面的mac地址管理***和方法
US11050746B2 (en) 2019-01-29 2021-06-29 Cisco Technology, Inc. Media access control (MAC) address anonymization based on allocations by network controller elements
CN111866200B (zh) * 2019-04-30 2022-09-23 烽火通信科技股份有限公司 一种mac地址分段管理方法及***
CN116723175B (zh) * 2023-08-04 2023-11-21 天津华来科技股份有限公司 一种测试设备mac自动化申请方法、装置及存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7457300B2 (en) * 2003-01-21 2008-11-25 Telefonaktiebolaget L M Ericsson (Publ) Ethernet address management system
US7424610B2 (en) * 2003-12-23 2008-09-09 Intel Corporation Remote provisioning of secure systems for mandatory control
CN1696926A (zh) * 2004-05-15 2005-11-16 鸿富锦精密工业(深圳)有限公司 Mac地址自动分配***及方法
CN100493101C (zh) * 2005-10-21 2009-05-27 华为技术有限公司 无线局域网临时媒体访问控制地址的动态分配和回收方法
CN101150597A (zh) * 2006-09-22 2008-03-26 华为技术有限公司 为访问点分配媒体访问控制地址的方法、***和装置

Also Published As

Publication number Publication date
CN102209123A (zh) 2011-10-05

Similar Documents

Publication Publication Date Title
CN102209123B (zh) Mac地址管理方法、***、mac地址服务器及客户机
CN105376303B (zh) 一种Docker实现***及其通信方法
EP3261300B1 (en) Method and device for establishing link between virtual network functions
US10298449B2 (en) Automatically generated virtual network elements for virtualized packet networks
CN103703724B (zh) 一种资源发放方法
CN102571698B (zh) 一种虚拟机访问权限的控制方法、***及装置
EP3338184B1 (en) Technique for reconfiguring a virtual machine
EP2260611B1 (en) Automated power topology discovery
US7778275B2 (en) Method for dynamically allocating network adapters to communication channels for a multi-partition computer system
CN106031116A (zh) 一种ns与vnf的关联方法、装置及***
EP3211531B1 (en) Virtual machine start method and apparatus
CN114070822B (zh) 一种Kubernetes Overlay IP地址管理方法
CN105704042A (zh) 报文处理方法、bng及bng集群***
CN103747107A (zh) 一种兼容式云操作平台及其实现方法
US10761869B2 (en) Cloud platform construction method and cloud platform storing image files in storage backend cluster according to image file type
EP3442201A1 (en) Cloud platform construction method and cloud platform
CN103580909B (zh) 一种硬件资源定制方法及装置
WO2014029239A1 (zh) 虚拟机放置策略的配置方法及装置
CN102708063B (zh) 磁盘空间管理方法及装置
US11720460B2 (en) Enhanced configuration management of data processing clusters
US20130315096A1 (en) Network infrastructure provisioning with automated channel assignment
US11573819B2 (en) Computer-implemented method for reducing service disruption times for a universal customer premise equipment, uCPE, device with resource constraint in a network functions virtualization, NFV, network infrastructure
US11669075B2 (en) Automation device, computer program, computer-readable medium and method for automatically configuring an automation device
CN108124022B (zh) 一种网络地址转换管理方法及装置
JP2019519165A (ja) ネットワーク機器のスタッキング

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant