浅谈绑定之应用

来源:百度文库 编辑:神马文学网 时间:2024/04/30 11:09:46
 

绑定是目前普遍宣传和被应用的功能,如常见的端口绑定、MAC绑定、IP绑定、动态绑定、静态绑定等。其根本目的是要实现用户的唯一性确定,从而实现对以太网用户的管理。

  一、绑定的由来

  绑定的英文词是BINDING,其含义是将两个或多个实体强制性的关联在一起。一个大家比较熟悉的例子,就是配置网卡时,将网络协议与网卡驱动绑定在一起。其实在接入认证时,匹配用户名和密码,也是一种绑定,只有用户名存在并且密码匹配成功,才认为是合法用户。在这里,用户名已经可以唯一标识某个用户,与对应密码进行一一绑定。

  二、绑定的分类

  从绑定的实现机制上,可以分为AAA(服务器)有关绑定和AAA无关绑定;从绑定的时机上,可以分为静态绑定和动态绑定。

  AAA是用户信息数据库,所以AAA有关绑定以用户信息为核心,认证时设备上传绑定的相关属性(端口、VLAN、MAC、IP等),AAA收到后与本地保存的用户信息匹配,匹配成功则允许用户上网,否则拒绝上网请求。

  AAA无关绑定完全由接入设备实现。接入设备(如Lanswitch)上没有用户信息,所以AAA无关绑定只能以端口为核心,在端口上可以配置本端口可以接入的MAC(或IP)地址列表,只有其MAC地址属于此列表中的计算机才能够从该端口接入网络。

  静态绑定是在用户接入网络前静态配置绑定的相关信息,用户接入认证时,匹配这些信息,只有匹配成功才能接入。

  动态绑定的相关信息不是静态配置的,而是接入时才动态保存到接入设备上,接入网络后不允许用户再修改这些信息,一旦修改,则强制用户下线。

  AAA相关绑定一般都是静态绑定,动态绑定一般都是在接入设备上实现的。接入设备离最终用户最近,用户所有的认证数据流和业务数据流都必须经过接入设备,只有认证数据流经过AAA,所以接入设备可以最容易最及时发现相关绑定信息的变化,也方便采取强制用户下线等处理措施。另外,网络中AAA一般只有一台,集中管理,接入设备却有很多,由分散的接入设备监视用户绑定信息的变化,可以减轻AAA的负担。

  三、绑定的应用模式

  除了常用的用户名与密码绑定外,可以用于绑定的属性主要有:端口、VLAN、MAC地址和IP地址。这些属性的特性不同,其绑定的应用模式也有较大差别。

  1、IP地址绑定

  1)解释

  按照前边的定义标准,IP地址绑定可以分为AAA有关IP地址绑定、AAA无关IP地址绑定、IP地址静态绑定和IP地址动态绑定。

  AAA有关IP地址绑定:在AAA上保存用户固定分配的IP地址,用户认证时,接入设备上传用户机器静态配置的IP地址,AAA将设备上传IP地址与本地保存IP地址比较,只有相等才允许接入。

  AAA无关IP地址绑定:在接入设备上配置某个端口只能允许哪些IP地址接入,一个端口可以对应一个IP地址,也可以对应多个,用户访问网络时,只有源IP地址在允许的范围内,才可以接入。

  IP地址静态绑定:接入网络时检查用户的IP地址是否合法。

IP地址动态绑定:用户上网过程中,如更改了自己的IP地址,接入设备能够获取到,并禁止用户继续上网。

2)应用

  教育网中,学生经常改变自己的IP地址,学校里IP地址冲突的问题比较严重,各学校网络中心承受的压力很大,迫切需要限制学生不能随便更改IP地址。可以采用以下方法做到用户名和IP地址的一一对应,解决IP地址问题。

  如有DHCP Server,可以使用IP地址动态绑定,限制用户上网过程中更改IP地址。此时需要接入设备限制用户只能通过DHCP获取IP地址,静态配置的IP地址无效。如没有DHCP Server,可以使用AAA有关IP地址绑定和IP地址动态绑定相结合方式,限制用户只能使用固定IP地址接入,接入后不允许用户再修改IP地址。通过DHCP Server分配IP地址时,一般都可以为某个MAC地址分配固定的IP地址,再与AAA有关MAC地址绑定配合,变相的做到了用户和IP地址的一一对应。

  2、MAC地址绑定

  1)解释

  与IP地址绑定类似,MAC地址绑定也可以分为AAA有关MAC地址绑定和AAA无关MAC地址绑定;MAC地址静态绑定和MAC地址动态绑定。

  由于修改了MAC地址之后,必须重新启动网卡才能有效,重新启动网卡就意味着重新认证,所以MAC地址动态绑定意义不大。

  2)应用

  AAA有关MAC地址绑定在政务网或园区网中应用比较多,将用户名与机器网卡的MAC地址绑定起来,限制用户只能在固定的机器上上网,主要是为了安全和防止帐号盗用。但由于MAC地址也是可以修改的,所以这个方法还存在一些漏洞的。

  3、端口绑定

  1)解释

  端口的相关信息包含接入设备的IP地址和端口号。

  设备IP和端口号对最终用户都是不可见的,最终用户也无法修改端口信息,用户更换端口后,一般都需要重新认证,所以端口动态绑定的意义不大。由于AAA无关绑定是以端口为核心了,所以AAA无关端口绑定也没有意义。

  有意义的端口绑定主要是AAA有关端口绑定和端口静态绑定。

  2)应用

  AAA有关端口绑定主要用于政务网、园区网和运营商网络,从而限制用户只能在特定的端口上接入。

  4、VLAN绑定

  1)解释

  与端口绑定类似,VLAN相关信息也配置在接入设备上,最终用户无法修改,所以,VLAN动态绑定意义不大。对于AAA无关VLAN绑定,如只将端口与VLAN ID绑定在一起,那么如果用户自己连一个HUB,就会出现一旦此HUB上的一个用户认证通过,其他用户也可以上网的情况,造成网络接入不可控,所以一般不会单独使用AAA无关的VLAN绑定。

  常用的VLAN绑定是AAA有关VLAN绑定和VLAN静态绑定。

