interconnecter deux serveurs Elastix

biloa

Joined
Aug 2, 2009
Messages
40
Likes
0
Points
0
#1
Salut !

Comment etablir un lien de connexion entre deux serveurs Elastix pour faire des appels gratuits entre deux sites ?

Merci de me donner les details .

Bidjanga
 

danardf

Joined
Dec 3, 2007
Messages
8,069
Likes
10
Points
88
#2
Salut.

Pas très très compliqué.
Il faut créer 1 trunk IA2 sur chaque serveur avec pour @IP celle de ton Serveur Distant.
Télécharges Elastix Without Tears et regardes la configuration qu'il te donne.
En suit n'oublies pas de créer des routes sortantes sur chaque Serveur.
Mettre un context from-internal dnas chaque trunck de manière à ce que tes appels inter-elastix soient considérer commme comm interne.

C'est tout

Un exemple:
Code:
host=192.168.1.10 (ip distante)
type=friend
qualify=yes
context=from-internal
disallow=all
allow=alaw&gsm&h263&h263p
trunk=yes
Bien sure en final, il faudra apporter une sécurité d'authentification username et secret voir deny si tes Elastix ne sont pas dans le même réseau.
 

loic

Joined
Sep 29, 2011
Messages
4
Likes
0
Points
0
#3
bjr. Après avoir créer de part et d'autre les trunks iax et les affecter des routes sortantes, comment faire pour que les deux serveurs communiquent??? par ex moi jai deux serveurs:
192.168.1.184
Sur ce serveur, nous avons les extensions 1XXX
192.168.1.142
sur ce serveur, nous avons les extensions 2XXX
svp aidez moi
 

danardf

Joined
Dec 3, 2007
Messages
8,069
Likes
10
Points
88
#4
Salut.

Lire simplement ce que j'ai dit plus haut.
- Création de trunk IAX2.
- Créer des routes sortantes.(1xxx et 2xxx vers les serveurs concernés)
- Lire Elastix Without Tears (Tout est expliqué).

Excepté canreinvite=yes qui n'est que pour les trunk SIP et non IAX2.
 

loic

