多VLAN环境下共享动态地址池的方法及系统
技术领域
本发明涉及通信领域,具体而言,涉及无线局域网系统中多VLAN环境下共享动态地址池的方法及系统。
背景技术
虚拟局域网是一种将物理网络划分成多个逻辑局域网的技术,每个VLAN都有一个虚拟局域网标识符(VLANID)。利用VLAN技术,网络管理者能够根据实际应用需要,把同一物理局域网中的用户逻辑划分成不同的广播域,使具有相同需求的用户处于同一广播域,不同需求的用户处于不同的广播域。每个VLAN在逻辑上就像一个独立的局域网,与物理上形成的LAN有相同的属性。同一个VLAN中所有广播和单播流量都被限制在该VLAN种,不会转发到其他VLAN中。
动态主机分配协议(DHCP),他的执行主体分为两个:一个是服务器端,另一个是客户端,所有的IP网络设定资料都有DHCP服务器集中管理,并负责处理客户端的DHCP要求,而客户端则使用从服务器分配下来的IP信息。整个IP分配过程自动实现,在客户端上无需做任何IP环境设定;所有的IP网络设定资料都由DHCP服务器统一管理,还可以帮助客户端指定网络掩码、域名服务器以及缺省网关等参数。其实用UDP协议工作,主要有两个用途:给内部网络或网络服务供应商自动分配IP地址,给用户或者内部网络管理员作为对所有计算机作中央管理的手段。
当前无线用户日益新增,VLAN数量的划分也与日俱新,传统的DHCP分配IP的方式需要为每个收发包接口指定地址池,在VLAN数量多达4094个的时候这种配置是相当繁琐的,同时无线用户移动的不确定性,常在不同VLAN中移动,不但引起IP地址变更,同时又可能引发了路由转发表的变化,导致网络断流现象,因此迫切需要新的DHCP分配地址方式。
当下,DHCP共享地址池分配地址技术大量出现,解决方式也各不相同,目前最主要的解决方式如下:
1、通过创建全局dhcp-pool及基于该pool的全局策略,同时为每个接口配置不同的ip-pool及相关策略,并将ip-pool与dhcp-pool关联起来,以达到通过策略实现不同接口共享同一个dhcp-pool的目的。
2、创建相同的dhcp-pool在不同的接口,可以为不同用户分配IP,但需要定期进行IP分配通告,确保两个池上的同一个IP地址不会出现分配给不同用户的现。
方法1需要为每个接口创建不同的策略,配置未能简化;方法2同样需要创建大量的地址池,同时还需要进行不同池间的IP通告,极有可能出现同一个IP分给不同用户的现象。
专利号为201010220456.0的中国专利中,公开了一种获取虚拟局域网标识和网络协议地址的方法及客户端,该方法包括:虚拟局域网VLAN中客户端确定客户端发送的报文需要携带虚拟局域网标识VLANID;客户端向VLAN中的动态主机分配协议DHCP服务器发送多个携带有VLANID的动态主机分配协议发现DHCPDISCOVER报文,其中每个DHCPDISCOVER报文对应一个VLANID;在第一预定时间内,如果客户端接收到来自服务器的DHCPDISCOVER报文对应的DHCP响应报文,则根据DHCP响应报文获取VLANID和IP地址。通过本发明,提高了网络配置效率和准确率。但是其仅仅是获取了DHCP协议报文的vlan-tag,无法实现不同VLAN下用户共享一个地址池的方法。
专利号为200610160746.4的中国专利中,公开了一种基于全局地址池的DHCP池策略的创建方法,包括如下步骤:创建IPPOOL地址池;创建与所述IPPOOL地址池对应的DHCPPOOL地址池,并将所述IPPOOL地址池绑定到所述DHCPPOOL地址池;根据DHCP接入接口创建地址池管理策略,将所述DHCPPOOL地址池绑定到所述地址池管理策略;将所述地址池管理策略绑定到相应的DHCP接入接口。提高了IP地址池资源的全局规划、全局共享、统一接入,实现了对DHCPCLIENT接入的可控策略管理,提高了接入的安全性和网络的可扩展性。
专利号为200610160796.2的中国专利中,公开了一种基于全局地址池的DHCP池策略的管理方法,步骤包括:从绑定了地址池管理策略的网络接口上收到IP地址请求后,根据所绑定的地址池管理策略进行IP地址申请;按地址池管理策略的策略项的优先级进行策略项匹配;所述地址池管理策略由按优先级顺序排列的策略项组成,每个策略项绑定不同的DHCPPOOL;从匹配的策略项中绑定的DHCPPOOL和IPPOOL中请求相应的IP地址;将申请的IP地址发送给DHCP网络用户。通过绑定到接口的DHCPPOLICY实现内置DHCPSERVER对DHCP用户的动态可控接入,最终达到IP地址池资源的全局规划、全局共享和统一接入。
专利号为“200610160746.4”和“200610160796.2”的专利,只是依据策略来分配IP地址,但是也需要创建多个IP-POOL。
专利号为200410039171.1的中国专利总,公开了一种通过扩展DHCP实现多IP-DSLAM间用户IP地址池共享的方法,属于计算机网络通信领域。该方法首先配置IP-DSLAM设备间互相通讯的虚拟局域网;当IP-DSLAM设备重新启动时,建立IP地址共享关系;重新启动过程结束,定期发送IP地址公告报文,处理彼此间的地址申请和释放请求。对于任意IP-DSLAM设备A或B的接入用户,只要A或B的内置地址池里还有地址可以分配,接入用户就可以获得IP地址(无论在A,还是B)进行上网。本发明完成IP地址共享和集中管理IP地址的功能,解决了将BRAS功能整合在IP-DSLAM的业务板带来的IP地址浪费和管理困难的问题。该技术方案实现了不同的IP-DSLAM设备共享地址的方式,但是是在不同SERVER上建立相同的池,在一定时间内通过消息来同步所有池,同样不能解决同一设备上不同VLAN共享地址池的问题。
专利号为03148657.6的中国专利中,公开了一种自动创建虚拟局域网地址池的实现方法,该方法包括:A.通过命令行或网管代理模块接口函数获取VLANID;B.利用VLAN标识(ID)调用VLANID与三层接口因特网协议(IP)地址和子网掩码(MASK)之间的对应关系,获得IP和MASK,判断是否获取成功,如果成功,则执行步骤C,否则,创建地址池失败;C.将该VLAN属性设为内部分配方式,并根据获得的IP地址和MASK,创建地址池。该方法省却了用户手动配置一个地址池并创建绑定的烦琐过程,特别对VLAN数量大的情况下特别有效。该专利只是简化了配置步骤,同样需要创建多个DHCP-POOL,未解决同一设备上不同VLAN共享地址池的问题。
发明内容
本发明的目的是为了对多VLAN环境下对地址池分配方案进行改进,实现共享一个地址池的功能。
为了解决上述技术问题,本发明采用的技术方案是提供一种多VLAN环境下共享动态地址池的方法,包括如下步骤:
S100:VLAN客户端向虚拟局域网中的任一子网桥发送携带有VLANID及DHCP选项的动态主机分配协议DHCPDISCOVER报文;
S200:所述子网桥接收处理VLAN客户端发送的DHCPDISCOVER报文,反向学习记录接收到的报文的源MAC地址及入口VLAN,并向指定上级超级网桥发送DHCPDISCOVER报文;
S300:所述超级网桥接收处理DHCPDISCOVER报文,反向学习记录接收到的DHCPDISCOVER报文的源MAC地址及入口子网桥的MAC地址,并向DHCP服务器发送DHCPDISCOVER报文;
S400:所述DHCP服务器接收处理DHCPDISCOVER报文,向VLAN客户端发送DHCP响应报文;
S500:所述VLAN客户端接收处理所述DHCP响应报文,获取IP地址。
DHCP服务器向VLAN客户端发送DHCP响应报文采用单播的方法发送,具体的包括如下步骤:
S411:所述DHCP服务器单播所述DHCP响应报文;
S412:超级网桥接收所述DHCP响应报文,根据所记录的入口子网桥的MAC地址,单播DHCP响应报文至对应的子网桥;
S413:所述子网桥根据源MAC地址以及入口VLAN转发DHCP响应报文;
S414:VLAN客户端接收DHCP响应报文,获取IP地址。
DHCP服务器向VLAN客户端发送DHCP响应报文还可以采用广播的方法发送,具体的包括如下步骤:
S421:DHCP服务器广播所述DHCP响应报文;
S422:超级网桥、子网桥以及VLAN客户端均接收所述DHCP响应报文;
S423:VLAN客户端判断所述DHCP响应报文是否包含所述DHCP选项,若是,则获取IP地址;若否,则重新发送DHCPDISCOVER报文。
具体的,所述DHCP服务器收到的上行报文包括discover、requeset、decline、release;所述VLAN客户端收到的下行报文包括offer、nak、ack。
为了解决上述技术问题,本发明还提供一种多VLAN环境下共享动态地址池的系统,包括:发送单元、第一中转单元、第二中转单元、控制单元以及接收单元;发送单元,用于确定VLAN客户端向虚拟局域网中的任一第一中转单元发送携带有VLANID及DHCP选项的动态主机分配协议DHCPDISCOVER报文;第一中转单元,用于控制子网桥接收处理发送单元发送的DHCPDISCOVER报文,反向学习记录接收到的报文的源MAC地址及入口VLAN,并向指定第二中转单元发送DHCPDISCOVER报文;第二中转单元,用于控制超级网桥接收处理第一中转单元发送的DHCPDISCOVER报文,反向学习记录接收到的DHCPDISCOVER报文的源MAC地址及入口子网桥的MAC地址,并向DHCP服务器发送DHCPDISCOVER报文;控制单元,用于控制所述DHCP服务器接收处理DHCPDISCOVER报文,向VLAN客户端的发送单元发送DHCP响应报文;接收单元,用于控制所述VLAN客户端接收处理所述DHCP响应报文,获取IP地址。
所述控制单元包括单播控制单元,用于将DHCP响应报文单播至所述接收单元;所述第二中转单元包括接收单元二,用于接收所述DHCP响应报文,根据所记录的入口子网桥的MAC地址,单播DHCP响应报文至对应的子网桥;所述第一中转单元包括接收单元一,用于根据源MAC地址以及入口VLAN转发DHCP响应报文;
所述控制单元还包括广播控制单元,用于将DHCP响应报文广播给VLAN接收单元;所述第二中转单元包括接收单元四,所述第一中转单元包括接收单元三,用于接收所述广播控制单元广播的DHCP响应报文;所述接收单元包括判断子模块,用于判断所述DHCP响应报文是否包含所述DHCP选项,若是,则所述接收单元获取IP地址;若否,则通过发送单元重新发送DHCPDISCOVER报文。
所述控制单元收到的上行报文包括discover、requeset、decline、release;所述接收单元收到的下行报文包括offer、nak、ack。
为了解决上述技术问题,本发明还提供一种多VLAN环境下共享动态地址池的系统,包括:
一DHCP服务器,与DHCP服务器相应的DHCP接入接口,所述DHCP接入接口对应一IP地址池;与所述DHCP接入接口连接的一超级网桥;与所述超级网桥连接的至少一子网桥,所述子网桥用于连接VLAN客户端。
其中,每个子网桥控制一个广播域,不同子网桥之间相互隔离。
本发明的有益效果是:
本发明技术方案,增加一个超级网桥,用来管理子网桥,所述超级网桥的功能类似于子网桥,只是反向学习的出口是基于子网桥,而不是VLAN客户端。通过配置,指定若干VLAN客户端同时关联到同一个地址池上取IP,依据用户所处的VLAN-ID,从而达到共享地址池的目的。
附图说明
图1是本发明的某种实施方式的多VLAN环境下共享动态地址池的系统结构框图;
图2是本发明的某一实施例的多VLAN环境下共享动态地址池的方法的流程图;
图3是本发明的某一实施例的DHCPDISCOVERY报文上行的流程图;
图4是本发明的某一实施例的DHCP响应报文的下行单播的流程图;
图5是本发明的某一实施例的DHCP响应报文的下行广播的流程图;
图6是本发明的多VLAN环境下共享动态地址池的系统的结构框图。
具体实施方式
为详细说明本发明的技术内容、构造特征、所实现目的及效果,以下结合实施方式并配合附图详予说明。
请参阅图1,其是根据本发明实施例提供的多VLAN环境下共享动态地址池的系统,所述系统包括:一DHCP服务器,与DHCP服务器相应的DHCP接入接口interface-x-y,所述DHCP接入接口interface-x-y对应一IP地址池;与所述DHCP接入接口interface-x-y连接的一超级网桥super-bridge-x-y;与所述超级网桥super-bridge-x-y连接的至少一子网桥,如图所示,其中超级网桥super-bridge-x-y下连接了两个子网桥son-bridge-x以及子网桥son-bridge-y,所述子网桥用于连接VLAN客户端(vlan-x,vlan-y),每个子网桥控制一个广播域,不同子网桥之间相互隔离。在本技术方案中,每个超级网桥下连接多个子网桥,每个子网桥是一个广播域,不同子网桥之间二层相互隔离,超级网桥可以配置三层接口,子网桥不能配置三层接口,当子网桥的用户需要进行三层通信时,将通过三级网桥实现通讯。
在本发明的实施例中,任意VLAN客户端可以连接于任一子网桥,vlan客户端vlan-x或vlan-y主要处理vlan-tag为x/y的二层报文处理;子网桥son-bridge-x/son-bridge-y主要处理二层报文,反向学习记录各自报文的源mac地址及入口vlan客户端的MAC地址,用来确认报文出口;超级网桥super-bridge-x-y模块处理二层报文,同样进行反向学习记录各自报文的源mac及入口子网桥son-bridge的MAC地址,用来确认下行报文出口;DHCP接入接口interface-x-y处理三层报文,并确认转发出口;dhcp为协议模块主要处理四层udp-dhcp报文。
通过以上所述的多VLAN环境下共享动态地址池的系统,是基于在VLAN网络中的应用,VLAN客户端通过交换机接入到网络中和DHCP服务器进行通信,通过增加一个超级网桥,用来管理子网桥,所述超级网桥的功能类似于子网桥,只是反向学习的出口是基于子网桥,而不是VLAN客户端。通过配置,指定若干VLAN客户端同时关联到同一个地址池上取IP,依据用户所处的VLAN-ID,通过本发明的技术方案,从而达到共享地址池的目的。
参阅图2,图示是本发明的实施例中提供的一种多VLAN环境下共享动态地址池的方法,包括如下步骤:
S100:VLAN客户端向虚拟局域网中的任一子网桥发送携带有VLANID及DHCP选项的动态主机分配协议DHCPDISCOVER报文;
S200:所述子网桥接收处理VLAN客户端发送的DHCPDISCOVER报文,反向学习记录接收到的报文的源MAC地址及入口VLAN,并向指定上级超级网桥发送DHCPDISCOVER报文;
S300:所述超级网桥接收处理DHCPDISCOVER报文,反向学习记录接收到的DHCPDISCOVER报文的源MAC地址及入口子网桥的MAC地址,并向DHCP服务器发送DHCPDISCOVER报文;
S400:所述DHCP服务器接收处理DHCPDISCOVER报文,向VLAN客户端发送DHCP响应报文;
S500:所述VLAN客户端接收处理所述DHCP响应报文,获取IP地址。
参阅图3,图中显示了报文上行过程中所述系统中各个设备对报文处理的流程,通过上述步骤,处于X区域的VLAN客户端VLAN-x向当前区域的子网桥son-bridege-x发送携带有VLANID及DHCP选项的动态主机分配协报文;所述子网桥son-bridge-x接收处理VLAN客户端发送的DHCP报文,反向学习记录接收到的报文的源MAC地址及入口VLAN客户端的MAC地址,并向指定上级超级网桥发送DHCP报文,其中记录入口VLAN客户端的MAC地址是为了给反向学习提供出口。在本发明的技术方案中,不同区的子网桥都连接至同一的超级网桥,所述超级网桥接收处理处于X区域的子网桥son-bridge-x发送的DHCP报文,反向学习记录接收到的DHCP报文的源MAC地址及入口子网桥的MAC地址,并向DHCP服务器发送DHCP报文,所述DHCP服务器与一IP地址池相互匹配,所述DHCP服务器接收处理DHCP报文,向VLAN客户端发送DHCP响应报文;根据DHCP报文里面所含有的VLAN客户端的VLANID,从而向指定的VLAN客户端发送DHCP响应报文。在本发明中,处于Y区域或者其他区域的VLAN客户端以同样的方法获得IP地址进行后续的通讯。
若所述处于X区域的VLAN客户端VLAN-x进入至Y区域,则处于Y区域的VLAN客户端VLAN-x将向子网桥son-bridege-y发送携带有VLANID及DHCP选项的动态主机分配协议DHCP报文;所述子网桥son-bridge-y接收处理VLAN客户端VLAN-x发送的DHCP报文,反向学习记录接收到的报文的源MAC地址及入口VLAN客户端vlan-x的MAC地址,并向指定上级超级网桥发送DHCP报文。所述超级网桥接收处理处于Y区域的子网桥son-bridge-y发送的DHCP报文,反向学习记录接收到的DHCP报文的源MAC地址及入口子网桥son-bridege-y的MAC地址,并向DHCP服务器发送DHCP报文,所述DHCP服务器接收处理DHCP报文,根据DHCP报文里面所含有的VLAN客户端的VLANID,从而向指定的VLAN客户端vlan-x发送DHCP响应报文。
以上所述的方法,上行报文与下行报文通过上述的超级网桥以及子网桥的维护转发,使VLAN客户端依然能够进行正常的通讯,实现了同一VLAN客户端进入不同区域能够利用相同的IP地址的目的,依据用户所处的VLANID,通过上述步骤,实现用户共享一个地址池的功能。
在本发明的某种改进技术方案中,DHCP服务器向VLAN客户端发送DHCP响应报文采用单播的方法发送,具体的包括如下步骤:
S411:所述DHCP服务器单播所述DHCP响应报文;
S412:超级网桥接收所述DHCP响应报文,根据所记录的入口子网桥的MAC地址,单播DHCP响应报文至对应的子网桥;
S413:所述子网桥根据源MAC地址以及入口VLAN转发DHCP响应报文;
S414:VLAN客户端接收DHCP响应报文,获取IP地址。
参阅图4,图中显示了所述报文下行的采用单播模式的发送过程,
DHCP服务器下行的响应报文送至DHCP接入接口interface-xy进行转发,接着直接送至超级网桥super-brideg-xy,由步骤上行单播报文处理流程记录下了子网桥son-bridge-x的MAC地址入口,因此该单播下行报文依据目的MAC地址可以查找到指定的出口,同样在子网桥son-bridge-x上也可以确认出口为VLAN客户端vlan-x,并转发,之后便可到达用户,完成整个下行单播报文的处理。
在本发明的某种改进技术方案中,DHCP服务器向VLAN客户端发送DHCP响应报文还可以采用广播的方法发送,具体的包括如下步骤:
S421:DHCP服务器广播所述DHCP响应报文;
S422:超级网桥、子网桥以及VLAN客户端均接收所述DHCP响应报文;
S423:VLAN客户端判断所述DHCP响应报文否合法,并给予响应
参阅图5,图中显示了采用广播形式发送报文的具体流程,DHCP服务器的广播报文送至DHCP接入接口interface-xy进行转发,直接送至超级网桥super-bridge-xy,由于是广播,所以所有的子网桥son-bridge都会收到,因此所有的VLAN客户端均能收到,因此vlan-x/vlan-y都会处理该报文,通过识别所述DHCP响应报文是否包含所述DHCP选项,若包含DHCP选项,则处理完后直接转发即实现广播的下行。
具体的,所述DHCP服务器收到的上行报文包括discover、requeset、decline、release;所述VLAN客户端收到的下行报文包括offer、nak、ack。
通过以上的技术方案,不同vlan下用户可共享一个地址池,不同vlan下用户即避免了广播风暴,但是又同属于一个网段,减少了报文路由转发路径,避免了无线用户因为位置的变化导致IP地址变化,有效的缩短断网的时长,此外,通过该技术方案还简化了多VLAN共享地址情况下DHCP配置的步骤。
参阅图6,本发明还提供一种多VLAN环境下共享动态地址池的系统,所述系统包括:发送单元、第一中转单元、第二中转单元、控制单元以及接收单元;发送单元,用于确定VLAN客户端向虚拟局域网中的任一第一中转单元发送携带有VLANID及DHCP选项的动态主机分配协议DHCP报文;第一中转单元,用于控制子网桥接收处理发送单元发送的DHCP报文,反向学习记录接收到的报文的源MAC地址及入口VLAN,并向指定第二中转单元发送DHCP报文;第二中转单元,用于控制超级网桥接收处理第一中转单元发送的DHCP报文,反向学习记录接收到的DHCP报文的源MAC地址及入口子网桥的MAC地址,并向DHCP服务器发送DHCP报文;控制单元,用于控制所述DHCP服务器接收处理DHCP报文,向VLAN客户端的发送单元发送DHCP响应报文;接收单元,用于控制所述VLAN客户端接收处理所述DHCP响应报文,获取IP地址。
所述控制单元包括单播控制单元,用于将DHCP响应报文单播至所述接收单元;所述第二中转单元包括接收单元二,用于接收所述DHCP响应报文,根据所记录的入口子网桥的MAC地址,单播DHCP响应报文至对应的子网桥;所述第一中转单元包括接收单元一,用于根据源MAC地址以及入口VLAN转发DHCP响应报文;
所述控制单元还包括广播控制单元,用于将DHCP响应报文广播给VLAN接收单元;所述第二中转单元包括接收单元四,所述第一中转单元包括接收单元三,用于接收所述广播控制单元广播的DHCP响应报文;所述接收单元包括判断子模块,用于判断所述DHCP响应报文是否包含所述DHCP选项,若是,则所述接收单元获取IP地址;若否,则通过发送单元重新发送DHCP报文。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。