2)应用

  如网络接入采用二层结构,上层是三层交换机,下层是二层交换机,认证点在三层交换机上,这种情况下,仅靠端口绑定只能限制用户所属的三层交换机端口,限制范围太大,无法限制用户所属的二层交换机端口。

  使用AAA有关VLAN绑定和VLAN静态绑定就可以解决这个问题。

  分别为二层交换机的每个下行端口各自设置不同的VLAN ID,二层交换机上行端口设置为VLAN透传,就产生了一个三层交换机端口对应多个VLAN ID的情况,每个VLAN ID对应一个二层交换机的端口。用户认证时,三层交换机将VLAN信息上传到AAA,AAA与预先设置的信息匹配,根据匹配成功与否决定是否允许用户接入。

  此外,用户认证时,可以由AAA将用户所属的VLAN ID随认证响应报文下发到接入设备,这是另外一个角度的功能。虽然无法限制用户只能通过特定的二层交换机端口上网,但是可以限制用户无论从那个端口接入,使用的都是用一个VLAN ID。这样做的意义在于,一般的DHCP Server都可以根据VLAN划分地址池,用户无论在哪个位置上网,都会从相同的地址池中分配IP地址。出口路由器上可以根据源IP地址制定相应的访问权限。综合所有这些,变相的实现了在出口路由器上根据用户名制定访问权限的功能。

  5、其它说明

  标准的802.1x认证,只能控制接入端口的打开和关闭,如某个端口下挂了一个HUB,则只要HUB上有一个用户认证通过,该端口就处于打开状态,此HUB下的其他用户也都可以上网。为了解决这个问题,出现了基于MAC地址的认证,某个用户认证通过后,接入设备就将此用户的MAC地址记录下来,接入设备只允许所记录MAC地址发送的报文通过,其它MAC地址的报文一律拒绝。

  为了提高安全性,接入设备除了记录用户的MAC地址外,还记录了用户的IP地址、VLAN ID等,收到的报文中,只要MAC地址、IP地址和VLAN ID任何一个与接入设备上保存的信息匹配不上,就不允许此报文通过。有的场合,也将这种方式称为接入设备的“MAC地址+IP地址+VLAN ID”绑定功能。功能上与前边的AAA无关的动态绑定比较类似,只是用途和目的不同。

  四、业界厂商产品对绑定的支持

  以上的常用绑定功能业界厂商都普遍支持,一些厂商还进行了更有特色的功能开发,如华为提供的以下增强功能:

  1、绑定信息自学习

  1)MAC地址自动学习

  配置AAA相关MAC地址绑定功能时,MAC很长,难以记忆,输入时也经常出错,一旦MAC地址输入错误,就会造成用户无法上网,大大增加了AAA系统管理员的工作量。CAMS实现了MAC地址自动学习功能,可以学习用户第一次上网的MAC地址,并自动与用户绑定,既减少了工作量,又不会出错。以后用户MAC地址变更时,系统管理员将用户绑定的MAC地址清空,CAMS会再次自动学习用户MAC地址。

  2)IP地址自动学习

  与MAC地址自动学习类似。

  2、一对多绑定

  1)IP地址一对多绑定

  用户可以绑定不只一个IP地址,而是可以绑定一个连续的地址段。这个功能主要应用于校园网中,一个教研室一般都会分配一个连续的地址段,教研室的每个用户都可以自由使用该地址段中的任何一个IP地址。教研室内部的网络结构和IP地址经常变化,将用户和教研室的整个地址段绑定后,可以由各教研室自己分配和管理内部IP地址,既不会因教研室内部IP地址分配问题影响整个校园网的正常运转,又可以大大减少AAA系统管理员的工作量。

  2)端口一对多绑定

  与IP地址一对多绑定类似,也存在端口一对多绑定的问题。CAMS将端口信息分成以下几个部分:接入设备IP地址-槽号-子槽号-端口号-VLAN ID,这几个部分按照范围由广到窄的顺序。任何一个部分都可以使用通配符,表示不限制具体数值。比如,端口号部分输入通配符,就表示将用户绑定在某台交换机下的某个槽号的某个子槽号的所有端口上,可以从其中的任何一个端口接入。