annuler
Affichage des résultats de 
Rechercher plutôt 
Vouliez-vous dire : 
cancel
519
Visites
0
Compliment
0
Commentaires
Jimena Saez
Community Manager
Community Manager

Table des matières


image

Introduction

Comme avec la plupart des nouvelles Technologies, les débuts peuvent être douloureux. Avec des joncteurs de réseau ITSP, il n'est pas différent.

Le manque de règles et d'instructions spécifiques peuvent ammener à une expérience intimidante en essayant de traiter l'enregistrement de CUBE avec ITSP.
Nous avons tous étés là, la première implémentation approximative de CUBE et le bonheur de surmonter les obstacles, de découvrir juste que la prochaine implémentation de CUBE nous emmènera complètement par un nouveau chemin dans un territoire inexploré. Et ce n'est pas de notre faute non plus ! Nous lisons, nous avons recherché, nous avons pris des exemples mais, les obstacles deviennent de plus en plus compliqués.

Le problème est qu'il y a trop de scénarios possibles. Certaines des principales raisons des variations massives sont:

  • Les ITSP doivent prendre en charge un grand nombre de fournisseurs, interprétant ainsi l’IETF.
  • Les différents ITSP utilisent des commutateurs logiciels et des architectures différents.
  • Nos propres conceptions, produits et versions varient d'un client à l'autre.

Par conséquent, les variations de déploiement sont inévitables. Heureusement, ces problèmes peuvent être résolus tant que nous comprenons certains concepts de base.

Dans cet article, je couvrirai les concepts d’enregistrement de CUBE et d’authentification de CUBE, car ils sont au cœur de notre communication avec l’ITSP.

Soyez prêts

La vérité c'est que le plus souvent, le client nous envoie ce pauvre fax numérisé qu'il a reçu de l'ITSP, qui comprend généralement trois lignes: nom d'utilisateur, mot de passe et adresse IP.
Youpi ! Je viens de gagner le gros lot !
Parfois, il nous semblerait que ce serait plus facile d'extraire des informations d'un espion.
Donc, si nous ne voulons pas passer la nuit à chasser des fantômes, nous devons nous poser les bonnes questions!

Le strict minimum que nous devons découvrir c'est l’approche de l’IPSP en matière d’enregistrement et en matière d’authentification. Notez mentalement qu'il s'agit de deux concepts différents avec des rôles distincts. Voyons donc de quoi il s'agit.

Enregistrement de CUBE

Vous êtes-vous déjà demandé à quoi sert vraiment l'enregistrement à l'ITSP? Eh bien, je l’ai fait moi-même, et pour être honnête, trop tard pour mon propre bien.

Tout simplement, l'enregistrement est là pour que l'ITSP sache que vous êtes en vie et surtout, où envoyer vos appels entrants. C'est comme inscrire votre nom et votre adresse, de sorte que vos factures soient délivrées au bon endroit.

Dans la plupart des cas, l'ITSP ne configure pas statiquement l'adresse IP de votre CUBE dans son système pour vous envoyer le trafic de SIP. C'est à quoi ça sert l'enregistrement, afin de gérer dynamiquement l'emplacement du DID de chaque client.

C'est évidemment un grand avantage pour l'ITSP, mais nous pouvons également le trouver utile, comme vous le remarquerez dans la section Dépannage.

Ceci dit, mettons-nous au boulot!

Paramètres demandés :

  • Nom d'utilisateur
  • Mot de passe
  • Serveur d'enregistrement IP / FQDN
  • Domaine

Notez que ce sont les paramètres exigés pour l'enregistrement seul. Pour une coupure réussie, plus d'informations vous seront requises. Vous pouvez trouver la liste complète ici.

 

Syntaxe de commande :

sip-ua
registrar [dns:/ipv4:/ipv6:] registrar-server-address
credentials username username password [0/7] password realm realm

 

Exemple :

  • Nom d'utilisateur : ucpros
  • Mot de passe : 123456
  • Serveur enregistré IP/FQDN : SIP.ucpros.net
  • Domaine : ucpros.net
sip-ua
  credentials username ucpros password 0 123456 realm ucpros.net
  registrar dns:SIP.ucpros.net

 

Vérifiez et dépannez