Joined
Sep 29, 2011
Messages
4
Likes
0
Points
0
#5
stp jai regarder partout dans without tears mais je ne vois pas ce ke tu viens de dire. stp renseigne moi sur la page :(
 

loic

Joined
Sep 29, 2011
Messages
4
Likes
0
Points
0
#6
car je suis vraiment perdu. jai déja créer les trunks. je les ai affecté la route sortante 0 9_outside. je suis à cette étape. que faire :(
 

danardf

Joined
Dec 3, 2007
Messages
8,069
Likes
10
Points
88
#7
Ben ....il te reste à lire et a comprendre ce que tu fais.

Chapitre 30 HOW TO INTERCONNECT 2 BOXES page 153 à 158.

Il faut imaginer que ce que tu composes, que dois faire Asterisk pour acheminer ton appel.
... par des routes.... les quelles ont des dials patterns....affectées à des trunks.

Voilà, tu a toutes les billes, surtout qu'il y des tout ce qu'il faut sur le forum pour que tu t'en sortes.
Il y a pas mal de post là dessus!
 

loic

Joined
Sep 29, 2011
Messages
4
Likes
0
Points
0
#8
bsr. jai suivi à la lettre tout ce que tu m'as dit mais je nai pas réussi à le faire.je veux ke tu maide.je te dis les caractéristiques de mes serveurs elastix et tu me dis ce que je dois faire passant par la créations de trunks et routes sortantes.
1er serveur: Magmatel
ip:192.168.100.142
extensions 2XXX
2ème serveur: Lpic
ip: 192.168.1.184
tu me diras les lignes ke je dois rentrer et je les applique. on verra si xa marche. moi jai déja essayé mais xa ne marche pas. je ne sais plus koi faire.TES MON DERNIER ESPOIR :(
 

danardf

Joined
Dec 3, 2007
Messages
8,069
Likes
10
Points
88
#9
bsr. jai suivi à la lettre tout ce que tu m'as dit mais je nai pas réussi à le faire.
Ben si tu avais suivi à la lettre ce qui était écrit, alors ça aurait fonctionné.
En plus, il y a assez de post à ce sujet.
J'en ai trouvé un en utilisant le moteur de recherche du forum.
http://elastix.org/index.php/en/compone ... astix.html
Tu peux certainement en faire autant!?

1er serveur: Magmatel
ip:192.168.100.142
extensions 2XXX
2ème serveur: Lpic
ip: 192.168.1.184
C'est un bon début. Mais là, on a aucun indice sur; comment les 2 serveurs vont discuter en IP!
Je me doute qu'il y ait des routeurs quelque part, mais il peut aussi bien avoir un masque à 16! Si tant est qu'ils soit dans le même réseau LAN! Mais là j'en doute.
A mon avis ce que tu m'as donné, ce sont les adresses IP privées et non publics!

tu me diras les lignes ke je dois rentrer et je les applique. on verra si xa marche. moi jai déja essayé mais xa ne marche pas.
Désolé, je ne fonctionne pas comme çà.
Je fais réfléchir d'abord les gens et non en leur donnant la réponse toute cuite. Ce n'est pas leurs rendre service. Si tu programmes quelque chose sans avoir compris comment faire et pourquoi le faire, alors c'est que tu ne t'intéresses pas au problème.
Le jour ou ça tombe en panne, quelle sera ta réactivité? Tu penses que les gens vont attendre que tu ais une réponse sur le forum pour qu'ils soient dépannés? Non, je ne crois pas.

Là, ce que tu demandes, c'est de l'élémentaire.
Que ce soit un serveur Elastix, un opérateur SIP, ou un IPBX, c'est la même chose.
La philosophie reste la même!

Sais-tu déjà configurer un trunk SIP vers un opérateur, et configurer Elastix pour que les extensions puissent téléphoner?
Si c'est le cas, alors tu sais diriger une comm. vers l'opérateur, (utilisation d'une route sortante).
Si ce n'est pas le cas, alors lis un peu la doc avant.

Quand tu dis avoir essayé, je ne te croie pas. Tu m'aurais mis la config de tes trunks et donné la config des routes sortantes. ;)

je ne sais plus koi faire.
Te documenter.

TES MON DERNIER ESPOIR
J'espère qu'il n'y aura pas mort d'homme!? :laugh:

Comme dit le proverbe: Aides toi et le ciel t'aidera.
T'inquiètes pas, tu y arriveras.
L'interco entre 2 serveurs n'est pas si compliqué que çà. ;)

Je t'aiderai si je vois que tu avances et que y mets du tiens.
Là, n'ayant rien .... Je ne sais même pas ce que t'as fait.
 

fran73

Joined
Feb 15, 2012
Messages
12
Likes
0
Points
0
#10
Bonjour à tous,

Peut-etre que quelqu'un pourra éclairer ma lanterne..

Je tente depuis un petit moment d'interconeter 2 elastix ensemble.
J'ai suivi 3elastix without tears" mais echec, je m'explique:

Je cherche a faire un lien SIP entre 2 local.
LOCAL A interne en 4xx et LOCAL B en 5xx
J'ai 2 serveur A et B.
Sur le A j'ai une TDM2400p.
Sur le B uniquement SIP.

Mes 2 serveurs sont sous le meme sous réseau (192.168.200.0/24)

Mes config TRUNK:

SERVEUR A
Trunk Name : SERVEUR_B

PEER DETAILS

username=userB
type=peer
secret=1234
qualify=yes
host=192.168.200.25
context=from-internal
trunk=yes
disallow=all
allow=gsm
User Context : userA

USER DETAILS

type=user
secret=1234
host=192.168.200.25
context=from-internal
disallow=all
allow=gsm
Registration
{Blank}

SERVEUR B
Trunk name : SERVEUR_A

PEER DETAILS

username=userA
type=peer
secret=1234
qualify=yes
host=192.168.200.7
context=from-internal
trunk=yes
disallow=all
allow=gsm
User Context : userB

USER DETAILS

type=user
secret=1234
host=192.168.200.7
context=from-internal
disallow=all
allow=gsm
Registration
{Blank}

En faisant un "iax2 show peers" sur chaque serveur, j'obtient:

SERVEUR A
userB/userB 192.168.200.25 (S) 255.255.255.255 4569 (T) OK (3 ms)
1 iax2 peers [1 online, 0 offline, 0 unmonitored]

SERVEUR B
userA/userA 192.168.200.7 (S) 255.255.255.255 4569 (T) OK (3 ms)
1 iax2 peers [1 online, 0 offline, 0 unmonitored]

J'ai bien créé les routes sortantes.

Mon problème est que quand je veut acceder au numero d'interne de l'autre elastix j'ai le message "toute les ligne sont occupé" (all-circuits-busy-now&pls-try-call-later, noanswer"

J'ai parcouru pleins de forums mais la vraiment je sèche.

Les versions de elastix sont exactement les même, 2.2.0 32bits.

D'après tous les forum ca parait assez simple mais la si qq pouvait me donner une piste.

Merci

Francois
 

danardf

Joined
Dec 3, 2007
Messages
8,069
Likes
10
Points
88
#11
Salut et bienvenue sur notre forum Elastix.

A un moment tu dis:
Je cherche a faire un lien SIP entre 2 local.
Mais visiblement tu cherches à faire un trunk IAX2. Vu que tu as testé ta conf via iax2 show peers!

Il faudrait déjà savoir si tu peux contacter des postes internes à l'autre bout.
Il faut donc préparer une ou des routes sortantes qui prendront la bonne direction.

Il faudra par exemple segmenter ton plan de num
Site A : extension de 1100 à 1199,
Site B : Extension de 1200 à 1299 ...Etc
Ainsi c'est plus partique pour les routes sortantes.
Site A-B : 12xx
Site B-A : 11xx

Traces ce qui ce passe lors de la numérotation. Voir si de l'autre côté tu reçois des info IAX2.
Perso, j'ai monté un trunk IAX2 à la maison entre mon serveur (EL 1.6) et ma maquette (EL 2.3). en quelques lignes. Et ça fonctionne.

Pas de User Details.

Code:
host=IP_distant
type=friend
disallow=all
allow=alaw
trunk=yes
qualify=yes
dtmfmode=rfc2833
context=from-internal
Il faut que tu ais çà dans /etc/asterisk/iax_general_custom.conf:
calltokenoptional = 0.0.0.0/0.0.0.0
Ou quelque part de renseigné dans la config IAX2. (asterisk IAX2 settings dans Freepbx)

De ma maquette je prend facilement un ligne de mon serveur pour téléphoner.
C'est transparent.
 

fran73

Joined
Feb 15, 2012
Messages
12
Likes
0
Points
0
#12
Bonjour,

Merci pour ta réponse rapide danarfd,

J'ai reconfiguré mes 2 elastix en supprimant les users details, en rajoutant calltokenoptional = 0.0.0.0/0.0.0.0 dans /etc/asterisk/iax_general_custom.conf.

J'ai copier/coller la config que tu ma donné en remplacant l'IP de mes serveur.

J'ai toujours le même probleme.

Sur le site A j'ai bien un plan de 400 a 499
Sur le site b de 500 à 599.

J'ai fait un debug et j'ai etudié un peu le log,

Code:
-- Executing [s@macro-dialout-trunk:19] Dial("SIP/400-00000003", "IAX2/SITEB/,300,") in new stack
    -- Called IAX2/SITEB/
    -- Hungup 'IAX2/-17106'
  == Everyone is busy/congested at this time (1:0/0/1)
    -- Executing [s@macro-dialout-trunk:20] NoOp("SIP/400-00000003", "[b]Dial failed for some reason with DIALSTATUS = CHANUNAVAIL and HANGUPCAUSE = 0[/b]") in new stack
    -- Executing [s@macro-dialout-trunk:21] Goto("SIP/400-00000003", "s-CHANUNAVAIL,1") in new stack
    -- Goto (macro-dialout-trunk,s-CHANUNAVAIL,1)
    -- Executing [s-CHANUNAVAIL@macro-dialout-trunk:1] Set("SIP/400-00000003", "RC=0") in new stack
    -- Executing [s-CHANUNAVAIL@macro-dialout-trunk:2] Goto("SIP/400-00000003", "0,1") in new stack
    -- Goto (macro-dialout-trunk,0,1)
    -- Executing [0@macro-dialout-trunk:1] Goto("SIP/400-00000003", "continue,1") in new stack
    -- Goto (macro-dialout-trunk,continue,1)
    -- Executing [continue@macro-dialout-trunk:1] GotoIf("SIP/400-00000003", "1?noreport") in new stack
    -- Goto (macro-dialout-trunk,continue,3)
    -- Executing [continue@macro-dialout-trunk:3] NoOp("SIP/400-00000003", "TRUNK Dial failed due to CHANUNAVAIL HANGUPCAUSE: 0 - failing through to other trunks") in new stack
    -- Executing [continue@macro-dialout-trunk:4] Set("SIP/400-00000003", "CALLERID(number)=400") in new stack
    -- Executing [501@from-internal:8] Macro("SIP/400-00000003", "outisbusy,") in new stack
    -- Executing [s@macro-outisbusy:1] Progress("SIP/400-00000003", "") in new stack
    -- Executing [s@macro-outisbusy:2] GotoIf("SIP/400-00000003", "0?emergency,1") in new stack
    -- Executing [s@macro-outisbusy:3] GotoIf("SIP/400-00000003", "0?intracompany,1") in new stack
    -- Executing [s@macro-outisbusy:4] Playback("SIP/400-00000003", "all-circuits-busy-now&pls-try-call-later, noanswer") in new stack
J'ai vu cette ligne dans le debug:
Dial failed for some reason with DIALSTATUS = CHANUNAVAIL and HANGUPCAUSE = 0

J'ai l'impression que la liason ne se fait pas, j'ai activé le debug sur les 2 sites, quand j'appelle le site B avec les numéro en 500, dans le debug du SERVEUR B rien n'apparait.

Code:
SERVEUR A
SITEB 192.168.200.25 (S) 255.255.255.255 4569 (T) OK (3 ms)
1 iax2 peers [1 online, 0 offline, 0 unmonitored]

SERVEUR B
SITEA 192.168.200.7 (S) 255.255.255.255 4569 (T) OK (3 ms)
1 iax2 peers [1 online, 0 offline, 0 unmonitored]
J'ai redémarré les serveurs et toujours pareil.


La je sèche !!!


Merci
 

danardf

Joined
Dec 3, 2007
Messages
8,069
Likes
10
Points
88
#13
Hmmmm... il n'y a pas de firewall ou autre routeurs entre les 2?
Port IAX2 = 4569 en UDP.
Un seul port à ourvrir, passant la sig IAX2 + RTP sur le même port.

Si le ping passe, vers le distant, le niveau 2 est bon.

Regardes la méthode décrite par Bob (Trunking between two Elastix PBX Systems Via Internet):
http://www.elastix.org/index.php/en/pro ... books.html

Là tu as tous les documents sur Elastix.
Sur Elastix Without Tears, la procédure était faite pour Elastix 1.x, mais ça reste le même principe.
Celle de Bob, est plus d'actualité (Elastix 2.2.0)
Même si toi tu n'es pas dans le même cas, il sera plus facile de le faire vu que tu es dans un même réseau.

Sinon, tu peux aussi tenter d'activer le mode debug IAX2.
CLI> iax2 set debug ip ip_distante ou peer trunk_iax2
CLI> iax2 set debug off

Même si c'est imbuvable, il se peut que cela montre une évidence ou autre problème de config.
 

fran73

Joined
Feb 15, 2012
Messages
12
Likes
0
Points
0
#14
Merci pour ta réponse,

Je l'ai déja lu cette doc et j'ai reproduit pas à pas cette procédure, merci.

En fait j'ai trouvé mon erreur,

J'ai repassé les logs, et j'ai vu qu'il essayait bien d'emprunter le trunk mais j'avais l'impression que le problème venait de mes routes sortantes.

Effectivement, mes routes sortantes mal configurées.

Maintenant ça fonctionne :laugh: .

Je vais éssayer de mettre un peu de sécurité.

En tout cas merci pour toutes ces bonnes infos.

Si un jour je peu aider je le ferai sans hésiter.

Merci
 

danardf

Joined
Dec 3, 2007
Messages
8,069
Likes
10
Points
88
#15
Effectivement, pour la sécu, il faut commencer crescendo en passant par ne rien mettre et aller pas à pas vers ce que l'on veut atteindre. ça évite pas mal de problème si quelque chose est mal configuré, on sait tout de suite d'où ça vient. ;)

Lis par la même occasion ce que Bob a écrit concernant la sécurité. Il y a aussi le forum.
Quant au mot de passe choisir un mdp complexe Alpha numérique avec un cryptage MD5. Même si celui-ci peut être craqué.
 

fran73

Joined
Feb 15, 2012
Messages
12
Likes
0
Points
0
#16
Bonjour,

J'ai pu faire mes test en mettant un peu de sécurtité et tout fonctionne.

En revanche j'aurai une dernière petite question en ce qui concerne un addon : distributed dialplan.

Je voudrai savoir quel est son rôle ?

Merci
 

danardf

Joined
Dec 3, 2007
Messages
8,069
Likes
10
Points
88
#17
Salut.

C'est d'optimiser et d'harmoniser le plan de num entre serveurs.
Jamais servie.
Si tu crées une extensions les routes doivent se créer sur les autres serveurs. (normalement, un truc dans ce gout là)
 

romy

Joined
Feb 20, 2012
Messages
3
Likes
0
Points
0
#18
jai suivi les messages concernant ce sujet
et jai pu en fait jai pu interconnecter mes deux serveurs elatix
bon jai maintenant un autre probleme
je voudraix maintenant connecter deux serveurs elastix distants
dans 2 villes differentes et eloignees via la connexion Internet
je voudrais savoir si je peux interconnecter ces deux serveurs elastix sans passer par un fournisseur de VoIP
si oui, comment?
merci davance et longue vie a ce forum
 

danardf

Joined
Dec 3, 2007
Messages
8,069
Likes
10
Points
88
#19
Salut romy.

Tu as due louper des épisodes!!
L'interco entre 2 serveurs via internet a bien été évoqué. ;)
Relies le sujet, et regardes autour de la doc qu'a fait Bob.
Il est clairement expliqué le comment du pourquoi.
 

romy

Joined
Feb 20, 2012
Messages
3
Likes
0
Points
0
#20
dac merci
j vais parcourir encore ligne apres ligne pour bien verifier
merci encore
 

Members online

No members online now.

Latest posts

Forum statistics

Threads
30,914
Messages
130,919
Members
17,590
Latest member
johneldc90
Top