通过业务诊断功能,维护人员可以根据需要通过命令行创建一个诊断对象。当符合诊断对象的属性特征的用户上线时,设备根据诊断对象为其自动创建诊断实例,并对该实例在接入过程中的状态变化、协议处理结果等信息进行诊断并输出。
诊断对象是具有某些相同属性的用户集合的抽象,比如同一接口板下所有用户可以定义为一个诊断对象。诊断实例则是诊断对象的实例化,对应某个具体用户。
诊断对象可以根据以下属性定义:- 物理接口号
- 主叫号码
- 隧道号
- VLAN
- QinQ VLAN
- 接入方式
- 用户名
- IP地址
- MAC地址
在现网中定位用户在接入过程中出现的问题时,根据调试信息定位问题往往比较困难,因为存在多用户同时上下线,无法根据指定的用户打印调试信息。因此,维护人员需要一种能够捕捉到指定用户的业务信息的手段。
路由器的业务诊断功能就是负责提供这样的一种手段。
目前,设备支持对DHCP业务、L2TP业务、AAA业务和NAC业务进行业务诊断。通过对各业务进行诊断,能够完整输出用户接入过程中各模块的关键交互信息,一方面便于维护人员了解业务的工作原理,另一方面在业务异常时,可以根据业务诊断信息进行问题定位和处理。各业务诊断过程中的关键交互信息如
表8-1所示。
表8-1 业务诊断过程中的关键交互信息
DHCP
DHCP服务器
地址分配、地址释放和地址续租过程中的关键交互信息。
DHCP客户端
地址申请、地址释放、地址续租和地址冲突过程中的关键交互信息。
DHCP中继
DHCP客户端和DHCP服务器之间进行地址申请、地址释放和地址续租过程中的关键交互信息。
DHCP Snooping
地址申请、地址释放、地址续租和动态绑定表添加或删除过程中的关键交互信息。
L2TP
控制消息和数据消息的关键交互信息。
AAA
用户接入、认证、计费和授权过程中的关键交互信息。
说明:业务诊断功能仅支持对AAA业务的普通用户进行诊断。
NAC
用户接入和认证过程中的关键交互信息。
配置业务诊断功能背景信息打开业务诊断功能将影响系统的性能,因此建议只在需要进行问题定位时启用,问题定位完成后应及时执行undo trace enable命令关闭业务诊断功能。
对于不同的业务,相应的用户特征也不同,因此在创建诊断对象时应根据具体业务来创建。
- DHCP业务:按MAC地址创建诊断对象。
- L2TP业务:按主叫号码或隧道号创建诊断对象。
- AAA和NAC业务:按MAC地址、IP地址、用户名、用户VLAN、接入方式或接口创建诊断对象。
trace enable和trace syslog source命令执行后不生成配置文件,因此在设备重启后,如果想要命令对应的功能生效,必须再次执行此命令。
操作步骤- 执行命令system-view,进入系统视图。
- 执行命令trace enable [ brief ],打开业务诊断功能。
缺省情况下,业务诊断功能为关闭状态。
- 当执行trace enable brief时,打开业务诊断功能并设置设备输出的业务诊断信息为简要信息。
- 当执行trace enable时,打开业务诊断功能并设置设备输出的业务诊断信息为详细信息。
- 执行命令,创建诊断对象。
缺省情况下,未创建诊断对象。当创建诊断对象的时候未指定输出方向,诊断信息输出方向缺省为命令行配置终端。
建议将诊断信息输出方向配置为输出到指定文件。
诊断信息输出文件最大长度不超过1M字节,超过后不再记录新的诊断信息。
- (可选)执行命令save trace information,将缓存区的诊断信息保存至文件中。
仅当创建的诊断对象指定诊断信息的输出方向为以文件的形式保存在设备上,维护人员如果想查看即时的诊断信息,可以配置将缓存区的诊断信息保存至文件中。
- (可选)执行命令trace syslog source interface-type interface-number,设置诊断信息输出到日志服务器的源接口。
缺省情况下,诊断信息输出到日志服务器的源接口未指定。
仅当创建的诊断对象指定诊断信息的输出方向为日志服务器时,根据需要可以配置诊断信息输出到日志服务器的源接口。
检查配置结果- 执行命令display trace information,查看业务诊断信息。
执行命令display trace instance [ instance-start-id [ instance-end-id ] | mac-address mac-address | ip-address ip-address [ vpn-instance vpn-instance-name ] | interface interface-type interface-number | cid cid ] [ slot slot-id ],查看设备上的诊断实例。
执行命令display trace object [ service-object-id ] [ slot slot-id ],查看业务诊断对象的配置信息。