La première étape serait de s’assurer que nous ne tirons pas à blanc !
La méthode la plus simple pour vérifier que nous sommes bien inscrits à notre ITSP, est d'exécuter :

CUBE#show sip-ua register status
Line                             peer       expires(sec) reg survival P-Associ-URI
================================ ========== ============ === ======== ============
ucpros                           -1         56           yes normal
CUBE#

Si notre premier essai a échoué, nous devons comprendre pourquoi.
Exécutez les deux commandes ci-dessous pour voir les tentatives d’enregistrement de CUBE :

  • Debug ccsip messages
  • Debug ccsip non-call

Observez le code de réponse d'ITSP pour comprendre la raison de la panne. Ça devrait vous remettre sur le bon chemin.

Vous souvenez-vous de moi, en mentionnant au début qu'une inscription dynamique à l'ITSP peut nous aider à résoudre nos problèmes ? Eh bien, je ne mentais pas !

L'enregistrement dynamique signifie que vous pouvez réellement enregistrer à votre ITSP de tout appareil disposant des informations d'identification appropriées. Bien que ce ne soit pas la solution la plus intéressante en termes de sécurité, cela signifie que si tout ce que vous tentez échoue, essayez d’enregistrer un téléphone IP avec l'ITSP avec les mêmes identifiants. L'avantage est que, généralement ces téléphones IP exigent seulement la plupart d'informations de base comme le nom d'utilisateur, mot de passe et domaine. Le téléphone IP appliquera alors automatiquement ces informations aux messages SIP.

Personnellement j'utilise MicroSIP mais il y a beaucoup d'autres options.

Si vous parvenez à vous inscrire avec votre téléphone IP, cela signifie que l'ITSP a au moins fait quelque chose de correct, alors ouvrez votre Wireshark et comparez les messages SIP des tentatives d'enregistrement de CUBE avec celles générées par votre téléphone IP. Observez les différences dans les en-têtes de SIP pour comprendre ce qui ne va pas.

L'utilisation d'un téléphone IP simple est également très utile pour pour résoudre de nombreux problèmes liés à CUBE. Chaque fois que vous atteignez une impasse, utilisez-la pour comparer le comportement de CUBE avec autres appareils.

Authentification de CUBE

Contrairement à l'enregistrement, l'authentification est en fait une méthode utilisée par ITSP pour vérifier votre identité. Essentiellement, il utilise l’authentification pour décider si nous sommes autorisés à effectuer cet appel ou pas. Du point de vue de l’ITSP, l’authentification a pour rôle de vous permettre de passer des appels sortants. Sans cela, chaque tentative d'appel serait acceptée et cela est... inacceptable!

Dans la plupart des cas, l’authentification devrait être assez simple, si vous portez une attention particulière aux détails. (Indice: passez à la section de dépannage si vous ne supportez pas le suspense)

Paramètres demandés :

  • Nom d'utilisateur
  • Mot de passe
  • Domaine

 

Syntaxe de commande :

sip-ua
authentication username username password [0/7] password realm realm

 

Exemple :

  • Nom d'utilisateur : ucpros
  • Mot de passe : 123456
  • Domaine : ucpros.net
sip-ua
  authentication username ucpros password 0 123456 realm ucpros.net

 

Vérifiez et dépannez

Configurer l'authentification semble assez simple, mais chaque fois que cela pose un problème ou que les appels sortants échouent, ouvrez les yeux sur les pièges courants suivants.
Passons maintenant à l'action et activons les messages de débogage CCSIP!
Voici ce que vous verriez habituellement: (ne montrant que la communication entre CUBE et ITSP pour simplifier la sortie).
Vous trouverez ci-dessous un message d’invitation envoyé par CUBE à ITSP.

Observez le champ "from" (depuis). La syntaxe doit contenir soit votre nom d'utilisateur, soit un numéro en dehors de la plage allouée de votre DID! N'importe quelle autre information et vos appels ne passeront pas.

Faites attention au nombre de chiffres car les différents fournisseurs d'ISTP peuvent avoir des exigences différentes pour le numéro de l'appelant. Ce qui manque à certains d’entre nous, c’est que le champ "from" est en fait l’un des paramètres d’authentification.

