目录

简介

先决条件

要求

使用的组件

规则

配置

CDR 输出示例

相关信息

简介

客户有时需要通过 IP 语音 (VoIP) 系统记录呼叫详细记录 (CDR)，以实现记帐或计费目的。执行此操作的建议方式是使用外部验证、授权和记帐(AAA)服务器(RADIUS或TACACS)。 这些 AAA 系统通常提供 CDR 日志记录、呼叫后记录处理和计费报告生成设备。

某些情况下，考虑到 AAA 服务器的复杂性或成本，可能不宜使用 AAA 服务器，但仍然需要进行 CDR 日志记录。在这种情况下，有可能使用Cisco网关或路由器的系统日志功能，记录发送到外部系统日志服务器的VoIP CDR。这些记录采用逗号分隔变量 (CSV) 格式。它们可以由外部软件应用程序（例如，电子表格或数据库）方便地载入和处理。Syslog 服务器软件可以在基本 PC 上运行。基本 syslog 服务器应用程序可以从互联网下载。对于任何特定类型或版本的 syslog 服务器软件，Cisco 不做任何推荐。

系统日志将用户数据报协议(UDP)用作基础传输机制，因此数据包没有排序，也未被承认。在使用率很高的网络上，一些数据包可能会被丢弃，因此可能会丢失 CDR 信息。可以指定多个 syslog 服务器来实现冗余。

CDR上的时间戳如果正确，则需要通过网络时间协议(NTP)时钟源配置Cisco IOS.路由器或网关，实现时间同步。如果路由器没有NTP同步，每个CDR的开始和停止时间将为零(空)值。如果外部NTP来源不能使用，路由器需要设置为NTP主设备。这将在配置部分进行说明。

先决条件

要求

本文档没有任何特定的要求。

使用的组件

本文档不限于特定的软件和硬件版本。

规则

有关文档规则的详细信息，请参阅 Cisco 技术提示规则。

配置

以下是启用路由器生成 VoIP CDR 并将其发送到外部 syslog 服务器的配置示例：

router(config)#service timestamps log datetime msec localtime

!--- Ensures that the records are timestamped with an accurate value.

!

router(config)#aaa new-model

!

router(config)#aaa authentication login default none

!--- Enables AAA to prevent Telnet authentication via AAA.

router(config)#aaa accounting connection h323 start-stop radius

!--- Generates the H.323 call start/stop CDRs.

router(config)#gw-accounting syslog

!--- Sends the H.323 CDRs to the syslog server.

router(config)#logging 10.64.6.250

!--- The IP address of the syslog server. Multiple syslog servers !--- can be specified for redundancy.

必须在 Cisco IOS 路由器或网关上运行 NTP，确保 H.323 开始/停止记录的时间值是正确的。以下是 NTP 的两种方法：

- 使用以下 Cisco IOS 软件全局配置命令，令 Cisco IOS 路由器或网关与外部 NTP 服务器同步：

router(config)#ntp server ip address

ip address - 提供时钟同步服务的时间服务器的 IP 地址。

- 如果没有外部 NTP 时间源，请使用内部时钟作为时间源。如下所示，可以使用 Cisco IOS 软件全局配置命令完成此操作：

router(config)#ntp master

应使用以下命令将路由器时钟设置为正确的时间（通过正常的 EXEC 模式），确保时间戳是正确的：

router#clock set 15:15:00 8 May 2001

注意：在某些Cisco平台上，路由器时钟不使用电池源备份。在路由器重新加载后或电源故障后，需要重设系统时间。

CDR 输出示例

以下是路由器控制台输出的一部分。启用本文档中的配置时，CDR 将定向到路由器控制台和 syslog 服务器。要从路由器控制台取消日志记录，请在路由器的全局配置模式下配置 no logging console。这可以防止CDR和其他系统信息出现在控制台上，但它们仍然被记录到系统日志服务器。

