内容

概要

前提条件

要件

使用するコンポーネント

表記法

コンフィギュレーション

CDR 出力例

関連情報

概要

会計または課金目的で、Voice over IP（VoIP）システムからのコール詳細レコード（CDR）をロギングすることを、お客様が望むことがあります。これを実現するために推奨される方法は、外部の Authentication、Authorization、and Accounting（AAA; 認証、承認、会計）サーバ（RADIUS または TACACS）を使用することです。 通常、こうした AAA システムにより、CDR ロギング、コール レコード後処理、および課金レポート生成ファシリティが提供されます。

AAA サーバの複雑さやコストが原因で使用できない場合がありますが、それでも CDR ロギングが必要なことがあります。このような場合、Cisco ゲートウェイやルータのシスログ機能を使って、VoIP CDR を外部シスログ サーバにロギングできます。これらのレコードは、カンマ区切り値（CSV）フォーマットで記録されます。したがって、スプレッドシートやデータベースなどの外部ソフトウェア アプリケーションを使って簡単にロードして処理することができます。シスログ サーバ ソフトウェアは、通常の PC 上で実行できます。基本的なシスログ サーバ アプリケーションは、インターネットからダウンロード可能です。シスコは、特定のタイプまたはバージョンのシスログ サーバ ソフトウェアの推奨は行いません。

シスログは基本転送メカニズムとして User Datagram Protocol（UDP; ユーザ データグラム プロトコル）を使用するため、データ パケットに対してはシーケンス処理や確認応答が行われません。利用率が高いネットワークでは、パケットの一部がドロップされて CDR 情報が失われる可能性があります。冗長性を実現するため、複数のシスログ サーバを指定できます。

CDRのタイムスタンプを正しく設定するには、Cisco IOS®ルータまたはゲートウェイがNetwork Time Protocol(NTP)時刻源を介して時刻同期を行うように設定されている必要があります。ルータが NTP 同期機能を備えていない場合、各 CDR の開始時刻と終了時刻の値は 0（ヌル）になります。外部 NTP ソースが使用できない場合、ルータを NTP マスターとして設定する必要があります。これについては、「設定」のセクションで説明します。

前提条件

要件

このドキュメントに特有の要件はありません。

使用するコンポーネント

このドキュメントの内容は、特定のソフトウェアやハードウェアのバージョンに限定されるものではありません。

表記法

ドキュメント表記の詳細は、『シスコ テクニカル ティップスの表記法』を参照してください。

コンフィギュレーション

以下に、ルータによる VoIP CDR の生成と、外部シスログ サーバへの送信が可能な設定例を示します。

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.

H.323 開始/停止レコードに正確な時刻の値が記録されるようにするには、Cisco IOS ルータまたはゲートウェイで NTP を実行する必要があります。NTP には、次の 2 つのメソッドがあります。

- Cisco IOS ルータまたはゲートウェイを外部 NTP サーバに同期させるには、次の Cisco IOS ソフトウェア グローバル コンフィギュレーション コマンドを使用します。

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

注：一部のシスコプラットフォームでは、ルータクロックがバッテリ電源でバックアップされていません。そのため、ルータのリロード後または停電が発生した後は、システム時刻のリセットが必要となります。

CDR 出力例

以下に、ルータからのコンソール出力の一部を示します。このドキュメントで説明している設定 が有効にされている場合、CDR は syslog サーバだけでなく、ルータ コンソールにも転送されます。ルータ コンソールへのロギングを停止するには、ルータのグローバル コンフィギュレーション モードで no logging console を設定します。これにより、CDR や他のシステム メッセージがコンソールに表示されなくなりますが、シスログ サーバへのロギングは継続されます。

VoIP コールが発生すると、コールが送信先への転送方向に置かれます。送信先は、全二重の VoIP 接続を確立するため、リターン コールを返します。そのため、転送レッグ用に CDR が 1 つ、リターン レッグ用に 2 つ目の CDR が 1 つあります。転送コール レッグのコール オリジン は 2 で、リターン コール レッグのコール オリジン は 1 です。

注：出力行の中には、印刷用に複数の行に分割されているものがあります。

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

ピア アドレス（発信者番号）

:68575

接続解除原因コード

:10

接続解除原因テキスト

:normal call clearing（通常の通話解除）

接続時刻

:11:14:49.707 UTC Mon Jun 18 2001

コール オリジン

:0

切断時刻

: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

ピア アドレス（受信者番号）

:2887

接続解除原因コード

:10

接続解除原因テキスト

:normal call clearing（通常の通話解除）

接続時刻

:11:14:49.703 UTC Mon Jun 18 2001

コール オリジン

:1

切断時刻

:11:15:02.983 UTC Mon Jun 18 2001

送信パケット

:1510

送信バイト

:102692

受信パケット

:1509

受信バイト

:138828

接続解除原因コード値のデフォルト値は 16 進数です。次の表に、一般的な 16 進数の値とその説明を記載します。

16 進数の値

説明

0x0

以下の「注」を参照

0x1

番号未割り当て

0x3

宛先への経路がない

0x10

正常なコール クリア

0x11

ユーザ ビジー

0x12

ユーザの応答がない

0x13

ユーザからの返信がない

0x15

コール拒否

0x1C

無効な番号

0x1F

正常、詳細不明

0x22

回線がない

0x2C

要求された回線がない

0x2F

リソースがない

0x3F

サービスまたはオプションが利用できない、未指定

注：一部のCisco IOSソフトウェアリリースでは、show h323 gateway cause-codesコマンドを発行すると、多くの接続解除原因コード「0」メッセージが表示される場合があります。これは表面的な欠陥であり、パフォーマンスには影響しません。

関連情報

- VoIP コールのトラブルシューティングとデバッグ - 基本

- 音声に関する技術サポート

- 音声と IP 通信製品サポート

- Cisco IP Telephony のトラブルシューティング

- テクニカル サポートとドキュメント – Cisco Systems