Voir la version complète : la voix ne transite pas entre 2 postes
Bonjour,
Je mets en place une architecture de téléphonie VoIP avec asterisk.
opérateur : free
test avec 2 ordinateurs sur lesquels sont installés zoiper.
astérisk installé sur du centOS 7.
Lors de mes tests j'arrive à faire sonner les softphone des clients mais lorsqu'on décroche la voix ne transite pas sur le réseau, pas de son qui arrive dans le casque.
Ma configuration est basique car c'est un test basique entre 2 postes.
sip.conf
[root@srvasterisk01 asterisk]# cat sip.conf
[general]
context=default
srvlookup=no
externip=88.xxxxx
localnet=192.168.0.0/255.255.255.0
defaultiexpirey=1800
dtmfmode=auto
qualify=yes
register => 09:xxxxxx@freephonie.net
language=fr
disallow=all
allow=ulaw
allow=alaw
allow=gsm
qualify=yes
canreinvite=no
[freephonie_inbound]
type=peer
host=freephonie.net
context=global
[freephonie_outbound]
type=peer
host=freephonie.net
username= 09xxxx
secret= xxx
fromuser= 09xxxx
fromdomain=freephonie.net
[100]
type=friend
password=xx
context=global
host=dynamic
callerid=accueil <100>
[101]
type=friend
password= xxx
context=global
host=dynamic
callerid=toto <101>
extensions.conf
[global]
exten => _1XX,1,Dial(SIP/${EXTEN})
exten => _0XXXXXXXXX,1,Dial(SIP/freephonie_outbound/${EXTEN})
[appel_entrant]
exten => s,1,Dial(SIP/100)
Merci de votre aide.
brams
il faudrait les traces (avec core set verbose 3 mini) de la console, et idéalement, les premières trames émises au début d'un appel avec rtp set debug on
canreinvite est déprécié au profit de dircetmedia.
Plutôt que globalement, essayes directmedia = yes dans la config de tes clients et directmedia = no pour freephonie.
pour freephonie, ma config actuelle est plus simple.
[freephonie](base_codecs)
type=peer
context=from-ext
disallow=all
allow=alaw,ulaw
host=freephonie.net
secret=xxxxxxxxxxx
fromuser=09xxxxxxxx
defaultuser=09xxxxxxx
qualify=yes
dtmfmode=inband
fromdomain=freephonie.net
insecure=port,invite
canreinvite=no
directmedia=no
deny=0.0.0.0/0.0.0.0
permit=212.27.52.5/255.255.255.255
auth = 09xxxxxxxx:xxxxxxxxxxxx@freephonie.net
register => 09xxxxxxxx:xxxxxxxxxxxxxx@freephonie.net
il faudrait les traces (avec core set verbose 3 mini) de la console, et idéalement, les premières trames émises au début d'un appel avec rtp set debug on
Ok merci je vous envoie ça au plus vite
il faudrait les traces (avec core set verbose 3 mini) de la console, et idéalement, les premières trames émises au début d'un appel avec rtp set debug on
Par contre asterisk est installé sur une VM.
Est-ce que ça peut influer sur la performance du PABX.
Merci.
L'utilisation d'une vm introduira une petite latence supplémentaire. Après cela dépend de la base matériel en premier, ensuite de l'hyperviseur utilisé. Je ne sait pas s'il existe des tests sur les performances "temps réel" des différentes solutions.
il faudrait les traces (avec core set verbose 3 mini) de la console, et idéalement, les premières trames émises au début d'un appel avec rtp set debug on
Voici les traces:
================================================== =======================
Connected to Asterisk 13.7.0 currently running on srvasterisk01 (pid = 3272)
== Using SIP RTP CoS mark 5
-- Executing [100@global:1] Dial("SIP/101-00000000", "SIP/100") in new stack
== Using SIP RTP CoS mark 5
-- Called SIP/100
-- SIP/100-00000001 is ringing
-- Registered SIP '101' at 88.xxxxxxx:36996
> Saved useragent "Z 3.9.32144 r32121" for peer 101
[Feb 8 22:39:53] NOTICE[3779]: chan_sip.c:27701 handle_request_subscribe: Received SIP subscribe for peer without mailbox: 101
[Feb 8 22:39:56] NOTICE[3779]: chan_sip.c:29374 sip_poke_noanswer: Peer '101' is now UNREACHABLE! Last qualify: 0
-- SIP/100-00000001 answered SIP/101-00000000
-- Channel SIP/100-00000001 joined 'simple_bridge' basic-bridge <801e5ab1-7e62-4589-bef5-3f58cf10efba>
-- Channel SIP/101-00000000 joined 'simple_bridge' basic-bridge <801e5ab1-7e62-4589-bef5-3f58cf10efba>
> 0x7f42b400bca0 -- Probation passed - setting RTP source address to 192.xxxxxx:8000
> 0x2002a00 -- Probation passed - setting RTP source address to 192.xxxxxx:8000
[Feb 8 22:40:06] NOTICE[3779]: chan_sip.c:23938 handle_response_peerpoke: Peer '101' is now Reachable. (5ms / 2000ms)
[Feb 8 22:40:18] NOTICE[3779]: chan_sip.c:27701 handle_request_subscribe: Received SIP subscribe for peer without mailbox: 101
[Feb 8 22:40:34] WARNING[3779]: chan_sip.c:4015 retrans_pkt: Retransmission timeout reached on transmission Y1gGaU5kx2gI9a_OTXTlSw.. for seqno 1 (Critical Response) -- See https://wiki.asterisk.org/wiki/display/AST/SIP+Retransmissions
Packet timed out after 32001ms with no response
[Feb 8 22:40:34] WARNING[3779]: chan_sip.c:4044 retrans_pkt: Hanging up call Y1gGaU5kx2gI9a_OTXTlSw.. - no reply to our critical packet (see https://wiki.asterisk.org/wiki/display/AST/SIP+Retransmissions).
-- Channel SIP/101-00000000 left 'simple_bridge' basic-bridge <801e5ab1-7e62-4589-bef5-3f58cf10efba>
== Spawn extension (global, 100, 1) exited non-zero on 'SIP/101-00000000'
-- Channel SIP/100-00000001 left 'simple_bridge' basic-bridge <801e5ab1-7e62-4589-bef5-3f58cf10efba>
srvasterisk01*CLI>
Ben la, c'est un problème réseau vers ton piste 101... Il passe brièvement offlibe et ne répond pas aux paquets de signalisation
Ben la, c'est un problème réseau vers ton piste 101... Il passe brièvement offlibe et ne répond pas aux paquets de signalisation
Je viens de modifier la conf et le problème réseau n'est plus en m'inspirant de la conf de olppp.. cependant j'ai toujours ce même problème de transmission de voix.
[general]
context=default
srvlookup=no
externip=88xxxxxxxxx
localnet=192.xxxxxx/255.255.255.0
defaultexpirey=1800
dtmfmode=auto
qualify=yes
register => 09xxxxxx:xxxxxxx@freephonie.net
language=fr
;disallow=all
;allow=ulaw
allow=alaw
;allow=gsm
qualify=yes
canreinvite=no
[freephonie]
type=peer
context=from-ext
disallow=all
allow=alaw,ulaw
host=freephonie.net
secret=xxxxxx
fromuser=09xxxxxxx
defaultuser=09xxxxxx
qualify=yes
dtmfmode=inband
fromdomain=freephonie.net
insecure=port,invite
canreinvite=no
directmedia=no
deny=0.0.0.0/0.0.0.0
permit=212.27.52.5/255.255.255.255
register => 09xxxxxx:xxxxxxx@freephonie.net
auth=register => 09xxxxxx:xxxxxx@freephonie.net
[freephonie_inbound]
type=peer
host=freephonie.net
context=global
[freephonie_outbound]
type=peer
host=freephonie.net
username= 09xxxxx
secret= xxxxx
fromuser= xxxxxxx
fromdomain=freephonie.net
[100]
type=friend
password=xxxx
context=global
host=dynamic
callerid=accueil <100>
[101]
type=friend
password= xxxxx
context=global
host=dynamic
callerid=toto <101>
Using SIP RTP CoS mark 5
-- Executing [100@global:1] Dial("SIP/101-00000002", "SIP/100") in new stack
== Using SIP RTP CoS mark 5
-- Called SIP/100
-- SIP/100-00000003 is ringing
> 0x1b42590 -- Probation passed - setting RTP source address to 192.168.0.4:8000
-- SIP/100-00000003 answered SIP/101-00000002
-- Channel SIP/100-00000003 joined 'simple_bridge' basic-bridge <ea2b54af-38eb-4403-9ac4-64a7823dc495>
-- Channel SIP/101-00000002 joined 'simple_bridge' basic-bridge <ea2b54af-38eb-4403-9ac4-64a7823dc495>
> 0x1b42590 -- Probation passed - setting RTP source address to 192.168.0.4:8000
> 0x7f5ec40080d0 -- Probation passed - setting RTP source address to 192.168.0.27:8000
-- Channel SIP/101-00000002 left 'simple_bridge' basic-bridge <ea2b54af-38eb-4403-9ac4-64a7823dc495>
== Spawn extension (global, 100, 1) exited non-zero on 'SIP/101-00000002'
-- Channel SIP/100-00000003 left 'simple_bridge' basic-bridge <ea2b54af-38eb-4403-9ac4-64a7823dc495>
Au passage dans sip.conf, section 100, il faut remplacer password par secret
Reteste avec rtp set debug on
Au passage dans sip.conf, section 100, il faut remplacer password par secret
Reteste avec rtp set debug on
voici ce que j'obtiens jusqu'à ce que je raccroche sans son
Using SIP RTP CoS mark 5
-- Executing [100@global:1] Dial("SIP/101-00000004", "SIP/100") in new stack
== Using SIP RTP CoS mark 5
-- Called SIP/100
-- SIP/100-00000005 is ringing
-- SIP/100-00000005 answered SIP/101-00000004
-- Channel SIP/100-00000005 joined 'simple_bridge' basic-bridge <cb6de773-ee69-47d2-98a3-f3ad4c621633>
-- Channel SIP/101-00000004 joined 'simple_bridge' basic-bridge <cb6de773-ee69-47d2-98a3-f3ad4c621633>
> 0x1de4130 -- Probation passed - setting RTP source address to 192.xxxxx4:8000
Got RTP packet from 192.xxxxx.4:8000 (type 00, seq 031756, ts 796551540, len 000160)
> 0x7fa06c00d7e0 -- Probation passed - setting RTP source address to 192xxxxx.27:8000
Got RTP packet from 192.xxxx.27:8000 (type 00, seq 042414, ts 2147281620, len 000160)
Sent RTP packet to 88.xxxxx:8000 (type 00, seq 061833, ts 2147281616, len 000160)
Got RTP packet from 192.xxxx:8000 (type 00, seq 031757, ts 796551700, len 000160)
Got RTP packet from 192.xxx:8000 (type 00, seq 031758, ts 796551860, len 000160)
Got RTP packet from 192.xxx.27:8000 (type 00, seq 042415, ts 2147281780, len 000160)
Sent RTP packet to 88.xxxx:8000 (type 00, seq 061834, ts 2147281776, len 000160)
Got RTP packet from 192xxxxx.27:8000 (type 00, seq 042416, ts 2147281940, len 000160)
Sent RTP packet to 88.xxxxxx:8000 (type 00, seq 061835, ts 2147281936, len 000160)
Got RTP packet from 192.xxxxx.4:8000 (type 00, seq 031759, ts 796552020, len 000160)
Got RTP packet from 192.xxxxx.4:8000 (type 00, seq 031760, ts 796552180, len 000160)
Got RTP packet from 192.xxxxx27:8000 (type 00, seq 042417, ts 2147282100, len 000160)
Sent RTP packet to 88.xxxxxx:8000 (type 00, seq 061836, ts 2147282096, len 000160)
Got RTP packet from 192.xxxxx4:8000 (type 00, seq 031761, ts 796552340, len 000160)
.....
-- Channel SIP/101-00000004 left 'simple_bridge' basic-bridge <cb6de773-ee69-47d2-98a3-f3ad4c621633>
== Spawn extension (global, 100, 1) exited non-zero on 'SIP/101-00000004'
-- Channel SIP/100-00000005 left 'simple_bridge' basic-bridge <cb6de773-ee69-47d2-98a3-f3ad4c621633>
Un des postes 100 ou 101 n'est pas sur le kan ? Regarde ma signature....
Un des postes 100 ou 101 n'est pas sur le kan ? Regarde ma signature....
oui j'ai vu le forum sur le nat; j'ai rajouté l'option nat=force_rport
en fait il y a 3 adresses les 2 adresses en local 192...4 et 192...27 et l'adresse pub 88.....
j'ai donc rajouter l'option sur les clients:
[100]
type=friend
secret=xxxx
context=global
host=dynamic
callerid=accueil <100>
nat=force_rport
[101]
type=friend
secret= xxxxx
context=global
host=dynamic
callerid=toto <101>
nat=force_rport
mais toujours pas de son..c'est peut être lié à la box
Verifier externip / localnet et Eventuellement que les ports rtp (surtout pas 5060) sont routes en entrant sur le routeur cote serveur. Tu peux reduire la plage dans rtp.conf. 2 ports par comm simultanées
Verifier externip / localnet et Eventuellement que les ports rtp (surtout pas 5060) sont routes en entrant sur le routeur cote serveur. Tu peux reduire la plage dans rtp.conf. 2 ports par comm simultanées.
Mes 2 PC(avec softphone) et mon serveur asterisk en local communiquent par un switch.
La freebox est elle relié au switch.J'ai mis une règle de direction sur la freebox pour que les data UDP port (10000-20000) soient routés vers le serveur asterisk.C'est bien cela l'idée?
En tout cas c'est toujours ko :pt1cable::pt1cable:
Peux tu preciser ta conf ? Qui est sur le lan , qui est sur internet, qui appelle qui ?
Parce que tout a lheure les traces montraient un flux entre lan et wan - et la tu dis que les postes sont en local...
En gros il faut nat=yes (ou l'equivalent pour les versions récentes) pour les peers qui sont en dehors du lan et nat=no pour ceux sur le lan.
[QUOTE=jean;20270]Peux tu preciser ta conf ? Qui est sur le lan , qui est sur internet, qui appelle qui ?
Parce que tout a lheure les traces montraient un flux entre lan et wan - et la tu dis que les postes sont en local...
En gros il faut nat=yes (ou l'equivalent pour les versions r
Peux tu preciser ta conf ? Qui est sur le lan , qui est sur internet, qui appelle qui ?
Parce que tout a lheure les traces montraient un flux entre lan et wan - et la tu dis que les postes sont en local...
En gros il faut nat=yes (ou l'equivalent pour les versions récentes) pour les peers qui sont en dehors du lan et nat=no pour ceux sur le lan.
Toutes mes machines sont en local (les 2 PC et le serveur asterisk).
En effet l'adresse IP pub ne devrait pas être visible? c'est l'IP pub de ma freebox.Doit-elle intervenir ou non?
Verifie que les stun server sont désactivés sur les clients
j'ai donc rajouter l'option sur les clients:
[100]
type=friend
secret=xxxx
context=global
host=dynamic
callerid=accueil <100>
nat=force_rport
[101]
type=friend
secret= xxxxx
context=global
host=dynamic
callerid=toto <101>
nat=force_rport
moi je n'autoriserai pas le nat aux postes internes ;ils ne doivent pas avoir de "pattes" vers l'extérieur. Le serveur Asterisk joue le rôle de gateway, C'est le sens dans ma config de directmedia=yes pour les comptes sip des postes et du directmedia=no pour freephonie.
entre postes internes
[2016-02-04 15:24:28] -- SIP/7xxx-00085d2effb6-0000e289 answered SIP/7yyyy-00085d2eff63-0000e288
[2016-02-04 15:24:28] -- Remotely bridging SIP/7yyy-00085d2eff63-0000e288 and SIP/7xxx-00085d2effb6-0000e289
le flux RTP ne passe plus par le serveur.
avec l'extérieur
-- SIP/freephonie-00000017 answered SIP/9aaa-00000016
-- Probation passed - setting RTP source address to 137.194.xxx.yyy:5ppp
-- Probation passed - setting RTP source address to 212.27.52.130:32874
Asterisk gère le flux RTP
Powered by vBulletin® Version 4.2.5 Copyright © 2024 vBulletin Solutions, Inc. Tous droits réservés