Les clients exigent parfois de journaliser les enregistrements détaillés des appels (CDR) des systèmes de voix sur IP (VoIP) à des fins de comptabilité ou de facturation. Pour ce faire, il est recommandé d’utiliser un serveur AAA (Authentication, Authorization, and Accounting) externe (RADIUS ou TACACS). Ces systèmes AAA fournissent souvent des fonctionnalités de journalisation des CDR, de traitement des enregistrements d’après appel et de génération de rapports de facturation.
Il peut y avoir des situations où la complexité ou le coût du serveur AAA interdit son utilisation, mais il existe toujours une exigence pour la journalisation CDR. Dans ce cas, il est possible d'utiliser les fonctionnalités syslog de la passerelle ou du routeur Cisco pour enregistrer les CDR VoIP sur un serveur syslog externe. Ces enregistrements sont au format CSV (virgule Separated Variable). Ils peuvent être facilement chargés et traités par une application logicielle externe telle qu'une feuille de calcul ou une base de données. Le logiciel du serveur Syslog peut s'exécuter sur un PC de base. Les applications de base du serveur Syslog peuvent être téléchargées depuis Internet. Cisco ne fait aucune recommandation sur un type ou une version spécifique du logiciel serveur Syslog.
Syslog utilise le protocole UDP (User Datagram Protocol) comme mécanisme de transport sous-jacent, de sorte que les paquets de données ne sont pas séquencés et ne sont pas reconnus. Il est possible que sur un réseau à forte utilisation, certains paquets puissent être abandonnés et donc que les informations CDR soient perdues. Plusieurs serveurs syslog peuvent être spécifiés pour la redondance.
Pour que l'horodatage du CDR soit correct, il est nécessaire que le routeur ou la passerelle Cisco IOS® soit configuré pour la synchronisation temporelle via une source temporelle NTP (Network Time Protocol). Si le routeur n'a pas de synchronisation NTP, les heures de début et d'arrêt de chaque CDR seront égales à zéro (Null). Si aucune source NTP externe n'est disponible, le routeur doit être défini comme maître NTP. Ceci est expliqué dans la section Configuration.
Aucune spécification déterminée n'est requise pour ce document.
Ce document n'est pas limité à des versions de matériel et de logiciel spécifiques.
Pour plus d'informations sur les conventions utilisées dans ce document, reportez-vous à Conventions relatives aux conseils techniques Cisco.
Voici un exemple de configuration qui permet au routeur de générer des CDR VoIP et de les envoyer à un serveur syslog externe :
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.
Le protocole NTP doit s'exécuter sur le routeur ou la passerelle Cisco IOS pour s'assurer que les enregistrements de début/d'arrêt H.323 ont la valeur d'heure correcte. Voici les deux méthodes de NTP :
Utilisez cette commande de configuration globale du logiciel Cisco IOS pour synchroniser le routeur ou la passerelle Cisco IOS vers un serveur NTP externe :
router(config)#ntp server ip address
ip address : adresse IP du serveur temporel qui fournit la synchronisation de l'horloge.
S'il n'y a pas de source temporelle NTP externe, utilisez l'horloge interne comme source temporelle. Pour cela, utilisez la commande de configuration globale du logiciel Cisco IOS présentée ici :
router(config)#ntp master
L’horloge du routeur doit être réglée sur l’heure correcte (à partir du mode d’exécution normal) avec cette commande pour s’assurer que les horodatages sont corrects :
router#clock set 15:15:00 8 May 2001
Remarque : Sur certaines plates-formes Cisco, l'horloge du routeur n'est pas sauvegardée avec une source de batterie. L'heure système doit être réinitialisée après un rechargement du routeur ou une panne de courant.
Il s’agit d’une partie du résultat de console du routeur. Lorsque la configuration de ce document est activée, les CDR sont dirigés vers la console du routeur ainsi que vers le serveur syslog. Afin de supprimer la journalisation de la console du routeur, configurez no logging console en mode de configuration globale sur le routeur. Cela empêche les CDR et autres messages système d'apparaître sur la console, mais ils sont toujours connectés au serveur Syslog.
Lorsqu'un appel VoIP est passé, il place un appel dans la direction de transfert vers la destination. La destination effectue un appel de retour pour obtenir une connexion VoIP bidirectionnelle simultanée. Par conséquent, il y a un CDR pour la jambe avant et un second CDR pour la jambe de retour. La branche d'appel de renvoi a une origine d'appel de 2 tandis que la branche d'appel de retour a une origine d'appel de 1.
Remarque : Certaines lignes de sortie sont divisées en plusieurs lignes à des fins d'impression.
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#
Ce CDR affiche :
Transfert de la file d'attente d'appel | |
---|---|
Heure générée par CDR | :: 18 juin 11:15:02.867 |
ID de connexion unique | :: BA55719E F8C10015 0 1B1E08 |
Heure de configuration | :: 11:14:39.367 UTC Lun 18 juin 2001 |
PeerAddress (numéro appelant) | :: 68575 |
Code de cause de déconnexion | :: 10 |
Déconnecter le texte de la cause | :: effacement d'appel normal |
Durée de connexion | :: 11:14:49.707 UTC Lun 18 juin 2001 |
Origine de l'appel | :: 2 |
Temps de déconnexion | :: 11:15:02.867 UTC Lun 18 juin 2001 |
Transmettre les paquets | :: 1509 |
Octets de transmission | :: 102600 |
Réception de paquets | :: 1509 |
Octets de réception | :: 138828 |
Bouton d'appel de retour | |
---|---|
Heure générée par CDR | :: 18 juin 11:15:02.983 |
ID de connexion | :: BA55719E F8C10015 0 1B1E08 |
Heure de configuration | :: 11:14:41.683 UTC Lun 18 juin 2001 |
PeerAddress (numéro appelé) | :: 2887 |
Code de cause de déconnexion | :: 10 |
Déconnecter le texte de la cause | :: effacement d'appel normal |
Durée de connexion | :: 11:14:49.703 UTC Lun 18 juin 2001 |
Origine de l'appel | :: 1 |
Temps de déconnexion | :: 11:15:02.983 UTC Lun 18 juin 2001 |
Transmettre les paquets | :: 1510 |
Octets de transmission | :: 102692 |
Réception de paquets | :: 1509 |
Octets de réception | :: 138828 |
Les valeurs de code de cause de déconnexion sont hexadécimales par défaut. Ce tableau présente certaines valeurs hexadécimales courantes et leurs explications :
Valeur hexadécimale | Explication |
---|---|
0x0 | Voir la remarque ci-dessous |
0x1 | Numéro non affecté |
0x3 | Aucune route vers la destination |
0x10 | Effacement d'appel normal |
0x11 | Utilisateur occupé |
0x12 | Aucune réponse de l'utilisateur |
0x13 | Aucune réponse d'utilisateur |
0x15 | Appel rejeté |
0x1C | Nombre incorrect |
0x1F | Normal, non spécifié |
0x22 | Aucun circuit |
0x2C | Aucun circuit demandé |
0x2F | Aucune ressource |
0x3F | Service ou option non disponible, non spécifié |
Remarque : certaines versions du logiciel Cisco IOS peuvent donner de nombreux messages de code de cause de déconnexion « 0 » lorsque la commande show h323 gateway cause-codes est émise. Il s'agit d'un défaut cosmétique qui n'a aucun impact sur les performances.