Oct 23 12:15:13.648: //44/570577000000/SIP/Msg/ccsipDisplayMsg:
Sent:
INVITE sip:403454@iptel.org:5060 SIP/2.0
Via: SIP/2.0/UDP 192.168.1.20:5060;branch=z9hG4bK3AD75
Remote-Party-ID: "ucpros" <sip:100@192.168.1.20>;party=calling;screen=yes;privacy=off
From: "ucpros" <sip:ucpros@ucpros.net>;tag=345CA8-1182
To: <sip:403454@iptel.org>
Date: Sun, 23 Oct 2016 12:15:13 GMT
Call-ID: 2F3B7D9F-985111E6-8008865A-F6ED7E07@192.168.1.20
Supported: timer,resource-priority,replaces,sdp-anat
Min-SE:  1800
Cisco-Guid: 1459975936-0000065536-0000000001-0167880896
User-Agent: Cisco-SIPGateway/IOS-15.5.3.S2
Allow: INVITE, OPTIONS, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, SUBSCRIBE, NOTIFY, INFO, REGISTER
CSeq: 101 INVITE
Timestamp: 1477224913
Contact: <sip:100@192.168.1.20:5060>
Call-Info: <sip:192.168.1.20:5060>;method="NOTIFY;Event=telephone-event;Duration=2000"
Expires: 180
Allow-Events: telephone-event
Max-Forwards: 68
Session-Expires:  1800
Content-Length: 0

Oct 23 12:15:13.759: //44/570577000000/SIP/Msg/ccsipDisplayMsg:
Received:
SIP/2.0 100 Trying
Via: SIP/2.0/UDP 192.168.1.20:5060;branch=z9hG4bK3AD75;received=87.71.31.219
From: "ucpros" <sip:ucpros@ucpros.net>;tag=345CA8-1182
To: <sip:403454@iptel.org>
Call-ID: 2F3B7D9F-985111E6-8008865A-F6ED7E07@192.168.1.20
CSeq: 101 INVITE
Content-Length: 0

Ensuite, nous pouvons voir une réponse de défi de l'ITSP

Faites attention au champ Digest Realm. C’est le domaine que vous devez configurer dans votre commande d’authentification sous sip-ua .

Oct 23 12:15:13.766: //44/570577000000/SIP/Msg/ccsipDisplayMsg:
Received:
SIP/2.0 407 Proxy Authentication Required
Via: SIP/2.0/UDP 192.168.1.20:5060;branch=z9hG4bK3AD75;received=87.71.31.219
From: "ucpros" <sip:ucpros@ucpros.net>;tag=345CA8-1182
To: <sip:403454@iptel.org>;tag=78A48057-580CA9D1000A93BC-CAD9A700
Call-ID: 2F3B7D9F-985111E6-8008865A-F6ED7E07@192.168.1.20
CSeq: 101 INVITE
Proxy-Authenticate: Digest realm="ucpros.net", nonce="WAysJlgMqc7UL30vd9AwPJsK+KVESIx/"
Server: ser (3.3.0-pre1 (i386/linux))
Warning: 392 192.168.0.85:5060 "Noisy feedback tells: pid=1812 req_src_ip=192.168.0.155 req_src_port=5060 in_uri=sip:403454@iptel.org:5060 out_uri=sip:403454@iptel.org:5060 via_cnt==1"
Content-Length: 0

Oct 23 12:15:13.767: //44/570577000000/SIP/Msg/ccsipDisplayMsg:
Sent:
ACK sip:403454@iptel.org:5060 SIP/2.0
Via: SIP/2.0/UDP 192.168.1.20:5060;branch=z9hG4bK3AD75
From: "ucpros" <sip:100@ucpros.net>;tag=345CA8-1182
To: <sip:403454@iptel.org>;tag=78A48057-580CA9D1000A93BC-CAD9A700
Date: Sun, 23 Oct 2016 12:15:13 GMT
Call-ID: 2F3B7D9F-985111E6-8008865A-F6ED7E07@192.168.1.20
Max-Forwards: 70
CSeq: 101 ACK
Allow-Events: telephone-event
Content-Length: 0

Ici CUBE vous envoie une autre invitation, cette fois avec les détails de l'authentification:

