一种IPv4网络中通过划分端口段共享公网地址的方法

文档序号:7809726阅读:398来源:国知局
一种IPv4网络中通过划分端口段共享公网地址的方法
【专利摘要】一种IPv4网络中通过划分端口段共享公网地址的方法,利用地址分配服务器为终端用户分配包括公网IPv4地址及端口段的地址参数,将所述地址参数与用户网络接口的MAC地址进行绑定并通知用户上联的网关;终端用户与网关之间根据二层地址信息进行通信,报文封装使用各自网络接口的MAC地址,用户记录网关的下行接口的MAC地址,网关维护用户IPv4地址、端口段及MAC地址的对应信息,本发明达到公网地址共享的目的的同时,提高了网络的可扩展性,保持了网络原有的端到端特性,能够支持目前各种网络协议。
【专利说明】—种IPv4网络中通过划分端口段共享公网地址的方法

【技术领域】
[0001]本发明属于互联网【技术领域】,特别涉及一种IPv4网络中通过划分端口段共享公网地址的方法。

【背景技术】
[0002]早在2011年IANA的公网IPv4地址就已分配完毕。据CNNIC(China InternetNetwork Informat1n Center,中国互联网络信息中心)统计数据,截至到2013年底,我国拥有的公网IPv4地址数量仅有3.3亿个,而我国的网民数量已经达到了 6.18亿,相比2012年网民数量增长了 3.7%。而近年来,我国的网民数量一直保持稳定的增长势头。这将使本就捉襟见肘的公网IPv4地址资源更加紧张。
[0003]目前,国内的运营商为了缓解地址资源紧缺的压力,普遍采用NAT技术。该技术要求终端用户使用IETF(Internet Engineering Task Force,互联网工程任务组)RFC1918中规定的三个网段中的私有地址。IP数据报文经过上层网关时将私有IP数据报文加端口映射为公有地址加端口后访问Internet,Internet回复的IP数据包传输至网关时,根据地址和端口的映射表将公有地址加端口映射为私有地址加端口,通过多个私网地址共同使用一个公网地址达到地址共享的目的。
[0004]NAT技术确实能够一定程度上缓解IPv4地址不足的压力,但是却破坏了网络原有的端到端特性,NAT内部的网络状况对于公网是隐藏的,外部主机不能主动访问私网内部的主机。此外,NAT技术不能良好的支持一些现有的网络协议,如FTP协议等。同时大范围的NAT会造成NAT设备的负载过大,可扩展性差。


【发明内容】

[0005]为了克服上述现有技术的缺点,本发明的目的在于提供一种IPv4网络中通过划分端口段共享公网地址的方法,通过在为用户设备分配地址参数的同时分配端口段信息,实现了 IPv4单栈网络中的地址共享和公网地址复用,可有效缓解当前各运营商所面临的IPv4公网地址匮乏的压力,服务器将用户的IPv4地址、端口段及MAC (Media AccessControl,截至访问控制层)地址进行绑定,从而保证数据能够到达正确的客户端。
[0006]为了实现上述目的,本发明采用的技术方案是:
[0007]一种IPv4网络中通过划分端口段共享公网地址的方法,利用地址分配服务器为终端用户分配包括公网IPv4地址及端口段的地址参数,将所述地址参数与用户网络接口的MAC地址进行绑定并通知用户上联的网关;终端用户与网关之间根据二层地址信息进行通信,报文封装使用各自网络接口的MAC地址,用户记录网关的下行接口的MAC地址,网关维护用户IPv4地址、端口段及MAC地址的对应信息。
[0008]在DHCP中,地址参数分配过程如下:
[0009]步骤(I),用户端接入网络向DHCP服务器发起DHCPDISC0VER报文请求地址;
[0010]步骤⑵,DHCP服务器接收到用户端发送的DHCPDISC0VER报文,并在地址池中选择一个租约,包括公网IPv4地址及其对应的端口段区间,一起添加到DHCPOFFER报文中回复;
[0011]步骤(3),用户端收到DHCPOFFER报文后,进行解析,将其中的IPv4地址及端口段区间进行配置,并向DHCP服务器发送DHCPREQUEST报文,将自己网络接口的MAC地址作为client-1D添加到报文中;
[0012]步骤⑷,DHCP服务器接收到DHCPREQUEST报文后,回复DHCPACK报文,将用户端的IPv4地址、端口段及MAC地址信息进行绑定,并通知用户端对应的网关;
[0013]数据交互过程如下:
[0014]步骤(I),网关收到DHCP服务器发来的绑定信息后为用户建立IPv4地址、端口段及MAC地址的映射表;
[0015]步骤(2),当用户对外部网络发起访问时,对数据包进行二层封装,其源地址为用户网络接口的MAC地址,目的地址为对应网关下行网络接口的MAC地址;
[0016]步骤(3),所述用户端对应的网关接收到数据包后进行解封装,从而得到原始数据包,并根据包头信息进行转发;
[0017]步骤(4),数据包到达目的端后,目的端进行回复;回复的报文到达所述用户端对应的网关时,网关对数据包进行封装,其源地址为网关下行网络接口的MAC地址,目的地址为用户网络接口的MAC地址;
[0018]步骤(5),用户收到数据包之后进行解封装从而得到原始数据包。
[0019]与现有技术相比,本发明通过为终端用户分配公网IPv4地址及端口段,将NAT功能下放至各个用户侧设备,达到公网地址共享的目的的同时,提高了网络的可扩展性,保持了网络原有的端到端特性,能够支持目前各种网络协议。本发明不仅能同NAT技术一样实现公网IPv4地址资源的共享,缓解运营商地址资源压力,同时,保证了网络原有的端到端特性,能够良好支持现有的各种协议,保证了网络用户的上网体验。

