址所属网段,将某些IP地址作为临时IP地址。当然,也可以将某些特定的IP地址作为临时IP地址。本发明实施例中,ASR可以识别出临时IP地址,例如根据IP地址所属网段,或者根据IP地址是否为上述特定的IP地址,来识别出IP地址是否为临时IP地址。
[0078]DHCP服务器分配临时IP地址的方式,可以参考现有技术的DHCP地址分配流程。在该流程中,所述ASR通过转发来自DHCP服务器的DHCP Offer消息和DHCP ACK消息,将DHCP服务器选择的临时IP地址分配给所述第一终端,并将所述临时IP地址的租期设置为一预设值。这里,该预设值通常应设置的较小一些,以便于通过频繁的租约超时,来快速发现在超时过程中进行并通过Portal认证的终端,并重新为这些终端分配基于用户身份的IP地址。
[0079]通常,网络会有很多性能参数,对这些网络性能参数会有一个期望值或要求值。作为一种实施方式,从一个终端通过Portal身份认证开始,到该终端获得ILR基于用户身份所分配的IP地址为止的这一段时间,可以作为该网络的一个性能指标。显然,该段时间越短,网络的灵敏性也就越高,也就越容易及时地发现最近通过Portal身份认证的终端,并为这些终端重新分配基于用户身份的IP地址。因此,网管人员可以根据网络灵敏性的要求,并综合考虑ASR、DHCP服务器的处理能力,以及网络中的终端数量等因素,来设置从终端通过身份认证到终端获得ILR所分配的身份标识之间的最大可忍受时长。然后,将上述租期的预设值,设置为不大于上述最大可忍受时长的一个数值,例如设置为10s。
[0080]在临时IP地址的租约过程中,终端会根据当前IP地址的租期剩余时长,来决定何时发起续租请求。例如,在租期还剩下一半时长时,即发送DHCP续租消息。下面以第二终端为例,说明本发明实施例中是如何进行续租处理的。这里的第二终端是网络中的任意终端,例如,可以是上文中的第一终端,也可以是网络中的其他终端。
[0081]具体的:
[0082]第二终端发送DHCP续租消息,所述DHCP续租消息中携带有所述第二终端的第二MAC地址和当前使用的第二 IP地址。ASR接收到第二终端发送的DHCP续租消息后,判断所述第二 IP地址是否为临时IP地址:
[0083]在所述第二 IP地址不是临时IP地址时,所述ASR向所述第二终端返回允许续租的DHCP ACK消息;
[0084]在所述第二 IP地址是临时IP地址时,所述ASR进一步判断所述第二 MAC地址是否存在于所述对应关系表中:若是,则向所述第二终端返回拒绝续租的DHCP NAK消息;否贝U,向所述第二终端返回允许续租的DHCP ACK消息。
[0085]通过上述步骤,本发明实施例在收到终端的续租请求消息时,如果该终端当前使用的IP地址是临时IP地址,且该终端当前已经通过Portal身份认证,则ASR拒绝终端的续租请求,这样,在租期超时(也可以是剩余租期小于某个预设门限)时,终端将发送DHCP发现消息,此时ASR和ILR将会该终端分配基于用户身份的身份标识(即正式IP地址),使得终端在通过Portal认证后不再使用临时IP地址,而是使用正式IP地址访问相应的网络资源。
[0086]基于以上实施例提供的地址分配方法,本发明实施例还提供了一种实现上述方法的ASR,请参照图4,该ASR包括:
[0087]第一接收单元41,用于接收第一终端发送的DHCP发现消息,DHCP发现消息携带有所述第一终端的第一 MAC地址;
[0088]第一判断单元42,用于判断所述第一 MAC地址是否存在于一对应关系表中,所述对应关系表中记录有已通过身份认证的各终端的用户名与MAC地址之间的对应关系;
[0089]第一处理单兀43,用于在所述第一 MAC地址存在于所述对应关系表中时,根据所述对应关系表确定所述第一 MAC地址对应的第一用户名,并向身份标识和位置登记寄存器ILR发送携带有所述第一用户名的身份标识请求消息;以及,接收所述ILR返回的第一 IP地址,并将所述第一 IP地址分配给所述第一终端,其中,所述第一 IP地址是所述ILR基于所述第一用户名为所述第一终端分配的身份标识。
[0090]本发明实施例中,上述ASR可以根据在终端的认证过程中获得的信息来维护上述对应关系表,上述ASR还可以包括:
[0091]第二处理单元,用于在所述第一 MAC地址不存在于所述对应关系表中时,向DHCP服务器转发所述DHCP发现消息,并通过在DHCP服务器和所述第一终端之间转发DHCP地址分配消息,将DHCP服务器从临时IP地址池中选择的临时IP地址分配给所述第一终端。
[0092]第二接收单元,用于接收Portal服务器转发的针对任一终端的身份认证请求,所述身份认证请求携带有所述任一终端的MAC地址、用户名和密码。
[0093]记录单元,用于将所述认证请求转发给身份认证服务器,并在所述任一终端通过身份认证服务器的身份认证后,在所述对应关系表中记录所述任一终端的用户名与MAC之间的对应关系。
[0094]这里,上述第二处理单元,还进一步用于通过转发来自DHCP服务器的DHCP Offer消息和DHCP ACK消息,将DHCP服务器选择的临时IP地址分配给所述第一终端,并将所述临时IP地址的租期设置为一预设值,所述预设值不大于从终端通过身份认证到获得ILR所分配的IP地址之间的最大可忍受时长。优选的,预设值可以是5s?15s中的任意数值。
[0095]本发明实施例中,上述ASR在接收到终端发送的续租请求时,还可以根据终端当时使用的IP地址和该终端是否已经通过Portal身份认证,来决定拒绝还是允许续租,此时上述ASR还包括:
[0096]第三接收单元,用于接收到第二终端发送的DHCP续租消息,所述DHCP续租消息中携带有所述第二终端的第二 MAC地址和当前使用的第二 IP地址;
[0097]第二判断单元,用于判断所述第二 IP地址是否为临时IP地址。
[0098]第三判断单元,用于在所述第二 IP地址为临时IP地址时,进一步判断所述第二MAC地址是否存在于所述对应关系表中。
[0099]第三处理单元,用于在所述第二 MAC地址存在于所述对应关系表中时,向所述第二终端返回拒绝续租的DHCP NAK消息。
[0100]第四处理单元,用于在所述第二 MAC地址不存在于所述对应关系表中时,向所述第二终端返回允许续租的DHCP ACK消息。
[0101]第五处理单元,用于在所述第二 IP地址不是临时IP地址时,向所述第二终端返回允许续租的DHCP ACK消息。
[0102]下面将进一步通过一个更为具体的示例,对本发明实施例的地址分配方法作更进一步的说明。本示例中,用户终端接入网络后,发起DHCP地址请求,由于此时用户终端并未进行Portal身份认证,因此网络为用户分配权限受限的临时IP地址。当用户发起并通过Portal身份认证后,网络拒绝用户终端针对该临时IP地址的续租请求,因此用户终端等待该临时IP地址的租期超时后,重新发起DHCP地址请求,此时网络基于已经通过认证的用户身份,为用户终端分配作为其身份标识的正式IP地址,具体流程如图5所示,包括:
[0103]步骤501, UE开机(或插上网线),发起DHCP Discover过程,发送DHCP Discover消息,请求分配地址。
[0104]步骤502,由于此时UE未通过Portal身份认证,网络为用户分配一个临时IP地址,如:10.255.255.1。ASR分配临时地址的过程,可以是ASR自己充当DHCP Server分配临时IP地址,也可以自己充当DHCP Relay设备,将地址分配请求(DHCP Discover消息)中继到DHCP Server,具体的中继流程可以参照现有技术实现,此处不再赘述。
[0105]步骤503,ASR向UE返回DHCP Offer消息,该消息中携带网络分配的该临时IP地址,该地址并不能作为UE的身份标识。
[0106]步骤504,UE收到该临时IP地址后,发送DHCP Request消息,为该临时IP地址请求租约。
[0107]步骤505,ASR确认后,向UE返回DHCP ACK消息,携带该临时地址的租约期限。其中,租约期限需要设置的较短,例如:10秒。
[0108]这样,通过以上步骤,UE获得了临时IP地址,并可以使用该临时IP地址访问受限的网络资源。如果在此过程中,UE未发起门户认证,那么当临时IP地址租约快到期时,UE会发起请求续租,网络允许续租。具体的续租流程可以参照现有技术实现,此处不再赘述。
[0109]步骤506,UE发起门户认证,输入用户名和密码;ASR将用户名和密码等信息转发给身份认证服务器(例如:AAA Server),由身份认证服务器验证用户身份,ASR和身份认证服务器可以合并设置,也可以分别独立