终端类型识别
随着Internet的发展,许多企业开始考虑允许员工自带智能设备(例如手机、平板或笔记本电脑等移动设备)接入企业内部网络。一方面满足了企业员工对于新科技和个性化追求,另一方面也提高了员工的工作效率。这就是BYOD(Bring Your Own Device)。但是,员工个人电脑的安全性较低,通过个人电脑接入企业内部网络可能会导致安全隐患,而传统的基于用户角色认证和授权的安全技术已不能满足其网络安全的需要。因此,终端类型识别技术应运而生。在使用BYOD技术时,可以通过终端类型识别技术识别出企业员工接入内部网络的设备类型,以控制某些指定移动设备的接入,实现基于用户、设备类型、接入时间、接入地点、设备环境的认证和授权。
终端类型识别功能需要设备和RADIUS服务器配合实现:
- RADIUS服务器不支持终端类型识别功能时,需要在设备上配置终端类型识别功能,然后将识别出的终端类型发送给RADIUS服务器,RADIUS服务器再根据终端类型下发相应的权限。
设备上配置终端类型识别功能,其原理请参见设备终端类型识别功能原理。
- RADIUS服务器支持终端类型识别功能时,需要在RADIUS服务器上配置终端类型识别功能,并在设备上配置终端类型感知功能。通过终端类型感知功能,设备能够获悉终端的类型并发送给RADIUS服务器,进而使RADIUS服务器识别出用户的终端类型,根据用户的终端类型下发相应的权限。
设备上配置终端类型感知功能,其原理请参见设备终端类型感知功能原理。
设备终端类型识别功能原理
- 通过终端mDNS报文中的信息识别出终端IP地址、MAC地址、上报的服务、TXT、Target。
通过匹配终端的MAC地址里的前24位地址信息即厂商的组织唯一标识符OUI(Organizationally Unique Identifier)信息识别对应的设备厂商。
通过终端HTTP报文中的用户代理UA(User Agent)信息识别出客户所用的终端的操作系统、操作系统的版本、CPU类型、浏览器以及浏览器的版本。
通过终端DHCP报文中的Option12、Option55、Option60信息中的厂商信息识别出STA主机名以及厂商类型。
- 如图2-42所示,DHCP Option12即Host Name Option。该Option中,12表示信息类型,N表示后面信息内容的长度,h1至hN表示具体的信息内容(包含了STA的主机名)。
- 如图2-43所示,DHCP Option55即Parameter Request List。该Option中,55表示信息类型,N表示后面信息内容的长度,c1至cN表示具体的信息内容(包含了STA请求的DHCP Option参数列表,不同STA请求的参数列表存在差异)。
- 如图2-44所示,DHCP Option60即Vendor Class Identifier,该Option中,60表示信息类型,N表示后面信息内容的长度,i1至iN表示具体的信息内容(包含了厂商标识)。
设备终端类型感知功能原理
- 通过UA方式:设备从终端发送的HTTP Get报文中提取出UA字段(该字段中携带有终端类型信息)。之后,设备会把UA字段信息通过RADIUS计费报文中的华为159号扩展属性HW-HTTP-UA发送到RADIUS服务器。
- 通过DHCP选项字段方式:设备在接收到DHCP Request报文后解析出所需的Option字段(该字段中携带有终端类型信息)。之后,设备会把Option字段信息通过RADIUS计费报文中的华为158号扩展属性HW-DHCP-Option发送到RADIUS服务器。
- 通过LLDP TLV类型方式:设备在接收到LLDP报文后能够解析出所需的TLV类型(TLV携带了终端类型信息)。之后,设备会把TLV类型信息通过RADIUS计费报文中的华为163号扩展属性HW-LLDP发送到RADIUS服务器。