双栈接入的方法和设备的制作方法

文档序号:7717591阅读:155来源:国知局

专利名称::双栈接入的方法和设备的制作方法
技术领域
:本发明涉及通信领域,尤其涉及一种双栈接入的方法和设备。
背景技术
:IPv6是下一版本的互联网协议,也可以说是下一代互联网的协议,它的提出最初是因为随着互联网的迅速发展,IPv4定义的有限地址空间将被耗尽,地址空间的不足必将妨碍互联网的进一步发展。为了扩大地址空间,拟通过IPv6重新定义地址空间。IPv6采用128位地址长度,几乎可以不受限制地提供地址。按保守方法估算IPv6实际可分配的地址,整个地球的每平方米面积上仍可分配1000多个地址。在IPv6的设计过程中除了一劳永逸地解决了地址短缺问题以外,还考虑了在IPv4中解决不好的其它问题,主要有端到端IP连接、服务质量、安全性、多播、移动性、即插即用等。因此,IPv6具有非常广泛的应用前景。现有支持IPv6的局域网大多支持IPv4/IPv6双栈接入。其中,终端设备IPv6地址配置方式包括无状态地址配置和DHCP(DynamicHostConfigurationProtocol,动态主机配置协议)地址配置。IPv6无状态地址配置通过IPv6邻居发现协议实现。IPv6邻居发现协议使用五种类型的ICMPv6消息,实现下述功能地址解析、验证邻居是否可达、重复地址检测、路由器发现/前缀发现、地址自动配置和重定向等功能。IPv6无状态地址配置过程中,不涉及对请求IPv6地址的终端设备的认证过程。DHCPv6(DynamicHostConfigurationProtocolforIPv6,支持IPv6的动态主机配置协议)是针对IPv6编址方案设计的、为终端设备分配IPv6地址和其他网络配置参数的协议。DHCP地址配置过程中,也没有涉及对请求IPv6地址的终端设备的认证。具有IPv4/IPv6地址的终端设备在接入网络时,IPv4采用Portal接入方案认证后接入网络,IPv6地址不需要认证,通过汇聚层设备直接可以访问外部,而且IPv4认证与IPv6协议栈没有任何关系。因此,现有的IPv4/IPv6双栈接入方式,对IPv6的地址分配过程和接入网络过程都没有相应的认证过程,即对IPv4/IPv6双栈接入缺乏有效的控制方式。
发明内容本发明提供了一种双栈接入的方法和设备,以实现对双栈用户的网络接入控制。本发明提供了一种双栈接入的方法,应用于双协议栈系统,该系统包括双协议栈客户端、支持双协议栈接入的网络设备,该方法包括所述网络设备对所述客户端的第一协议栈地址进行认证,认证通过后,在配置的用户信息表中存储所述客户端的用户信息,包括用户名、所述第一协议栈地址以及地址状态信息;所述网络设备为所述客户端分配第二协议栈地址,并在所述用户信息表中存储所述第二协议栈地址以及所述第二协议栈地址的地址状态信息;所述网络设备根据所述客户端的用户信息配置控制规则,通过所述控制规则控制所述客户端的双栈接入。所述第一协议栈地址为IPv4地址、所述第二协议栈地址为IPv6地址,所述网络设备对所述客户端的第一协议栈地址进行认证,认证通过后,在配置的用户信息表中存储所述客户端的用户信息具体包括所述网络设备在所述用户信息表中存储所述IPv4地址,并将所述IPv4地址状态设置为正常NORMAL;所述网络设备为所述客户端分配第二协议栈地址,并在所述用户信息表中存储所述第二协议栈地址以及所述第二协议栈地址的地址状态信息具体包括所述网络设备向所述客户端发送单播路由器公告,通知所述客户端IPV6地址配置方式;所述网络设备侦听所述客户端的IPv6地址分配过程,获取所述客户端的IPv6地址以及地址状态并在用户信息表中存储。所述网络设备侦听所述客户端的IPv6地址分配过程,获取所述客户端的IPv6地址以及地址状态并在用户信息表中存储具体为所述网络设备向所述客户端发送单播路由器公告后,将IPv6地址状态设置为路由器公告RA状态;如果所述网络设备在预设RA延迟时间内收到所述客户端发送的IPv6地址的重复地址检测邻居请求DADNS报文,且所述IPv6地址状态为RA状态,所述网络设备在所述用户信息表中添加所述IPv6地址,并将所述IPv6地址状态设置为DAD状态;如果在预设DAD延迟时间内没有收到所述客户端发送的邻居通告消息NA,所述网络设备将所述IPv6地址状态设置为NORMAL状态。所述第一协议栈地址为IPv6地址、所述第二协议栈地址为IPv4地址,所述网络设备对所述客户端的第一协议栈地址进行认证,认证通过后,在配置的用户信息表中存储所述客户端的用户信息具体包括所述网络设备在所述用户信息表中存储所述IPv6地址,并将所述IPv6地址状态设置为正常NORMAL;所述网络设备为所述客户端分配第二协议栈地址,并在所述用户信息表中存储所述第二协议栈地址以及所述第二协议栈地址的地址状态信息具体包括所述网络设备侦听所述客户端的IPv4地址分配过程,获取客户端的IPv4地址以及地址状态并在用户信息表中存储。所述网络设备为所述客户端分配第二协议栈地址,并在所述用户信息表中存储所述第二协议栈地址以及所述第二协议栈地址的地址状态信息包括所述网络设备侦听所述第二协议栈地址的地址分配过程,获取所述客户端对应的端口,根据所述端口查找所述客户端在用户信息表中对应的表项;所述网络设备在所述对应的表项中存储所述第二协议栈地址以及所述第二协议栈地址的地址状态信息。所述网络设备根据所述客户端的用户信息配置控制规则具体为当所述客户端的用户信息中第一协议栈地址和/或第二协议栈地址的地址状态为正常NORMAL时,所述网络设备配置控制规则为允许所客户端通过所述第一协议栈地址和/或第二协议栈地址接入网络。—种网络设备,应用于双协议栈系统,该系统包括双协议栈客户端、支持双协议栈接入的网络设备,该网络设备包括认证单元,用于对所述客户端的第一协议栈地址进行认证;地址分配单元,用于所述认证单元的认证结果为通过时,为所述客户端分配第二协议栈地址;用户信息获取单元,用于所述认证单元的认证结果为通过时,在配置的用户信息表中存储所述客户端的用户信息,包括用户名、所述第一协议栈地址以及地址状态信息;并在所述地址分配单元为所述客户端分配第二协议栈地址后,在所述用户信息表中存储所述第二协议栈地址以及所述第二协议栈地址的地址状态信息;接入控制单元,用于根据所述用户信息获取单元存储的客户端的用户信息配置控制规则,通过所述控制规则控制所述客户端的双栈接入。所述第一协议栈地址为IPv4地址、所述第二协议栈地址为IPv6地址,所述地址分配单元具体用于所述认证单元的认证结果为通过时,向所述客户端发送单播路由器公告,通知所述客户端IPv6地址配置方式;所述用户信息获取单元具体用于所述认证单元的认证结果为通过时,在所述用户信息表中存储所述IPv4地址,并将所述IPv4地址状态设置为正常NORMAL;侦听所述客户端的IPv6地址分配过程,获取所述客户端的IPv6地址以及地址状态并在用户信息表中存储。所述用户信息获取单元还用于向所述客户端发送单播路由器公告后,将IPv6地址状态设置为路由器公告RA状态;如果所述网络设备在预设RA延迟时间内收到所述客户端发送的IPv6地址的重复地址检测邻居请求DADNS报文,且所述IPv6地址状态为RA状态,在所述用户信息表中添加所述IPv6地址,并将所述IPv6地址状态设置为DAD状态;如果在预设DAD延迟时间内没有收到所述客户端发送的邻居通告消息NA,将所述IPv6地址状态设置为NORMAL状态。所述第一协议栈地址为IPv6地址、所述第二协议栈地址为IPv4地址,所述用户信息获取单元具体用于所述认证单元的认证结果为通过时,在所述用户信息表中存储所述IPv6地址,并将所述IPv6地址状态设置为正常NORMAL;侦听所述客户端的IPv4地址分配过程,获取所述客户端的IPv4地址以及地址状态并在用户信息表中存储。所述用户信息获取单元还用于侦听所述第二协议栈地址的地址分配过程,获取所述客户端对应的端口,根据所述端口查找所述客户端在用户信息表中对应的表项;在所述对应的表项中存储所述第二协议栈地址以及所述第二协议栈地址的地址状态信息。所述接入控制单元具体用于当所述客户端的用户信息中第一协议栈地址和/或第二协议栈地址的地址状态为正常NORMAL时,配置控制规则为允许所述客户端通过所述第一协议栈地址和/或第二协议栈地址接入网络。与现有技术相比,本发明至少具有以下优点本发明中,网络设备对双栈用户的第一协议栈地址进行认证,认证通过后,再为所述双栈接入用户分配第二协议栈地址,并在用户信息表中存储双栈用户的双栈地址等用户信息,根据存储的用户信息配置控制规则控制双栈用户接入网络,从而实现对IPv4/IPv6双栈用户的接入控制。图1是现有技术中邻居发现协议中的地址解析流程示意图;图2是现有技术邻居发现协议中通过NS和NA实现重复地址检测流程示意图;图3是现有技术中IPv6地址的动态获取过程示意图;图4是现有技术中Portal典型组网方式示意图;图5是本发明提供的双栈安全接入的方法的流程示意图;图6是本发明一应用场景提供的双栈接入的方法的流程示意图;图7是本发明又一应用场景提供的双栈接入的方法的流程示意图;图8是本发明又一应用场景提供的双栈接入的方法的流程示意图;图9是本发明提供的双栈安全接入的设备的结构示意图。具体实施例方式IPv6地址配置方式包括无状态地址配置和DHCP地址配置。下面对这两种地址配置方式进行详细介绍。首先介绍IPv6无状态地址配置。IPv6无状态地址配置通过IPv6邻居发现协议实现。IPv6邻居发现协议使用五种类型的ICMPv6消息,实现下述功能地址解析、验证邻居是否可达、重复地址检测、路由器发现/前缀发现、地址自动配置和重定向等功能。邻居发现协议使用的ICMPv6消息的类型及作用如表1所示表1<table>tableseeoriginaldocumentpage9</column></row><table>被请求节点组播地址。如果是,则节点B可以学习到节点A的链路层地址,并以单播方式返回NA消息,其中包含了自己的链路层地址。(3)节点A从收到的NA消息中就可获取到节点B的链路层地址。B、验证邻居是否可达在获取到邻居节点的链路层地址后,通过邻居请求消息NS和邻居通告消息NA可以验证邻居节点是否可达。(1)节点发送NS消息,其中目的地址是邻居节点的IPv6地址。(2)如果收到邻居节点的确认报文,则认为邻居可达;否则,认为邻居不可达。C、重复地址检测(DAD)当节点获取到一个IPv6地址后,需要使用重复地址检测功能确定该地址是否已被其他节点使用。通过NS和NA可以实现重复地址检测,如图2所示,包括(l)节点A发送NS消息,NS消息的源地址是未指定地址:,目的地址是待检测的IPv6地址对应的被请求节点组播地址,消息内容中包含了待检测的IPv6地址。(2)如果节点B已经使用这个IPv6地址,则会返回NA消息。其中包含了自己的IPv6地址。(3)节点A收到节点B发来的NA消息,就知道该IPv6地址已被使用。反之,则说明该地址未被使用,节点A就可使用此IPv6地址。D、路由器发现/前缀发现及无状态地址自动配置。路由器发现/前缀发现是指节点从收到的RA消息中获取邻居路由器及所在网络的前缀,以及其他配置参数。地址无状态自动配置是指节点根据路由器发现/前缀发现所获取的信息,自动配置IPv6地址。其中,路由器发现/前缀发现通过路由器请求消息RS和路由器通告消息RA来实现,具体过程如下(l)节点启动时,通过RS消息向路由器发出请求,请求前缀和其他配置信息,以便用于节点的配置。(2)路由器返回RA消息,其中包括前缀信息选项(路由器也会周期性地发布RA消息)。(3)节点利用路由器返回的RA消息中的地址前缀及其他配置参数,自动配置接口的IPv6地址及其他信息。自动配置生成地址,为防止与现有网络中其它设备或主机地址冲突,需要进行一次重复地址检测过程,检测没有重复地址,则地址生效。前缀信息选项中不仅包括地址前缀的信息,还包括该地址前缀的preferredlifetime(首选生命期)和validlifetime(有效生命期)。节点收到周期性发送的RA消息后,会根据该消息更新前缀的首选生命期和有效生命期。在有效生命期内,自动生成的地址可以正常使用;有效生命期过期后,自动生成的地址将被删除。下面介绍IPv6地址的DHCP地址配置。与其他IPv6地址分配方式(手工配置、通过路由器公告消息中的网络前缀无状态自动配置等)相比,DHCPv6具有以下优点更好地控制地址的分配通过DHCPv6不仅可以记录为主机分配的地址,还可以为特定主机分配特定的地址,以便于网络管理;除了IPv6地址外,还可以为主机提供DNS服务器、域名等网络配置参数。DHCPv6客户端通过链路范围的组播地址与DHCPv6服务器通信,以获取IPv6地址和其他网络配置参数。如果服务器和客户端不在同一个链路范围内,则需要通过DHCPv6中继来转发报文,这样可以避免在每个链路范围内都部署DHCPv6服务器,既节省了成本,又便于进行集中管理。DHCPv6采用客户端/服务器通信模式,由客户端向服务器提出配置申请,服务器返回为客户端分配的IP地址等相应的配置信息,以实现IP地址等信息的动态配置。如图3所示,IPv6地址的动态获取过程包括l)Client(客户端)主动发起Solicit请求,往本网段发送目的为FF02::1:2(A11_DHCP_Relay_Agents_and_Serversaddress)的多播报文。2)如果子网内存在DHCPServer,DHCPServer回应Advertise通告Server的存在,Advertise消息中带有Server的ID和优先权选项。3)Client在指定时间内收集所有Server的Advertise消息,然后根据优先权选出一个最优的Server,并记录下Server的优先级、Advertise消息中的地址等。如果Client选择的Server在之后的交互中没有回应,Client可以按Server选择策略选择其他的Server。4)Client选出Server后,发送Request报文,报文中指定选定的ServerID。5)Server收到Client的Request后,查看ServerID,如果不是自己,则丢弃;如果是自己的ID,则从前缀池中选择一个前缀,分配给Client,发送Reply消息。6)Client收到Reply应答后,解析报文的选项,设置各个选项,存在错误码时根据错误码采取其他处理。7)当T1时间到达时,Client为IA中的所有IP续约,往Server发送Renew报文。8)Server根据绑定情况给Client续约,同时也把option选项填上,然后发送Reply应答。如果选项发生变化,Client也能够感知。9)如果Tl时发送的Renew报文没有应答,T2到达时,Client会发送Rebind报文。10)收到Rebind后,Server采取类似第8)步的操作回应Reply。ll)Server在允许发送reconfigure条件下,当Serveroption选项发生变化时,服务器端会主动发送reconfigure报文通知Client,希望Client也更新配置参数。12)Client在允许接收reconfigure条件下,收至Ureconfigure后,解析报文的OPTION_RECONF_MSG(19)。如果msg-type为5,则发送Renew消息到Server;如果msg-type为11,贝U发送Information-request消息至LlServer。13)如果Client不再需要使用地址,如用户下线,Client要发送Release消息给Server,由Server把地址标记为空闲。14)当Client重启、物理连接状态变化时,Client发送Confirm消息到Server,确认以前使用的前缀/地址是否能够继续使用。DHCPv6有快速交互申请地址的方式Client在发送的Solicit报文中增加rapidcommit选项,Server收到这样的报文后,直接回应Reply。当用户使用IPv4地址接入网络时,通常需要进行Portal认证。Portal也称为WebPortal方案,典型组网方式如图4所示,它由五个基本要素组成认证客户端、接入设备、Portal服务器、认证/计费服务器和安全策略服务器;下面逐一介绍该五个基本要素。l.认证客户端具体为运行HTTP协议的浏览器或运行Portal客户端软件的主机。对接入终端的安全性检测是通过Portal客户端和安全策略服务器之间的信息交流完成的。2.接入设备交换机、路由器等宽带接入设备的统称,主要有三方面的作用在认证之前,将认证网段内用户的所有HTTP请求都重定向到Portal服务器;在认证过程中,与Portal服务器、安全策略服务器、认证/计费服务器交互,完成身份认证/安全认证/计费的功能;在认证通过后,允许用户访问被管理员授权的互联网资源。3.Portal服务器接收Portal客户端认证请求的服务器端系统,提供免费门户服务和基于Web认证的界面,与接入设备交互认证客户端的认证信息。4.认证/计费服务器与接入设备进行交互,完成对用户的认证和计费。5.安全策略服务器与Portal客户端、接入设备进行交互,完成对用户的安全认证,并对用户进行授权操作。以上五个基本要素的交互过程为(1)未认证用户访问网络时,在IE地址栏中输入一个互联网的地址,那么此HTTP请求在经过接入设备时会被重定向到Portal月艮务器的Web认证主页上;若需要使用Portal的扩展认证功能,则用户必须使用Portal客户端。HTTP重定向重定向是确保用户始终收到他们所需网页的一种方式。重定向是指将Web服务器配置为向客户端发出重定向消息(例如HTTP302),以指示客户端重新提交新位置请求的过程。可以将用户重定向到其他文件、目录或站点。(2)用户在认证主页/认证对话框中输入认证信息后提交,Portal服务器会将用户的认证信息传递给接入设备;(3)然后接入设备再与认证/计费服务器通信进行认证和计费;(4)认证通过后,如果未对用户采用安全策略,则接入设备会打开用户与互联网的通路,允许用户访问互联网;如果对用户采用了安全策略,则客户端、接入设备与安全策略服务器交互,对用户的安全检测通过之后,安全策略服务器根据用户的安全性授权用户访问非受限资源。本发明的核心思想在于对于双栈接入用户,网络设备首先对该用户的第一协议栈地址进行认证,认证通过后,再为所述双栈接入用户分配第二协议栈地址,对于现有的IPv4/IPv6双栈用户,网络设备可以在其IPv4认证通过后,再为其分配IPv6地址,并在用户信息表中存储双栈用户的双栈地址等用户信息,根据存储的用户信息配置控制规则控制双栈用户接入网络,从而实现对IPv4/IPv6双栈用户的接入控制。本发明提供一种双栈接入的方法,应用于双协议栈系统,该系统包括双协议栈客户端、支持双协议栈接入的网络设备,如图5所示,该方法包括步骤501,所述网络设备对所述客户端的第一协议栈地址进行认证,认证通过后,在配置的用户信息表中存储所述客户端的用户信息,包括用户名、所述第一协议栈地址以及地址状态信息;步骤502,所述网络设备为所述客户端分配第二协议栈地址,并在所述用户信息表中存储所述第二协议栈地址以及所述第二协议栈地址的地址状态信息;步骤503,所述网络设备根据所述客户端的用户信息配置控制规则,通过所述控制规则控制所述客户端的双栈接入。下面结合具体应用场景详细介绍本发明提供的双栈安全接入的方法。本发明一应用场景提供的双栈安全接入的方法,解决任意配置的IPv6地址不经过认证即可通过网络设备访问外网的问题。对IPv4认证通过的用户的IPv6地址进行相应的权限限制,即在IPv4认证通过后,监视并控制IPv6地址分配过程。如图6所示,本应用场景提供的方法,包括以下步骤步骤601,网络设备接收Client(客户端)发送的IPv4的HTTP报文,将该HTTP报文重定向到自己的PortalServer上,强制用户进行PORTAL认证。具体的,网络设备仿冒Client的IPv4的HTTP报文的目的主机和接入主机进行TCP连接,采用HTTP重定向技术,将其重定向到自己的PortalServer。步骤602,网络设备在Client的IPv4认证通过后,将用户信息添加到用户表中,同时向Client下发用户的单播RA(RouterAdvertisement,路由通知),通知用户IPv6的地址配置方式。具体的,为了避免IPv6地址的任意配置,初始时网络设备不允许任何端口发送RA,即网络设备接收到Client发送的RS请求时,如果此时Client的IPv4地址认证没有通过,则网络设备不向Client发送RA,拒绝Client的IPv6地址的配置请求。Client的IPv4认证通过之后,网络设备首先将用户信息添加到用户信息表中。该用户信息表的结构如表2所示表2<table>tableseeoriginaldocumentpage13</column></row><table>此时用户信息表中的用户地址只有IPv4地址,用户表中缺少IPv6链路本地地址和IPv6全球地址,用户表项IPv4状态为NORMAL态,IPv6状态为INIT态。网络设备同时下发IPv4源地址、端口(也可以加上MAC)的ACL(AccessControlList,访问控制列表),允许Client通过IPv4源地址接入网络。然后通知自身的ND模块向Client发送对应用户的单播RA,通知用户IPv6地址配置方式。网络设备在RA中通过将设备M标记为0或1区分客户端进行IPv6地址配置的不同方式。例如,RA中设备M标记为O表示客户端使用无状态地址自动配置,标记为1表示客户端使用DHCPv6申请IPv6地址。然后,网络设备启动对应的DHCPv6报文侦听功能,进行相应的表项控制规则的生成。RA发送成功后,网络设备将用户表项中的IPv6状态置为RA状态。其中,网络设备通知自身的ND模块向Client发送对应用户的单播RA,通知用户IPv6地址配置方式具体为ND模块首先根据Client的源IPv6链路本地地址、链路地址和端口,查找用户表,如果找到相应的用户表项,且IPv6状态为INIT态,则ND模块向Client回应一个单播RA,同时将表项IPv6状态置为RA态。步骤603,客户端接收到发送的RA通知后,根据其中的信息配置自身的IPv6全球单播地址,并进行DAD检测。步骤604,网络设备根据DAD检测报文及定时器,生成对应的用户表项的控制规则,根据该控制规则控制IPv6地址上网。具体的,如果网络设备的ND模块在预置的RA—DELAY(默认为l秒)内,收到同一用户的对应的IPv6全球单播地址的DADNS报文(与用户的MAC地址、端口等信息一致),且用户表中对应表项IPv6状态为RA态,则添加表项中的IPv6全球地址,并将IPv6状态置为DAD态。如果网络设备的ND模块在DAD态之后DAD_RELAY(默认为1秒)后没有收到对应的NA,则表项IPv6状态置为NORMAL态,同时下发对应的IPv6源地址、端口(也可以加上MAC)的ACL,允许此全球IPv6地址上网。本应用场景中,用户表项生成后,网络设备还可以查找是否存在预配置策略,根据预配置策略确定是否下发控制规则。如果存在预配置策略,且该预配置策略中设置不允许客户端上网,则网络设备不下发相应的控制规则。步骤605,客户端根据配置的ACL正常上网。设备还启动定时握手机制,使用ARP报文定期监视用户的IPv4地址是否在线,使用NS报文定期监视用户的IPv6地址是否在线,在一个超时周期LIVE_TIME(默认180秒)超时不在线,则删除对应的IPv4/IPv6ACL,同时将用户表项中IPv4/IPv6状态置为INIT态。两个LIVE—TIME后,删除对应的用户表项。本发明另一应用场景提供的双栈安全接入的方法,考虑到在从IPv4向IPv6过渡过程中,为了能够尽快过渡,网络规划多采用IPv4/IPv6双网建设,即优先为用户提供IPv6服务,网络建设也倾向于IPv6。IPv4则作为辅助网络,在IPv6出现故障时才起作用;因此要能够单独对用户进行IPv6接入认证。具体的,本应用场景提供的方法,如图7所示,包括以下步骤步骤701,网络设备接收Client发送的IPv6的HTTP请求,将该HTTP请求重定向到自己的PortalServer上,强制用户进行PORTAL认证。具体的,此时的Portal认证,仅仅对IPv6链路本地地址进行认证。步骤702,网络设备在Client的认证通过后,将用户信息添加到用户表中,同时向Client下发DHCPDISCOVERY报文通知用户IPv4的地址配置方式,通过RA通知用户IPv6的地址配置方式。具体的,步骤701中Client的认证通过后,用户的地址只有IPv6链路本地地址,用户表中将缺少IPv4本地和IPv6全球单播地址,用户表项IPv6状态为INIT态,IPv4状态为INIT态。设备开始ND处理过程处理IPv6全球单播地址分配,开始DHCP处理过程处理IPv4地址分配。步骤703,客户端接收到汇聚层交换机发送的RA通知后,根据其中的信息配置自身的IPv6全球单播地址,并进行DAD检测。步骤704,网络设备根据DAD检测报文及定时器,生成对应的用户信息表项的IPv6部分,根据DHCPv4交互过程生成IPv4部分,根据用户信息表生成对应的IPv4/IPv6控制规则,控制IPv4和IPv6报文的转发。具体的,当用户信息表中IPv4状态以及IPv6状态为NORMAL时,网络设备判断Client可以通过IPv4地址或者IPv6地址接入网络,生成的控制规则为允许Client通过IPv4地址或者IPv6地址接入网络;否则,网络设备Client可以通过状态为NORMAL的某一协议栈地址接入网络,而不能通过另一协议栈地址接入网络,并生成相应的控制规则。步骤705,客户端根据配置的IPv4控制规则和IPv6控制规则上网。本发明应用场景中,步骤701中的Portal认证也可以是对IPv6链路本地地址以及IPv6全球单播地址的认证,认证通过后,将用户信息添加到用户表中,同时向Client下发DHCPNAK报文,或直接等待用户发起IPv4的DHCP申请。本发明另一应用场景提供的双栈接入的方法中,网络设备监视IPv4/IPv6双栈地址的分配过程,但不允许用户上网,然后在IPv4或者IPv6通过认证后,同时允许两个协议栈上网,或者根据用户策略控制用户上网。具体的,如图8所示,本应用场景提供的方法,包括以下步骤步骤801,网络设备为客户端分配IPv4/IPv6地址。步骤802,网络设备将用户信息添加到用户信息表中,包括用户的IPv4或IPv6地址、MAC地址、端口号等信息。步骤803,网络设备接收Client发送的IPv6/IPv4的HTTP请求,将该HTTP请求重定向到自己的PortalServer上,强制用户进行PORTAL认证。认证通过之后,网络设备根据认证用户的IPv4和/或IPv6地址、MAC地址、端口号,查找用户信息表,并将用户信息添加到用户信息表中,同时置用户表项IPv4状态/IPv6状态为NORMAL态。步骤804,客户端根据用户信息表,配置IPv4控制规则和IPv6控制规则,控制后续的IPv4/IPv6报文的转发。本发明的应用场景中,网络设备在地址分配过程中,侦听所有IPv4/IPv6地址分配过程。具体的,网络设备侦听IPv4地址分配具体为采用DHCPRELAY或DHCPSNOOPING技术,侦听完成后,填写表格中的IPv4地址部分,将IPv4状态置为ADDRLEARN状态;网络设备侦听IPv6地址分配具体为如果是DHCPv6分配,采用DHCPv6RELAY或DHCPv6SNOOPING技术,侦听完成后,填写表格中的IPv6地址部分;如果是ND无状态地址自动配置,采用侦听DADNS及超时定器的方法,取得相关的IPv6地址,填写表格中的IPv6地址部分,将IPv6状态置为ADDRLEARN状态。网络设备侦听获得IPv4/IPv6地址后,将相应的地址信息添加到用户信息表。网络设备根据获取的客户端的地址信息查找用户信息表,若已存储有该客户端的用户信息,则在相应的用户信息表项中添加新获取的地址信息等;若没有与获取到的用户信息相应的用户信息表项,则网络设备为该客户端新建信息表项存储其用户信息。本发明应用场景中的网络设备具体可以为汇聚层交换机或者其他可以起到相同作用的设备。通过采用本发明提供的方法,网络设备对双栈用户的第一协议栈地址进行认证,认证通过后,再为所述双栈接入用户分配第二协议栈地址,并在用户信息表中存储双栈用户的双栈地址等用户信息,对于IPv4/IPv6用户,侦听IPv4/IPv6地址分配过程,生成相应的控制规则控制客户端的IPv4/IPv6数据流,在IPv4/IPv6双栈的环境下,通过PORTAL认证,保证IPv4/IPv6用户接入的安全性和可控性,从而有效控制局域网设备通过IPv6协议栈对外部进行访问。本发明提供一种网络设备,应用于双协议栈系统,该系统包括双协议栈客户端、支持双协议栈接入的网络设备,如图9所示,该网络设备包括认证单元ll,用于对所述客户端的第一协议栈地址进行认证;地址分配单元12,用于所述认证单元11的认证结果为通过时,为所述客户端分配第二协议栈地址;用户信息获取单元13,用于当所述认证单元11的认证结果为通过时,在配置的用户信息表中存储所述客户端的用户信息,包括用户名、所述第一协议栈地址以及地址状态信息;并在所述地址分配单元12为所述客户端分配第二协议栈地址后,在所述用户信息表中存储所述第二协议栈地址以及所述第二协议栈地址的地址状态信息;接入控制单元14,用于根据所述用户信息获取单元13存储的客户端的用户信息配置控制规则,通过所述控制规则控制所述客户端的双栈接入。当所述第一协议栈地址为IPv4地址、所述第二协议栈地址为IPv6地址时,所述地址分配单元12具体用于在所述认证单元11的认证结果为通过时,向所述客户端发送单播路由器公告,通知所述客户端IPv6地址配置方式;所述用户信息获取单元13在所述认证单元ll的认证结果为通过时,在所述用户信息表中存储所述IPv4地址,并将所述IPv4地址状态设置为正常NORMAL;侦听所述客户端的IPv6地址分配过程,获取所述客户端的IPv6地址以及地址状态并在用户信息表中存储。具体的,所述用户信息获取单元13向所述客户端发送单播路由器公告后,将IPv6地址状态设置为路由器公告RA状态;如果所述网络设备在预设RA延迟时间内收到所述客户端发送的IPv6地址的重复地址检测邻居请求DADNS报文,且所述IPv6地址状态为RA状态,在所述用户信息表中添加所述IPv6地址,并将所述IPv6地址状态设置为DAD状态;如果在预设DAD延迟时间内没有收到所述客户端发送的邻居通告消息NA,将所述IPv6地址状态设置为NORMAL状态。当所述第一协议栈地址为IPv6地址、所述第二协议栈地址为IPv4地址时,所述用户信息获取单元13具体用于在所述认证单元11的认证结果为通过时,在所述用户信息表中存储所述IPv6地址,并将所述IPv6地址状态设置为正常NORMAL;侦听所述客户端的IPv4地址分配过程,获取所述客户端的IPv4地址以及地址状态并在用户信息表中存储。所述用户信息获取单元13还用于侦听所述第二协议栈地址的地址分配过程,获取所述客户端对应的端口,根据所述端口查找所述客户端在用户信息表中对应的表项;在所述对应的表项中存储所述第二协议栈地址以及所述第二协议栈地址的地址状态信息。所述接入控制单元14具体用于当所述客户端的用户信息中第一协议栈地址和/或第二协议栈地址的地址状态为正常NORMAL时,配置控制规则为允许所述客户端通过所述第一协议栈地址和/或第二协议栈地址接入网络。通过采用本发明提供的设备,网络设备对双栈用户的第一协议栈地址进行认证,认证通过后,再为所述双栈接入用户分配第二协议栈地址,并在用户信息表中存储双栈用户的双栈地址等用户信息,对于IPv4/IPv6用户,侦听IPv4/IPv6地址分配过程,生成相应的控制规则控制客户端的IPv4/IPv6数据流,在IPv4/IPv6双栈的环境下,通过PORTAL认证,保证IPv4/IPv6用户接入的安全性和可控性,从而有效控制局域网设备通过IPv6协议栈对外部进行访问。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。权利要求一种双栈接入的方法,其特征在于,应用于双协议栈系统,该系统包括双协议栈客户端、支持双协议栈接入的网络设备,该方法包括所述网络设备对所述客户端的第一协议栈地址进行认证,认证通过后,在配置的用户信息表中存储所述客户端的用户信息,包括用户名、所述第一协议栈地址以及地址状态信息;所述网络设备为所述客户端分配第二协议栈地址,并在所述用户信息表中存储所述第二协议栈地址以及所述第二协议栈地址的地址状态信息;所述网络设备根据所述客户端的用户信息配置控制规则,通过所述控制规则控制所述客户端的双栈接入。2.如权利要求1所述的方法,其特征在于,所述第一协议栈地址为IPv4地址、所述第二协议栈地址为IPv6地址,所述网络设备对所述客户端的第一协议栈地址进行认证,认证通过后,在配置的用户信息表中存储所述客户端的用户信息具体包括所述网络设备在所述用户信息表中存储所述IPv4地址,并将所述IPv4地址状态设置为正常NORMAL;所述网络设备为所述客户端分配第二协议栈地址,并在所述用户信息表中存储所述第二协议栈地址以及所述第二协议栈地址的地址状态信息具体包括所述网络设备向所述客户端发送单播路由器公告,通知所述客户端IPV6地址配置方式;所述网络设备侦听所述客户端的IPv6地址分配过程,获取所述客户端的IPv6地址以及地址状态并在用户信息表中存储。3.如权利要求2所述的方法,其特征在于,所述网络设备侦听所述客户端的IPv6地址分配过程,获取所述客户端的IPv6地址以及地址状态并在用户信息表中存储具体为所述网络设备向所述客户端发送单播路由器公告后,将IPv6地址状态设置为路由器公告RA状态;如果所述网络设备在预设RA延迟时间内收到所述客户端发送的IPv6地址的重复地址检测邻居请求DADNS报文,且所述IPv6地址状态为RA状态,所述网络设备在所述用户信息表中添加所述IPv6地址,并将所述IPv6地址状态设置为DAD状态;如果在预设DAD延迟时间内没有收到所述客户端发送的邻居通告消息NA,所述网络设备将所述IPv6地址状态设置为NORMAL状态。4.如权利要求1所述的方法,其特征在于,所述第一协议栈地址为IPv6地址、所述第二协议栈地址为IPv4地址,所述网络设备对所述客户端的第一协议栈地址进行认证,认证通过后,在配置的用户信息表中存储所述客户端的用户信息具体包括所述网络设备在所述用户信息表中存储所述IPv6地址,并将所述IPv6地址状态设置为正常NORMAL;所述网络设备为所述客户端分配第二协议栈地址,并在所述用户信息表中存储所述第二协议栈地址以及所述第二协议栈地址的地址状态信息具体包括所述网络设备侦听所述客户端的IPv4地址分配过程,获取客户端的IPv4地址以及地址状态并在用户信息表中存储。5.如权利要求1-4中任一项所述的方法,其特征在于,所述网络设备为所述客户端分配第二协议栈地址,并在所述用户信息表中存储所述第二协议栈地址以及所述第二协议栈地址的地址状态信息包括所述网络设备侦听所述第二协议栈地址的地址分配过程,获取所述客户端对应的端口,根据所述端口查找所述客户端在用户信息表中对应的表项;所述网络设备在所述对应的表项中存储所述第二协议栈地址以及所述第二协议栈地址的地址状态信息。6.如权利要求1所述的方法,其特征在于,所述网络设备根据所述客户端的用户信息配置控制规则具体为当所述客户端的用户信息中第一协议栈地址和/或第二协议栈地址的地址状态为正常NORMAL时,所述网络设备配置控制规则为允许所述客户端通过所述第一协议栈地址和/或第二协议栈地址接入网络。7.—种网络设备,其特征在于,应用于双协议栈系统,该系统包括双协议栈客户端、支持双协议栈接入的网络设备,该网络设备包括认证单元,用于对所述客户端的第一协议栈地址进行认证;地址分配单元,用于所述认证单元的认证结果为通过时,为所述客户端分配第二协议栈地址;用户信息获取单元,用于当所述认证单元的认证结果为通过时,在配置的用户信息表中存储所述客户端的用户信息,包括用户名、所述第一协议栈地址以及地址状态信息;并在所述地址分配单元为所述客户端分配第二协议栈地址后,在所述用户信息表中存储所述第二协议栈地址以及所述第二协议栈地址的地址状态信息;接入控制单元,用于根据所述用户信息获取单元存储的客户端的用户信息配置控制规则,通过所述控制规则控制所述客户端的双栈接入。8.如权利要求7所述的网络设备,其特征在于,所述第一协议栈地址为IPv4地址、所述第二协议栈地址为IPv6地址,所述地址分配单元具体用于所述认证单元的认证结果为通过时,向所述客户端发送单播路由器公告,通知所述客户端IPv6地址配置方式;所述用户信息获取单元具体用于所述认证单元的认证结果为通过时,在所述用户信息表中存储所述IPv4地址,并将所述IPv4地址状态设置为正常NORMAL;侦听所述客户端的IPv6地址分配过程,获取所述客户端的IPv6地址以及地址状态并在用户信息表中存储。9.如权利要求8所述的网络设备,其特征在于,所述用户信息获取单元还用于向所述客户端发送单播路由器公告后,将IPv6地址状态设置为路由器公告RA状态;如果所述网络设备在预设RA延迟时间内收到所述客户端发送的IPv6地址的重复地址检测邻居请求DADNS报文,且所述IPv6地址状态为RA状态,在所述用户信息表中添加所述IPv6地址,并将所述IPv6地址状态设置为DAD状态;如果在预设DAD延迟时间内没有收到所述客户端发送的邻居通告消息NA,将所述IPv6地址状态设置为NORMAL状态。10.如权利要求7所述的网络设备,其特征在于,所述第一协议栈地址为IPv6地址、所述第二协议栈地址为IPv4地址,所述用户信息获取单元具体用于所述认证单元的认证结果为通过时,在所述用户信息表中存储所述IPv6地址,并将所述IPv6地址状态设置为正常NORMAL;侦听所述客户端的IPv4地址分配过程,获取所述客户端的IPv4地址以及地址状态并在用户信息表中存储。11.如权利要求7-10中任一项所述的网络设备,其特征在于,所述用户信息获取单元还用于侦听所述第二协议栈地址的地址分配过程,获取所述客户端对应的端口,根据所述端口查找所述客户端在用户信息表中对应的表项;在所述对应的表项中存储所述第二协议栈地址以及所述第二协议栈地址的地址状态信息。12.如权利要求7所述的网络设备,其特征在于,所述接入控制单元具体用于当所述客户端的用户信息中第一协议栈地址和/或第二协议栈地址的地址状态为正常NORMAL时,配置控制规则为允许所述客户端通过所述第一协议栈地址和/或第二协议栈地址接入网络。全文摘要本发明公开了一种双栈接入的方法,包括网络设备对客户端的第一协议栈地址进行认证,认证通过后,在配置的用户信息表中存储所述客户端的用户信息,包括用户名、所述第一协议栈地址以及地址状态信息;所述网络设备为所述客户端分配第二协议栈地址,并在所述用户信息表中存储所述第二协议栈地址以及所述第二协议栈地址的地址状态信息;所述网络设备根据所述客户端的用户信息配置控制规则,通过所述控制规则控制所述客户端的双栈接入。本发明中,通过对双栈用户的认证,实现了对双栈用户网络接入的有效控制。文档编号H04L29/06GK101692674SQ20091021018公开日2010年4月7日申请日期2009年10月30日优先权日2009年10月30日发明者林涛申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1