Voir la version complète : Comment modifier des messages SIP INVITE?
Bonsoir à tous!
Je voudrais modifier les messages SIP INVITE qu'un proxy reçoit avant de le renvoyer au destinataire du message. Je voudrais précisement modifier les adresses IP dans le corps du message. Malheureusement je n'ai aucune idée de quels fichiers de configuration modifier ou de quel genre de script écrire. Mes configurations se font sur TRIXBOX. Je vous prie de me donner des idées.
Merci d'avance.
Elyse
Bonsoir à tous!
Malheureusement je n'ai aucune idée
Heureusement que tu n'as aucune idée, parce que la tous les trunks avec
auth par IP sont morts.
Malheureusement hélas j'ai cru voir que OpenSER sais faire.
bon hack :-)
Mais bon pas chez moi car la tu devras non seulement d'avoir la bonne IP, le bon compte, le bon password et être enregistré.
Comdif il ne parle pas d’authentification, reste dans le sujet.
elyseh Il est facile de modifier n'importe quel champ une fois reçu par proxy.
Explique nous plus pourquoi veux tu effectuer la modification sur la trixbox au lieu de proxy ? Et précise exactement de quel IP il s'agit. (FROM? CONTACT ?)
Comdif il ne parle pas d’authentification, reste dans le sujet.
elyseh Il est facile de modifier n'importe quel champ une fois reçu par proxy.
Explique nous plus pourquoi veux tu effectuer la modification sur la trixbox au lieu de proxy ? Et précise exactement de quel IP il s'agit. (FROM? CONTACT ?)
En réalité mon TRIXBOX joue un role de proxy. Je veux modifier l'adresse IP dans l'attribut C du corps du message (SDP) INVITE
Je voudrais remplacer l'adresse IP contenu dans l'attribut
Connection Information (c): IN IP4 10.10.10.10
par 10.10.8.1 (adresse du client source) afin que les flux RTP soient envoyés à cette adresse au lieu du 10.10.10.10 (adresse du proxy).
Donc en un mot je voudrais que les flux RTP passent directement entre mes deux clients au lieu de traverser les proxys.
Dans ce cas il faut utiliser canreinvite=yes au niveau de compte sip.
Google sur cette option si tu veux plus d'information.
Merci pour ta réponse.
Mettre canreinvite=yes ne résout pas mon problème. Le proxy met toujours son adresse IP à la place de celle du client SIP. J'ai essayé directrtpmedia=yes aussi. Mais rien.
De plus, mes deux clients SIP sont connectés chacun à 2 serveurs Asterisk différents.
Je pense que écrire des scripts AGI pour modifier "soit meme" les attributs pourrait résoudre le problème. Est ce que c'est possible?
Merci d'avance.
Non c'est pas possible, tu as du mal à d’écrire ton schéma, commence par dessiner un schema réseau de tes asterisk's (nat ip's ect), et met le ici, et arrête appeler asterisk proxy, c'est un B2BUA pas un proxy.
Voici mon architecture.
Clt SIP A <=> NAT1 <=> Server SIP 1 <=> Server SIP 2 <=> NAT2 <=> Clt SIP B
IP client SIP A :10.10.8.1
IP Serveur SIP 1: 10.10.10.1
IP Serveur SIP 2:10.10.10.2
IP client SIP B: 10.10.9.1
Je répète le problème. Je voudrais que les deux clients A et B puissent échanger directement entre eux les paquets RTP.
Dans ce cas il vous faut que canreinvite soit activé sur l'ensemble de chemin.
C.a.d entre les peers d'asterisk 1&1 et client 2, Serveurs sip1 & 2 est en publique ?
Les 2 serveurs SIP sont dans le réseau publique.
Quand chacun ou l'un des deux clients se trouve derrière un NAT canreinvite=yes ne marche plus.
D'où la recherche d'une solution où on peut demander au serveur de modifier l'attribut C et d'y mettre l'adresse appropriée avant de le transmettre.
Je suppose que vous avez cherché le google les mot suivants ? "Asterisk nat"
Je vous conseille de lire le premier lien en détail.
Powered by vBulletin® Version 4.2.5 Copyright © 2024 vBulletin Solutions, Inc. Tous droits réservés