IEEE802.1xPort-Based Network Access Control)是一个基于端口的网络接入控制标准,LAN接入提供点对点式的安全接入。这是IEEE标准委员会针对以太网的安全缺陷而专门制定的标准,能够在利用IEEE 802 LAN的优势基础上,提供一种对连接到局域网设备或用户进行认证的手段。IEEE 802.1x标准定义了一种基于客户端——服务器Client-Server)模式实现了限制未认证用户对网络的访问。客户端要访问网络必须先通过认证服务器的认证。
在客户端通过认证之前,只有EAPOL报文(Extensible Authentication Protocol over LAN)可以在网络上通行。在认证成功之后,通常的数据流便可在网络上通行。

认证的发起及认证过程中的报文交互
恳请者和认证者之间通过EAPOL协议交换信息,而认证者和认证服务器通过RADIUS协议交换信息,通过这种转换完成认证过程。EAPOL协议封装于MAC层之上,类型号为0x888E。同时,标准为该协议申请了一个组播MAC地址01-80-C2-00-00-03,用于初始认证过程中的报文传递。
下图是一次典型的认证过程中,三个角色设备的报文交互过程
锐捷网络产品特有的功能
   为了方便宽带运营商及其他特殊场合的用途,锐捷对802.1x的功能在标准的基础上进行了扩展(该扩展是完全基于标准之上,没有任何的与IEEE 802.1x不兼容)
IP授权模式
    锐捷网络实现的802.1x,可以强制要求已认证的用户使用固定的IP。管理员通过配置IP授权模式来限定用户获得IP地址的方式。IP授权模式有三种:DISABLE模式、DHCP SERVER模式、RADIUS SERVER模式。下面分别介绍这三种工作模式的特性:
DISABLE模式(默认):在该模式下,交换机不对用户的IP做限制,用户只需认证通过便可以使用网络。
DHCP SERVER模式:用户的IP通过指定的DHCP SERVER获得,只有指定的DHCP SERVER分配的IP才是合法的IP
RADIUS SERVER模式:用户的IP通过RADIUS SERVER指定。用户只能用RADIUS SERVER指定的IP访问网络。
三种模式下的应用模型:
DISABLE模式:适合不对用户限定IP的场合。用户只需通过认证便可以访问网络。
DHCP SERVER模式:用户PC通过DHCP获得IP地址,管理员通过配置交换机的DHCP RELAY来限定用户访问的DHCP SERVER,这样,只有指定的DHCP SERVER分配的IP才是合法的。
RADIUS SERVER模式:用户PC使用固定的IPRADIUS SERVER配置了<用户—IP>的对应关系,并通过RADIUS Framed-IP-Address属性告知交换机,用户只能用该IP才能访问网络。
发布广告信息

锐捷网络实现的802.1x,可以在Radius Server端配置Reply-Message字段,当认证成功后,该字段的信息可以在锐捷网络推出的802.1x客户端Star-Supplicant上显示出来,便于运营商发布一些信息。
该消息只有在用户第一次认证时显示,重认证时,不会显示,这样就避免了对用户的频繁打扰。
广告信息的显示窗口支持html,会自动把消息中的http://XXX.XXX.XX转换成可直接跳转的连接,便于用户查看详细的信息。
广告信息的发布:
1、运行商在Radius Server端,配置Reply Message属性的内容
2、只有1锐捷的客户端Star-才支持(对本公司交换机的用户免费),其它的客户端supplicant看不到信息但不影响使用 、在交换机端无需设置

某端口下的可认证主机列表
    为了增强802.1x的安全性,锐捷在不影响IEEE 802.1x的基础上进行了扩展,网管可以限定某个端口的认证的主机列表。如果一个端口下的可认证主机列表为空,则任何用户均可认证;若可认证主机列表不为空,那么只有列表中的主机允许认证。允许认证的主机用MAC标识。
授权

    为了方便运营商,我们的产品可以对不同类型的用户提供不同质量的服务,如:提供给用户的最大带宽不同。而这些信息集中于Radius Server上,管理员不必对每台交换机进行配置。