【专利附图】

【附图说明】
[0020]图1是本发明应用场景不意图。
[0021]图2是本发明实施例中地址参数分配流程图。
[0022]图3是本发明实施例中数据交互流程图。

【具体实施方式】
[0023]下面结合附图和实施例详细说明本发明的实施方式。
[0024]如图1所示,本发明一种IPv4网络中通过划分端口段共享公网地址的方法,用户端通过IPv4网络和网关接入IPv4互联网,利用网络中的地址分配服务器为终端用户分配公网IPv4地址及端口段,达到IPv4网络中公网地址共享的目的。其中主要包括地址参数分配与数据交互过程。
[0025]如图2所示,在DHCP中,地址参数分配过程如下:
[0026]步骤(I),用户端接入网络向DHCP服务器发起DHCPDISC0VER报文请求地址;
[0027]步骤⑵,DHCP服务器接收到用户端发送的DHCPDISC0VER报文,并在地址池中选择一个租约,包括公网IPv4地址及其对应的端口段区间,一起添加到DHCPOFFER报文中回复;
[0028]步骤(3),用户端收到DHCPOFFER报文后,进行解析,将其中的IPv4地址及端口段区间进行配置,并向DHCP服务器发送DHCPREQUEST报文,将自己网络接口的MAC地址作为client-1D添加到报文中;
[0029]步骤⑷,DHCP服务器接收到DHCPREQUEST报文后,回复DHCPACK报文,将用户端的IPv4地址、端口段及MAC地址信息进行绑定,并通知用户端对应的网关。
[0030]如图3所示,数据交互过程如下:
[0031]步骤(I),网关收到DHCP服务器发来的绑定信息后为用户建立IPv4地址、端口段及MAC地址的映射表;
[0032]步骤(2),当用户对外部网络发起访问时,对数据包进行二层封装,其源地址为用户网络接口的MAC地址,目的地址为对应网关下行网络接口的MAC地址;
[0033]步骤(3),用户端对应的网关接收到数据包后进行解封装,从而得到原始数据包,并根据包头信息进行转发;
[0034]步骤(4),数据包到达目的端后,目的端进行回复;回复的报文到达用户端对应的网关时,网关对数据包进行封装,其源地址为网关下行网络接口的MAC地址,目的地址为用户网络接口的MAC地址;
[0035]步骤(5),用户收到数据包之后进行解封装从而得到原始数据包。
[0036]一个具体的共享公网地址方法如下:
[0037]地址参数配置具体实施过程如下:
[0038](I)用户接入到IPv4网络中,向服务器发出DHCPDISC0VER报文请求分配地址;
[0039](2)服务器收到请求后,查找一个空闲租约,如:1.2.3.4,端口区间为2048-4096,将其添加到DHCPOFFER报文中进行回复;
[0040](3)用户收到回复后,获取其中的配置参数信息,进行配置,同时将此配置信息添加到DHCPREQUEST报文中发送给服务器,该报文中同时携带了用户的MAC地址,11:22:33:44:55:00 作为 client-1D ;
[0041](4)服务器收到后,回复DHCPACK报文,并将分配给用户的IP地址、端口段及用户的MAC地址三者进行绑定后发送给用户对应网关。
[0042]用户与外网进行数据交互的具体实施过程如下:
[0043](I)网关收到服务器发送的用户IP地址、端口段及用户的MAC地址绑定信息,并将其添加到地址映射表中;
[0044](2)用户发起数据通信请求时,请求报文的源地址为1.2.3.4,源端口为2049 (2048-4096端口段中的一个),目的地址为目的端的IPv4地址,如:8.8.8.8,下一跳MAC地址为网关的MAC地址,如:00:11:22:33:44:55,该地址可以通过DHCP交互过程获得,或通过ARP协议获得;
[0045](3)网关收到用户发出的请求报文后,进行正常处理,根据报文目的地址8.8.8.8转发该报文;
[0046](4)报文到达目的端后,目的端进行回复,回复报文的目的地址为1.2.3.4,目的端口为2049 ;
[0047](5)网关收到8.8.8.8回复的报文后,根据该报文的目的地址及端口查看地址映射表,从而获得该报文对应用户的MAC地址,并将其作为报文的下一跳MAC地址进行转发;
[0048](6)用户收到回复报文,通信结束。
【权利要求】
1.一种IPv4网络中通过划分端口段共享公网地址的方法,其特征在于,利用地址分配服务器为终端用户分配包括公网IPv4地址及端口段的地址参数,将所述地址参数与用户网络接口的MAC地址进行绑定并通知用户上联的网关;终端用户与网关之间根据二层地址信息进行通信,报文封装使用各自网络接口的MAC地址,用户记录网关的下行接口的MAC地址,网关维护用户IPv4地址、端口段及MAC地址的对应信息。
2.根据权利要求1所述的IPv4网络中通过划分端口段共享公网地址的方法,其特征在于,在DHCP中,地址参数分配过程如下: 步骤(I),用户端接入网络向DHCP服务器发起DHCPDISCOVER报文请求地址;步骤(2),DHCP服务器接收到用户端发送的DHCPDISC0VER报文,并在地址池中选择一个租约,包括公网IPv4地址及其对应的端口段区间,一起添加到DHCP0FFER报文中回复;步骤(3),用户端收到DHCP0FFER报文后,进行解析,将其中的IPv4地址及端口段区间进行配置,并向DHCP服务器发送DHCPREQUEST报文,将自己网络接口的MAC地址作为client-1D添加到报文中; 步骤(4),DHCP服务器接收到DHCPREQUEST报文后,回复DHCPACK报文,将用户端的IPv4地址、端口段及MAC地址信息进行绑定,并通知用户端对应的网关; 数据交互过程如下: 步骤(I),网关收到DHCP服务器发来的绑定信息后为用户建立IPv4地址、端口段及MAC地址的映射表; 步骤(2),当用户对外部网络发起访问时,对数据包进行二层封装,其源地址为用户网络接口的MAC地址,目的地址为对应网关下行网络接口的MAC地址; 步骤(3),所述用户端对应的网关接收到数据包后进行解封装,从而得到原始数据包,并根据包头信息进行转发; 步骤(4),数据包到达目的端后,目的端进行回复;回复的报文到达所述用户端对应的网关时,网关对数据包进行封装,其源地址为网关下行网络接口的MAC地址,目的地址为用户网络接口的MAC地址; 步骤(5),用户收到数据包之后进行解封装从而得到原始数据包。
【文档编号】H04L29/12GK104135545SQ201410356666
【公开日】2014年11月5日 申请日期:2014年7月24日 优先权日:2014年7月24日
【发明者】崔勇, 王钰琪, 张彬 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1