Oct 23 12:15:13.767: //44/570577000000/SIP/Msg/ccsipDisplayMsg:
Sent:
INVITE sip:403454@iptel.org:5060 SIP/2.0
Via: SIP/2.0/UDP 192.168.1.20:5060;branch=z9hG4bK3B6A8
Remote-Party-ID: "ucpros" <sip:100@192.168.1.20>;party=calling;screen=yes;privacy=off
From: "ucpros" <sip:ucpros@ucpros.net>;tag=345CA8-1182
To: <sip:403454@iptel.org>
Date: Sun, 23 Oct 2016 12:15:13 GMT
Call-ID: 2F3B7D9F-985111E6-8008865A-F6ED7E07@192.168.1.20
Supported: timer,resource-priority,replaces,sdp-anat
Min-SE: 1800
Cisco-Guid: 1459975936-0000065536-0000000001-0167880896
User-Agent: Cisco-SIPGateway/IOS-15.5.3.S2
Allow: INVITE, OPTIONS, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, SUBSCRIBE, NOTIFY, INFO, REGISTER
CSeq: 102 INVITE
Timestamp: 1477224913
Contact: <sip:100@192.168.1.20:5060>
Call-Info: <sip:192.168.1.20:5060>;method="NOTIFY;Event=telephone-event;Duration=2000"
Expires: 180
Allow-Events: telephone-event
Proxy-Authorization: Digest username="ucpros",realm="ucpros.net",uri="sip:403454@iptel.org:5060",response="sad234324fsd234sadAWD12315",nonce="WAysJlgMqc7UL30vd9AwPJsK+KVESIx/",algorithm=md5
Max-Forwards: 68
Session-Expires: 1800
Content-Length: 0

Oct 23 12:15:13.875: //44/570577000000/SIP/Msg/ccsipDisplayMsg:
Received:
SIP/2.0 100 Trying
Via: SIP/2.0/UDP 192.168.1.20:5060;branch=z9hG4bK3B6A8;received=87.71.31.219
From: "ucpros" <sip:ucpros@ucpros.net>;tag=345CA8-1182
To: <sip:403454@iptel.org>
Call-ID: 2F3B7D9F-985111E6-8008865A-F6ED7E07@192.168.1.20
CSeq: 102 INVITE
Content-Length: 0

Conclusion

Certes, configurer l’enregistrement CUBE et l’authentification avec ITSP peut être une tâche frustrante, mais lorsque vous comprenez les concepts et le minimum requis pour autoriser les appels entrants et sortants, vous êtes à mi-chemin :)

Notre guide spirituel A. Graham Bell dit:

Before anything else, preparation is the key to success

Afin de faciliter les choses, nous devons faire nos devoirs et obtenir le maximum d'informations de l'ITSP avant le jour J. Nous devons nous présenter à la coupure, aussi préparés que possible. Si vous rencontrez des difficultés, suivez les étapes de dépannage, elles vous orienteront dans la bonne direction. N'ayez pas peur d'utiliser un softphone si le dépannage se termine dans une impasse, c'est comme obtenir un deuxième avis. Cela vous aidera également à déterminer si le problème provient de votre configuration ou de celle de votre ITSP. Comprenez les concepts décrits ici et cet article restera un vague souvenir. Si vous avez besoin d’aide dans d’autres aspects de CUBE, j’ai écrit un article en deux parties, pas-à-pas qui couvre les principaux concepts. Vous pouvez également télécharger l'utilitaire de configuration de CUBE pour vous aider à créer une configuration propre et professionnelle, tout en respectant les ressources et conformément aux meilleures pratiques.

Bonne chance!

Pasha.

 

Publié par: Pasha Teplitsky / Version originale en anglais

Mise en Route
Bienvenue dans la Communauté !

La communauté est un hub pour vous connecter avec vos pairs et les spécialistes Cisco, pour demander de l'aide, partager votre expertise, développer votre réseau et évoluer professionnellement.
Vous êtes un nouvel arrivant ? Cliquez ici pour en savoir plus.

Nous voulons que votre navigation soit la meilleure, donc vous trouverez des liens pour vous aider à être rapidement familiarisé avec la Communauté Cisco :