由于Radius没有标准的属性来表示最大数据率。锐捷只能通过厂商自定义属性来传递授权信息。我们定义的通用格式如下:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Vendor-Id
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Vendor-Id (cont) | Vendor type | Vendor length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Attribute-Specific...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
对于最大数据率应填的值如下:
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 0x1A | 0x0c | 0x00 0x00
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
0x13 0x11 | 0x01 | 0x06 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
最大数据率的十六进制值 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
最大数据率的单位:kbps
对于最大数据率为10M的用户应填如下:
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 0x1A | 0x0c | 0x00 0x00
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
0x13 0x11 | 0x01 | 0x06 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 0x00002710 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
自定义的头照上填,最大数据率为10M,即10000kbsp,转换成16进制则0x00002710,填在相应的字段上即可。
代理服务器屏蔽和拨号屏蔽
    用户自行架设代理服务器以及用户认证后再自行拨号上网,这是网络安全最大的两个隐患。锐捷网络交换机提供代理服务器屏蔽和拨号屏蔽功能。

    实现该功能交换机端不需任何设置。只需在RADIUS 服务器端配置相应的属性。由于Radius没有标准的属性来表示最大数据率。我们只能通过厂商自定义属性来传递授权信息。我们定义的通用格式见授权一节的说明。

    代理服务器屏蔽功能定义的Vendor type0x20,拨号屏蔽功能定义的Vendor type0x21Attribute-Specific字段为四个字节的厂商自定义属性,定义了对使用代理服务器上网和拨号上网行为所采取的动作. 0x0000表示正常连接,不进行检测屏蔽, 0x0001表示进行检测屏蔽。
若要屏蔽通过代理服务器上网,用户应填如下信息:
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 0x1A | 0x0c | 0x00 0x00
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
0x13 0x11 | 0x20 | 0x06 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0x0001 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


客户端在线探测
    为了保证计费的准确性,需要一种在线探测机制能够再短时间内获知用户是否在线。在标准实现中的重认证机制能够满足这种需求,但是标准实现中需要RADIUS服务器的参与,要实现准确的探测用户是否在线将会占用交换机和RADIUS服务器的大量资源。为了满足在占用少量资源的基础上实现计费的准确性,我们采用了一种新的客户端在线探测机制。这种机制只需要在交换机和客户端之间交互,并且对网络流量的占用极小,能够实现分钟级的计费精度(用户可以通过配置来确定计费的精度)
Sniffer Pro 的设置
定义过滤器:
Ethertype = 0x888E (8021X)



抓到的数据:

EAPOL - Start 初步分析如下:
===========================================================================
//
实达专有响应附加包,格式未了解

0xFF,0xFF,0x37,0x77,0xFF,0x00, //Destination
0x00,0x00,0x00,0x00,0x00,0x00, //Source
0x00,0x00,      //Ethertype = 0x888E (8021X)
0x00,       //Version = 1
0x00,       //Packet Type  0x00 ;0x01,EAPOL-Start ;0x02 ;0x03 ;0x04
0x00,0x00,      //Packet Body Length
0x00,0x00,0x00,0x08,0x15,
0x00,0x00,0x13,0x11,0x38,0x30,0x32,0x31,0x78,0x2E,0x65,0x78,0x65,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,
0x02,0x33,0x00,0x00,0x01,  //
为版本号2.51
0x00,0x00,0x13,0x11,0x00,0x28,0x1A,0x28,0x00,0x00,0x13,0x11,0x17,0x22,    //
此段总不变?
0x93,0x91,0x65,0x65,0x62,0x60,0x66,0x96,0x93,0x68,0x91,0x62,0x91,0x67,0x66,0x61, // 此段随机变化
0x96,0x91,0x64,0x68,0x93,0x62,0x69,0x64,0x61,0x69,0xc9,0xD3,0x62,0x65,0x67,0x68, //
0x00,0x00,0x13,0x11,0x18,0x06 //此段总不变?
=========================================================================

来源:http://blog.csdn.net/aijkxm/archive/2007/10/17/1829082.aspx