当VOIP发出呼叫时，它沿转发方向向目的地发出一个呼叫。目标将进行回归呼叫以实现全双工 VoIP 连接。因此，有一个CDR用于前向段，另一个CDR用于回归段。当回归呼叫段具有呼叫始发地1时，前向呼叫段则具有呼叫始发地2。

注：为了打印目的，某些输出行被分成多行。

router#

!--- This output is for the forward call leg.

Jun 18 11:15:02.867: %VOIPAAA-5-VOIP_CALL_HISTORY: CallLegType 1, ConnectionId BA55719E

F8C10015 0 1B1E08, SetupTime 11:14:39.367 UTC Mon

Jun 18 2001, PeerAddress 68575, PeerSubAddress , DisconnectCause 10  , DisconnectText

normal call clearing., ConnectTime 11:14:49.707 UTC Mon

Jun 18 2001, DisconnectTime 11:15:02.867 UTC Mon Jun 18 2001, CallOrigin 2,

ChargedUnits 0, InfoType 2, TransmitPackets 1509, TransmitBytes 102600,

ReceivePackets 1510, ReceiveBytes 138920

router#

!--- This output is for the reverse call leg.

Jun 18 11:15:02.983: %VOIPAAA-5-VOIP_CALL_HISTORY: CallLegType 1, ConnectionId BA55719E

F8C10015 0 1B1E08, SetupTime 11:14:41.683 UTC Mon

Jun 18 2001, PeerAddress 2887, PeerSubAddress , DisconnectCause 10  , DisconnectText

normal call clearing., ConnectTime 11:14:49.703 UTC Mon

Jun 18 2001, DisconnectTime 11:15:02.983 UTC Mon Jun 18 2001, CallOrigin 1,

ChargedUnits 0, InfoType 2, TransmitPackets 1510, TransmitBytes 102692,

ReceivePackets 1509, ReceiveBytes 138828

router#

此 CDR 显示：

前向呼叫段

生成的时间 CDR

:Jun 18 11:15:02.867

唯一连接 ID

:BA55719E F8C10015 0 1B1E08

建立时间

:11:14:39.367 UTC Mon Jun 18 2001

PeerAddress（主叫号码）

:68575

断开原因代码

:10

断开连接原因文本

:正常呼叫清除

连接时间

:11:14:49.707 UTC Mon Jun 18 2001

呼叫来源

:2

断开时间

:11:15:02.867 UTC Mon Jun 18 2001

发送数据包

:1509

发送字节

:102600

接收数据包

:1509

接收字节

:138828

回归呼叫段

生成的时间 CDR

:Jun 18 11:15:02.983

连接 ID

:BA55719E F8C10015 0 1B1E08

建立时间

:11:14:41.683 UTC Mon Jun 18 2001

PeerAddress（被叫号码）

:2887

断开原因代码

:10

断开连接原因文本

:正常呼叫清除

连接时间

:11:14:49.703 UTC Mon Jun 18 2001

呼叫来源

:1

断开时间

:11:15:02.983 UTC Mon Jun 18 2001

发送数据包

:1510

发送字节

:102692

接收数据包

:1509

接收字节

:138828

断开连接原因代码值默认为十六进制。下表显示了某些常见的十六进制值及其说明：

十六进制值

解释

0x0

请参阅下面的附注

0x1

未赋值数字

0x3

没有指向目标的路由

0x10

正常呼叫清除

0x11

用户忙

0x12

用户无响应

0x13

无用户应答

0x15

呼叫被拒绝

0x1C

无效号码

0x1F

正常，不明

0x22

无电路

0x2C

无请求的电路

0x2F

无资源

0x3F

服务或选项不可用，不明

注意：当发出show h323 gateway cause-codes命令时，某些Cisco IOS软件版本可能会提供许多Disconnect Cause Code "0"消息。这是表面缺陷，对性能没有任何影响。

相关信息

- 排查 VoIP 呼叫故障并对其进行调试 - 基础知识

- 语音技术支持

- 语音和 IP 通信产品支持

- Cisco IP 电话故障排除

- 技术支持和文档 - Cisco Systems