PC réel
Carte réseau de bouclage 192.168.2.3 ( vmbridge activé )
- vmplayer
- wireshark
- xlite
- Express Talk
- IP Communicator ( et .NET2.0 Framework )
- VT-GO-PC
2 images vmware en bridge malgré les réseaux différents ( GNS3 fera le routage, pas vmplayer )
( mettre la RAM image w2000 à 256 Mo si on a seulement 1 Go sur le pc réel, XP à 512 Mo )
TD Cisco
Cisco Call Manager Express ( CME )
- Débrancher le câble réseau pour isoler votre PC réel.
- Vérifier que la carte réseau de bouclage microsoft est présente et activée, qu'elle a l'adresse 192.168.2.3.
( sinon l'installer: Panneau de config/ Ajout de matériel/Déjà connecté/en bas "Ajouter un nouveau périphérique matériel"/
Sélectionner manuellement/Cartes réseau/Microsoft/Carte de bouclage Microsoft )
Pour étudier la solution de téléphonie sur IP Cisco qui utilise un serveur logiciel dans le routeur, le CME ( Call Manager
Express ), on va utiliser le simulateur GNS3 ( remarque: ne pas utiliser la commande reload dans le routeur simulé ).
( Ne pas confondre CME = traitement et contrôle d'appel dans IOS de leurs routeurs, CM Call Manager solution plus performante sur serveurs Cisco ou tiers )
Préparation du simulateur
- Lancer l'image vmware XP_Cisco incluant GNS3. Vérifier que son IP est 192.168.2.13 (cmd/ipconfig ).
- Lancer GNS3 ce qui ouvre une fenêtre "Fichier\nouveau projet", cliquer sur la case ... ,
créer votre répertoire de travail dans C:\CCNA_Voice_LABs\Mon_Labo
mettre un nom de votre choix dans la case .net, cliquer sur enregistrer puis OK.
Remarque: Si on voulait faire des simulations différentes, il faudrait faire un sous répertoire pour ne pas mélanger les fichiers
Le PC virtuel contient un répertoire C:\CCNA_Voice_Kit dans lequel on a créé les répertoires de travail associés
C:\CCNA_Voice_LABs\Mon_Labo
C:\CCNA_Voice_LABs\IOS.
Remarque: On a désactivé le pare-feu windows sinon dans ce tp il faudrait débloquer beaucoup de ports.
- Cliquer sur "Routeur C3700" à gauche, le déplacer dans la fenêtre du milieu où l'on définit notre installation
relâcher le clic.
- Entrée puis No pour "Would you like to enter the initial configuration dialog?"
Taper entrée pour avoir le prompt "Router>" puis "enable" puis "show interfaces"
(en tapant le début des mots puis la touche tabulation, le système complète automatiquement l'instruction quand il n'y a pas d'ambiguïté)
TD Cisco 1/9
!" #
$ % $ &
* Relier le routeur simulé au réseau: Nuage défini par une interface réseau
1) Fermer la console, Clic droit sur le routeur, Arrêter
2) Clic droit à gauche sur "nuage", placer ce nuage sur le schéma
3) Clic droit sur le nuage, Configurer, Cliquer sur CO sous nuages dans la colonne de gauche.
4) Sous NIO Ethernet générique, mettre l'interface ethernet du PC vmware:
Cliquer dans la case en dessous, ce qui affiche les noms d'interface, cliquer sur l'interface.
Cliquer sur ajouter => l'interface est ajoutée en dessous
OK pour fermer
5) Cliquer sur l'icône "Ajouter un lien" en haut FastEthernet, clic gauche sur le routeur ( on ne voit rien )
clic gauche sur le nuage
puis sur l'interface réseau qui s'affiche
L'interface du routeur est un point rouge car il est arrêté.
6) Clic gauche à nouveau sur l'icône "Ajouter un lien" qui est devenue une croix rouge et redevient l'icône d'avant
Clic droit sur le routeur, Démarrer ( remarque: le routeur ne sera pas actif tout de suite )
L'interface du routeur devient un point vert.
Le dispositif réseau est prêt pour faire notre installation téléphonique. Sauvegarder le projet GNS3.
TD Cisco 2/9
II) Configuration du CME pour utiliser des matériels Cisco (protocole SCCP )
On configure la téléphonie du routeur ( remarque en cas d'erreur, à la fin on pourra recommencer la config )
- Relancer la console, en ( enable ), conf t ( configure terminal ),
(config)#telephony-service setup
1) n car on ne veut pas de DHCP
2) y car on veut démarrer la configuration de la téléphonie.
3) 192.168.2.23 = adresse IP du routeur contenant le gestionnaire d'appel = CME = Call Manager Express
4) 2000 pour le numéro du port du protocole Cisco SCCP Skinny qui gère les liens téléphoniques.
5) 4 pour le nombre de téléphones à configurer
6) yes pour avoir deux lignes utilisables par téléphone
7) 1 pour français
8) 1 pour tonalités françaises
9) 1000 pour le premier numéro de téléphone
10) y car on a une SDA ( DID )
0384211000 comme numéro de téléphone associé au poste 1000 pour le RTC ( pots )
11) y pour associer une messagerie vocale
8000 comme numéro de messagerie
12) Entrée pour le timout de renvoi en cas de non réponse après 18s ( Call Forward No Answer Timeout )
no si les informations sont correctes ( pas de changement ) sinon yes pour recommencer la config.
' ( ) )
Cisco IP Communicator
- Onglet Network, vérifier que "Use these TFTP Servers , TFTP Server 1" est à 192.168.2.23
=> Le téléphone s'enregistre = AUTOREGISTRATION => L'écran affiche l'heure et le numéro de téléphone.
Dans la console on voit des messages "change to state up" pour les interfaces "ephone-dsp" indiquant l'enregistrement du
terminal sur le serveur d'appels.
Remarque: Pour fixer le numéro ( ephone-dn ) d'un téléphone ( ephone avec son adresse MAC ), il faudrait les associer par la commande button dans la
définition de l'ephone ( voir annexe et la suite ).
VTGO-PC Lite
Sur le PC réel 192.168.2.3, on a installé VTGO-PC Lite qui est compatible avec SCCP, le protocole Cisco.
( s'il faut réinstaller, mettre un nom d'usager, installation complète, configuration par défaut )
- Lancer le logiciel,
Cliquer sur l'icône en haut des outils ( Tools Menu )
- Pour changer l'affichage sur les téléphones: conf t, telephony-service, system message tp TL53
TD Cisco 3/9
Analyse des échanges
a) Enregistrement
- Fermer le logiciel Cisco IP Communicator, attendre 30s, lancer wireshark du PC .13 qui héberge GNS3,
- Relancer Cisco IP Communicator pour voir l'enregistrement.
" *
+ # # ( , - ./0 1 0
# 2 - ./0 1 0
( on pourra faire un filtre d'affichage ip.addr == 192.168.1.23 qui ne garde que les trames liées au CME )
3 , ,4 5 #
b) Communication
6
7 18+ 9 $ # # $: ,; , $ # $,
< 8 4 5 = > % ,
? 8 & 18+ 9: : ) :
/ 1 * : : 18+ : :
IV) Configuration du CME pour utiliser des clients SIP non Cisco ( Third party )
Définir un groupe de codecs avec un ordre de préférence, exit pour revenir en mode configuration de terminal,
(config)#voice class codec 1
codec preference 1 g711ulaw
codec preference 2 g711alaw
exit
Vérifier que l'adresse MAC de la carte réseau du PC vmware XP qui héberge GNS3 est 000C.29EF.E0FB: ipconfig/all
TD Cisco 4/9
(config)#voice register pool 1
id mac 000C.29EF.E0FB adresse MAC de la carte obtenue avec ipconfig/all
number 1 dn1
username 200 password cisco
voice-class codec 1 sinon si on ne veut qu'un codec: codec g711ulaw
dtmf-relay rtp-nte sip-notify
@ + ,A $ $: 5 ,
CTRL Z, write
Lancer le client SIP xlite du PC en .13, configurer, vérifier les enregistrements sur le serveur: "show voice register statistics".
Pour voir les messages SIP: prompt#deb ccsip messages
B ; ' ! -0 & % C D D
; ! -0 ! 0 &% C D D
Pendant un appel, accéder aux statistiques d'un téléphone Cisco en cliquant rapidement 2 fois sur le bouton "?".
' - 5 ,
- Lancer le logiciel du PC vmware XP Klever group/pumpkin-2.7.2 qui gère le TFTP ( pas de pare-feu pour le port TFTP ).
- Sur le routeur en console: Enable, show flash: ( on voit le contenu de la mémoire flash )
Rem: S'il n'y a pas de flash, arrêter le routeur dans GNS3, configurer, R0, Mémoires et disques, mettre Taille Disk0 PCMCIA à 32.
- "archive tar /xtract tftp://192.168.2.13/cme-4.3.0.0.tar flash:" ( espaces des 2 côtés de tar, de /xtract, après le second tar )
En console, "show flash" doit cette fois donner la liste des fichiers transférés.
(config)#ntp master
(config)#ip http server
(config)#ip http path flash:gui/
TD Cisco 5/9
(config)#telephony-service
web admin system name admin password cisco définit un accès avec login "admin" et mdp "cisco"
dn-webedit
time-webedit
moh flash:music-on-hold.au
multicast moh 239.1.1.1 port 2100
load 7971 SCCP70.8-3-38.loads fichier firmware sans bin
create cnf-files
CTRL Z
#write
Se connecter à http://192.168.2.23/ccme.html
- Aller dans "Configure", "Extensions", choisir le premier poste qui est actif, modifier son Nom, Label et Description
( si il a le numéro 1000: Nom -> Nom1000, Label -> Label1000, Description -> Bureau du 1000 )
- Aller dans "Configure/Phones", cocher la case devant le poste, cliquer sur reset au dessus ( Ce qui revient à arrêter et
redémarrer le poste ou à rentrer en console puis en config sur ce poste ephone puis reset ),
- Faire un appel vers ce poste.
3 E5 5 :
- Aller dans "Configure", "System Parameters", ligne "MOH Files"
6 5 &F 4 ; G )
- Aller dans "Configure/Extensions", choisir un téléphone, mettre "secondary number" à 1500.
Vérifier que depuis l'autre téléphone, on peut utiliser ce second numéro d'appel ( attendre l'enregistrement )
On va créer de nouvelles associations entre postes physiques ( ephone ) et numéros ( ephone-dn ) => boutons ( button ).
En console: enable, conf t, telephony-service
On commence par faire ce qu'on a fait par interface web pour le poste 2 en console
(config)#ephone-dn 2 ( on peut faire ? pour voir toutes les instructions de configuration d'un ephone )
name nomposte2
description Bureau du poste 2
label labelposte2
exit
TD Cisco 6/9
Puis on affecte les boutons ( remarque, par défaut le premier bouton permet de superviser la première ligne du poste )
7 A 5 + ' ( on peut faire "?" dans ephone 1 qui indique quel est l'index avant ":", quel est l'index
après ou regarder l'annexe )
(config)#ephone 2
button 1:2 2:1
reset
exit
< A 5 + '
Tester les appels et la supervision par icône du bouton qui change avec un poste SIP qui appelle un poste SCCP
? ! 5 ) ! 5 ! -0 5
On souhaite relier notre installation à un réseau public SIP. Un autre PC vmware va introduire un serveur SIP, celui de
l'opérateur public sur lequel on va déclarer notre routeur Cisco = PC3 = image W2000.
PC2 XP image
vmware avec
client SCCP
192.168.2.13
routeur en 192.168.2.23 PC3 image vmware W2000
et 194.0.0.3 avec serveur et client SIP
( GNS3 dans le PC2 image 194.0.0.2
vmware XP )
Sur le serveur SIP du PC3 on a déclaré 2 usagers: 0951222222 = n° public E164 de notre routeur
0951333333 = n° d'un client SIP public sur le même PC déjà configuré
( Express Talk en port 5070, le serveur SIP prenant le port 5060 sur le même PC )
On va définir dans le routeur un client SIP qui se connectera au serveur externe ainsi que des liens avec le serveur ( dial-peer ).
- Ajouter un nuage au schéma GNS3: Lui associer aussi la carte réseau du PC, relier au routeur par l'interface 2.
- Démarrer le routeur, se connecter à la console, en, conf t,
(config)#int f0/1
ip address 194.0.0.3 255.255.255.0
no sh
CTRL Z
#wr
Démarrer l'image vmware w2000 contenant le serveur SIP: login administrateur, mdp tpvoip, vérifier que son IP est 194.0.0.2.
Faire un ping dans la console du routeur vers ce PC virtuel.
TD Cisco 7/9
Lien entrant
Dans le PC w2000, activer le serveur SIP NCH Axon ( il est déjà configuré ).
Lancer s'il ne l'est pas ( icône en bas à droite ) sur le même PC le client SIP Express Talk ( il est déjà configuré en 0951333333 ).
Dans la console, enable, conf t (config)#line console 0 évite messages du routeur dans la saisie des commandes
logging synchronous
exit
#write
Remarque: - "show running-config" montre le mot de passe crypté "password 7", sinon on aurait "password 0" en non crypté.
@ )) ! -0 & # 5 "
Pour corriger cela
pour les postes en 100x , faire enable, conf t, ephone-dn 1, no number 1000, number 1000 no-reg, exit.
recommencer pour nos 3 autres postes de n° 1001, 1002, 1003 ( ephone-dn 2, 3 et 4 ).
pour les 038421100x, utiliser l'interface web, Configure, System parametrers, Dialplan patterns,
Pattern 1, "E164 register" à no, Set
Vérifier que le routeur est enregistré auprès du seveur SIP: en console, enable, sh sip register status
(config)#voice translation-rule 1
rule 1 /0951222222/ /1000/
exit
- On crée un profil qui regroupe des règles: (config)# voice translation-profile ENTRANT
traduction n° appelé selon règle 1 translate called 1
exit
TD Cisco 8/9
- On applique cette règle pour le dial-peer des appels entrants (config)#dial-peer voice 1 voip
translation-profile incoming ENTRANT
CTRL Z
#wr
- Tester un appel entrant depuis ce client SIP vers le routeur: Appeler 0951222222.
( On peut avoir un échec même avec une bonne configuration: Redémarrer le serveur SIP puis le routeur,
Regarder les enregistrements SIP, utiliser "debug ccsip messages" et "sh sip register messages", la console du serveur SIP, "sh run",... )
' 5 ))
- Appuyer sur Hold sur le poste Cisco => Musique d'attente du Cisco envoyée à l'appelant.
- Reprendre l'appel sur l'autre poste Cisco ( qui s'est aussi mis en attente car notre config "button" partage les dn ). Terminer l'appel.
'' = BB ,
Tester.
Lien sortant
Tester un appel sortant depuis un téléphone Cisco SCCP vers ce téléphone avec le préfixe 0 pour sortir.
'" 0 5 )) & # # ! -0 A 4 F
- On crée la règle qui traite les numéros sortants pour supprimer le préfixe 0: enable, conf t
(config)#voice translation-rule 2
rule 1 /^0/ //
exit
- On crée un profil qui regroupe des règles: (config)# voice translation-profile SORTANT
traduction n° appelé selon règle 2 translate called 2
( calling modifierait le n° appelant ) exit
CTRL Z
ramène en
mode
configuration
où que l'on soit
Quelques instructions:
- configure terminal ( conf t ): permet de passer en mode configuration terminal depuis un « terminal »
- reload pour rebooter ( NB: COMMANDE NON SUPPORTEE DANS GNS3 DYNAMIPS )
=> Il existe différents types de dn ( voir plus loin ). Un téléphone ne les supporte pas tous !
bouton La configuration associe un ou des ephone-dn à un ephone = > Commande button dans la
définition d'un ephone.
= => On défini des couples de nombre séparés par un caractère qui est une commande.
Association Le premier nombre est l’index du bouton du téléphone.
Le second représente le numéro de l’ephone-dn associé.
ephone (adr MAC ou port) Le caractère séparant le couple ( index, n° d'ephone-dn ) peut être un des caractères suivants :
/ : – normal line : sonnerie normale
ephone-dn ( n° ) s – silent ring : le téléphone reçoit l'appel sans sonnerie ni bip
b – silent ring : le téléphone reçoit l'appel avec des bips, mais sans sonnerie
f – feature ring : le rhytme de sonnerie change selon que c’est un appel interne ou externe
m – monitor line : indique si la ligne est utilisée ou non, mais ne sert pas à recevoir d’appel
w – watch line : affichage de l’état de la ligne à l'écran du poste à côté du bouton
o, c, x – overlay mode : Pour affecter plusieurs DNs à un même bouton du téléphone.
template: Au lieu de recopier les mêmes lignes pour différents téléphones, on peut définir un template: ephone-template 1
Dans la définition des ephone, on tapera la ligne ephone-template 1
Annexe Cisco 2/4
Codecs:
On les définit dans l'ephone par la commande "codec"
Mais il est possible de définir des groupes avec des priorités d'utilisation = Classe de codecs: "voice class codec"
Protocoles utilisés:
- CDP ( Cisco Discovery Protocol ): Découverte de matériel Cisco et réglage de la puissance fournie par switch PoE
- DHCP ( Dynamic Host Configuration Protocol ): Le téléphone obtient une adresse IP.
ARP ( Adresse Resolution Protocol ): Trouver l'adresse MAC pour une adresse IP utilisée.
- TFTP ( Trivial File Transfer Protocol ): Le téléphone récupère son fichier de configuration depuis le CME
( utilisé aussi pour les mises à jour de firmware ) port 69 ouvert sur parefeu
- SCCP ( Skinny Client Control Protocol ) : Signalisation Cisco pour les échanges entre téléphones et CME
Ligne simple ( Single line ): Un DN de ligne simple a un seul n° => 1 appel pour un bouton
L'ephone 1 défini par son adresse MAC est associé pour son bouton 1 au DN 11 = n° 1001
Ligne double ( Dual line ): Un port voix avec 2 canaux => 2 appels simultanés avec un seul bouton
avec 1 ou 2 numéros ( primary, secondary )
L'ephone 2 a un seul numéro du DN 12, il peut gérer 2 appels simultanés ( mise en attente d'un des 2 )
On peut aussi définir 2 DN ayant le même numéro ( avec des caractéristiques de fonctionnement différentes ).
=> 2 DN = 2 ports voix => 2 appels simultanés
mais contrairement à la ligne partagée, un bouton a un état indépendant de l'autre
On peut définir des DN avec 2 numéros ( 1 bouton est associé à 1 DN donc à 2 numéros, primaire et secondaire )
...
Pour refaire les fichiers de configuration: enable, conf t, telephony-service, no cnf-files puis create cnf-files
Définir un poste:
sur le CME:
* Soit il sait faire l'"autoregistration" ( pour niveau de sécurité du CME faible ), il met sa MAC mais pas le button
* Soit il faut renseigner l'adresse MAC du poste
( pour un poste SIP: voice register pool pour un poste SCCP: ephone )
et le lien avec un ephone-dn par la commande button
sur le poste:
* Définir la config IP: Mettre "DHCP Enable" à NON ( NB: C'est une autre ligne que la valeur du DHCP !
la valeur DHCP doit alors être vide )
Remplir l'IP et le masque.
* Définir l'adresse du TFTP ( qui donnera l'adresse du CME par ses fichiers CNF ou CNF.XML,
elle est obtenue par la config du CME: source-address de telephony-service pour SCCP
de voice register global pour SIP )
* Définir aussi l'adresse du routeur 1 !!!
Debug enregistrement: debug ephone register / undebug all pour SCCP debug ccsip all pour SIP