一种处理带VLAN TAG的DHCP数据的方法及系统技术方案

技术编号:21803499 阅读:38 留言:0更新日期:2019-08-07 11:39
本发明专利技术公开了一种处理带VLAN TAG的DHCP数据的方法及系统,涉及智能终端通信技术领域,本发明专利技术通过实时捕获客户端发送的报文,对报文进行封装重组,形成新的以太网数据帧,来实现对带VLAN TAG的DHCP数据的处理,从而给客户端分配新的IP,DNS等地址信息,提高程序的调试、开发以及业务的测试的便利性和时效性。

A Method and System for Processing DHCP Data with VLAN TAG

【技术实现步骤摘要】
一种处理带VLANTAG的DHCP数据的方法及系统
本专利技术涉及智能终端通信
,具体涉及一种处理带VLANTAG的DHCP数据的方法及系统。
技术介绍
目前Linux开源的DHCPServer收发的数据都是三层数据,VLANTAG在Linux内核协议栈被剥离了,所以不能处理带有VLANTAG的协议数据,如果当客户端发送的DHCP数据带有VLANTAG时,则普通的DHCPServer无法给其分配IP地址。此时需要借助上行的路由设备来配置带有VLANTAG的WAN连接。但是,当上行的路由设备配置了VLANTAG之后,可能会与接入的网络无法匹配,导致无法连接Internet网络,进而给程序调试及业务测试带来不便,导致调试进展的放慢及效率的下降。
技术实现思路
针对现有技术中存在的缺陷,本专利技术的目的在于提供一种处理带VLANTAG的DHCP数据的方法及系统,能处理客户端发送的带VLANTAG的DHCP数据。为达到以上目的,本专利技术采取的技术方案是:本专利技术提供一种处理带VLANTAG的DHCP数据的方法,包括以下步骤:捕获客户端发送的报文,过滤出DHCP协议报文;从报文中解析出VLANTAG、客户端MAC、源IP、目的IP和端口信息;根据报文中获取的VLANTAG和客户端MAC,获得服务端分配给与VLANTAG和客户端MAC对应的客户端的IP和DNS信息;根据获得的VLANTAG、客户端MAC、源IP、目的IP、端口信息、待回复给客户端的IP和DNS信息,按照以太网帧数据格式和DHCP数据格式对报文进行重组,向客户端发送重组后的报文。在上述方案的基础上,所述捕获客户端发送的报文,具体包括以下步骤:通过API接口函数,实时捕获客户端发送的、到达服务端网口的报文。在上述方案的基础上,所述过滤出DHCP协议报文,包括以下步骤:设置过滤参数,提取出DHCP协议报文;将过滤出的报文,复制到预先指定的缓冲队列中。在上述方案的基础上,所述根据获得的VLANTAG、客户端MAC、源IP、目的IP、端口信息、待回复给客户端的IP和DNS信息,按照以太网帧数据格式和DHCP数据格式对报文进行重组,具体包括以下步骤:依次将以太网首部、802.1Q帧、IP报文首部、UDP首部、DHCP应用数据和以太网尾部组成重组后的以太网帧数据,其中:以太网首部包括客户端MAC,802.1Q帧包括VLANTAG的长度和具体的数值,UDP首部包括端口信息,IP报文首部包括协议版本号、源IP和目的IP,DHCP应用数据包括待回复给客户端的IP和DNS信息。在上述方案的基础上,所述向客户端发送重组后的报文,具体包括以下步骤:采用开源的发送以太网帧的接口函数,实现重组后的报文的发送。本专利技术还提供一种处理带VLANTAG的DHCP数据的系统,包括:报文捕获模块,其用于:捕获客户端发送的报文;报文过滤模块,其用于:设置报文过滤器,过滤出DHCP协议报文;报文解析模块,其用于:从报文中解析出VLANTAG、客户端MAC、源IP、目的IP和端口信息;信息查找模块,其用于:根据报文中获取的VLANTAG和客户端MAC,获得服务端分配给与VLANTAG和客户端MAC对应的客户端的IP和DNS信息;报文重组模块,其用于:根据获得的VLANTAG、客户端MAC、源IP、目的IP、端口信息、待回复给客户端的IP和DNS信息,按照以太网帧数据格式和DHCP数据格式对报文进行重组;报文发送模块,其用于:向客户端发送重组后的报文。在上述方案的基础上,所述报文捕获模块捕获客户端发送的报文,具体包括以下步骤:通过API接口函数,实时捕获客户端发送的、到达服务端网口的数据报文。在上述方案的基础上,所述报文过滤模块过滤出DHCP协议报文,包括以下步骤:通过设置过滤参数,提取出DHCP协议报文;将过滤出的报文,复制到预先指定的缓冲队列中,等待依次进行处理。在上述方案的基础上,所述报文重组模块根据获得的VLANTAG、客户端MAC、源IP、目的IP、端口信息、待回复给客户端的IP和DNS信息,按照以太网帧数据格式和DHCP数据格式对报文进行重组,具体包括以下步骤:依次将以太网首部、802.1Q帧、IP报文首部、UDP首部、DHCP应用数据和以太网尾部组成重组后的以太网帧数据,其中:以太网首部包括客户端MAC,802.1Q帧包括VLANTAG的长度和具体的数值,UDP首部包括端口信息,IP报文首部包括协议版本号、源IP和目的IP,DHCP应用数据包括待回复给客户端的IP和DNS信息。在上述方案的基础上,所述报文发送模块向客户端发送重组后的报文,具体包括以下步骤:采用开源的发送以太网帧的接口函数,实现重组后的报文的发送。与现有技术相比,本专利技术的优点在于:本专利技术通过实时捕获客户端发送的报文,对报文进行封装重组,形成新的以太网数据帧,来实现对带VLANTAG的DHCP数据的处理,从而给客户端分配新的IP,DNS等地址信息,提高程序的调试、开发以及业务的测试的便利性和时效性。附图说明图1为本专利技术实施例的实现处理带VLANTAG的DHCP数据的方法的网络环境结构示意图;图2为本专利技术实施例的实现处理带VLANTAG的DHCP数据的系统的流程示意图。具体实施方式以下结合附图对本专利技术的实施例作进一步详细说明。参见图1所示,本专利技术实施例用于实现DHCP客户端与DHCP服务端之间带VLANTAG的DHCP数据的交互。参见图2所示,本专利技术实施例提供一种处理带VLANTAG的DHCP数据的方法,包括以下步骤:S1,捕获客户端发送的报文,过滤出DHCP协议报文;S2,从报文中解析出VLANTAG、客户端MAC、源IP、目的IP和端口信息;S3,根据报文中获取的VLANTAG和客户端MAC,获得服务端分配给与VLANTAG和客户端MAC对应的客户端的IP和DNS信息;S4,根据获得的VLANTAG、客户端MAC、源IP、目的IP、端口信息、待回复给客户端的IP和DNS信息,按照以太网帧数据格式和DHCP数据格式对报文进行重组,向客户端发送重组后的报文。本专利技术实施例通过实时捕获客户端发送的报文,对报文进行封装重组,形成新的以太网数据帧,来实现对带VLANTAG的DHCP数据的处理,从而给客户端分配新的IP,DNS等地址信息,提高程序的调试、开发以及业务的测试的便利性和时效性,并避免与接入的网络无法匹配的问题。作为优选的实施方式,所述捕获客户端发送的报文,具体包括以下步骤:通过API接口函数,实时捕获客户端发送的、到达服务端网口的数据报文。例如,Linux下开源的PCAP代码,通过其提供的接口函数来实时捕获网络接口eth0中收到的数据包。作为优选的实施方式,所述过滤出DHCP协议报文,包括以下步骤:设置过滤参数,提取出DHCP协议报文;将过滤出的报文,复制到预先指定的缓冲队列中,等待依次进行下一步处理。例如,通过设置过滤参数"udpport67||vlan||vlanandudpport67"来对报文进行过滤,提取出DHCP协议相关的报文,由于只需要处理DHCP协议相关数据,那么其他的数据将其丢弃。此过程也是通过指定的API接口进行数据抓包,放入其预先设定的数据缓冲BUFFER中,进行临时存储。作为优选的实施方式,本文档来自技高网...

【技术保护点】
1.一种处理带VLAN TAG的DHCP数据的方法,其特征在于,包括以下步骤:捕获客户端发送的报文,过滤出DHCP协议报文;从报文中解析出VLAN TAG、客户端MAC、源IP、目的IP和端口信息;根据报文中获取的VLAN TAG和客户端MAC,获得服务端分配给与VLAN TAG和客户端MAC对应的客户端的IP和DNS信息;根据获得的VLAN TAG、客户端MAC、源IP、目的IP、端口信息、待回复给客户端的IP和DNS信息,按照以太网帧数据格式和DHCP数据格式对报文进行重组,向客户端发送重组后的报文。

【技术特征摘要】
1.一种处理带VLANTAG的DHCP数据的方法,其特征在于,包括以下步骤:捕获客户端发送的报文,过滤出DHCP协议报文;从报文中解析出VLANTAG、客户端MAC、源IP、目的IP和端口信息;根据报文中获取的VLANTAG和客户端MAC,获得服务端分配给与VLANTAG和客户端MAC对应的客户端的IP和DNS信息;根据获得的VLANTAG、客户端MAC、源IP、目的IP、端口信息、待回复给客户端的IP和DNS信息,按照以太网帧数据格式和DHCP数据格式对报文进行重组,向客户端发送重组后的报文。2.如权利要求1所述的方法,其特征在于,所述捕获客户端发送的报文,具体包括以下步骤:通过API接口函数,实时捕获客户端发送的、到达服务端网口的报文。3.如权利要求1所述的方法,其特征在于,所述过滤出DHCP协议报文,包括以下步骤:设置过滤参数,提取出DHCP协议报文;将过滤出的报文,复制到预先指定的缓冲队列中。4.如权利要求1所述的方法,其特征在于,所述根据获得的VLANTAG、客户端MAC、源IP、目的IP、端口信息、待回复给客户端的IP和DNS信息,按照以太网帧数据格式和DHCP数据格式对报文进行重组,具体包括以下步骤:依次将以太网首部、802.1Q帧、IP报文首部、UDP首部、DHCP应用数据和以太网尾部组成重组后的以太网帧数据,其中:以太网首部包括客户端MAC,802.1Q帧包括VLANTAG的长度和具体的数值,UDP首部包括端口信息,IP报文首部包括协议版本号、源IP和目的IP,DHCP应用数据包括待回复给客户端的IP和DNS信息。5.如权利要求1所述的方法,其特征在于:所述向客户端发送重组后的报文,具体包括以下步骤:采用开源的发送以太网帧的接口函数,实现重组后的报文的发送。6.一种处理带VLANTAG的DHCP数据的系统,其特征在于,包括:报文捕获模块,其用于:捕获客户端发送的报...

【专利技术属性】
技术研发人员:王建功张志本石王刚
申请(专利权)人:烽火通信科技股份有限公司
类型:发明
国别省市:湖北,42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1