Auteur Sujet: RED by SFR : Appels SIP sortant coupés au bout de 32 secondes  (Lu 7606 fois)

0 Membres et 1 Invité sur ce sujet

artemus24

  • Abonné SFR fibre FttH
  • *
  • Messages: 782
  • Montignac Lascaux (24)
RED by SFR : Appels SIP sortant coupés au bout de 32 secondes
« Réponse #48 le: 11 août 2023 à 19:22:12 »
Si je remplace "mitry.p-cscf.sfr.net" par "residential.p-cscf.sfr.net" ça me met "erreur de passerelle".
"residential" n'existe pas comme tu peux le constater si après :
C:\>nslookup residential.p-cscf.sfr.net 109.0.66.10
Serveur :   vip-dns-gp-primary.dns.sfr.net
Address:  109.0.66.10

*** vip-dns-gp-primary.dns.sfr.net ne parvient pas à trouver residential.p-cscf.sfr.net : Non-existent domain

C:\>
alors que "mitry", "corbas" ou "trappes" existent :
C:\>nslookup mitry.p-cscf.sfr.net 109.0.66.10
Serveur :   vip-dns-gp-primary.dns.sfr.net
Address:  109.0.66.10

Réponse ne faisant pas autorité :
Nom :    mitry.p-cscf.sfr.net
Addresses:  2a02:8400:20:22a::8
          2a02:8400:20:22b::8
          2a02:8400:20:22c::8
          2a02:8400:20:229::8
          2a02:8400:20:228::8
          92.91.129.24
          92.91.129.40
          92.91.129.56
          92.91.129.72
          92.91.129.8


C:\>nslookup corbas.p-cscf.sfr.net 109.0.66.20
Serveur :   vip-dns-gp-secondary.dns.sfr.net
Address:  109.0.66.20

Réponse ne faisant pas autorité :
Nom :    corbas.p-cscf.sfr.net
Addresses:  2a02:8400:20:120b::8
          2a02:8400:20:1208::8
          2a02:8400:20:120a::8
          2a02:8400:20:1209::8
          2a02:8400:20:120c::8
          92.91.179.56
          92.91.179.40
          92.91.179.8
          92.91.179.72
          92.91.179.24


C:\>nslookup trappes.p-cscf.sfr.net 109.0.66.20
Serveur :   vip-dns-gp-secondary.dns.sfr.net
Address:  109.0.66.20

Réponse ne faisant pas autorité :
Nom :    trappes.p-cscf.sfr.net
Addresses:  2a02:8400:20:239::8
          2a02:8400:20:238::8
          2a02:8400:20:23a::8
          2a02:8400:20:23b::8
          2a02:8400:20:23c::8
          92.91.129.136
          92.91.129.168
          92.91.129.184
          92.91.129.200
          92.91.129.152


C:\>
Citation de: Rooot
Tu as bien mis les DNS de SFR comme je l'ai fait ?
Avec ou sans les DNS, j'ai quand même la communication.
J'ai bien renseigné mon adresse IP WAN dans le compte. C'est d'ailleurs pour ça que je n'ai pas besoin du serveur STUN.

Et si le protocole téléphonique utilisé par SFR n'était pas du SIP comme on le pense, ça serait quoi ?

Optix

  • AS41114 - Expert OrneTHD
  • Abonné Orne THD
  • *
  • Messages: 4 681
  • WOOHOO !
    • OrneTHD
RED by SFR : Appels SIP sortant coupés au bout de 32 secondes
« Réponse #49 le: 11 août 2023 à 20:13:39 »
Bien vu ! je viens de faire une capture depuis le routeur, et pas de status 180 Ringing et encore moins de 200 OK



Et en parallele sur les requettes DNS capturées, puisque c'es de l'UDP, je vois ceci qui m'interpelle :


Re !
Bon je regarde ça avec un oeil neuf et cette réponse m'interpelle.

Ton client SIP doit résoudre un NDD (visiblement après la réponse "183 Session progress", j'imagine que le serveur en face te demande de chercher l'appel là bas), mais tu n'arrives pas à le résoudre.

rooot

  • Abonné RED by SFR fibre FttH
  • *
  • Messages: 1 725
  • 🔵🔵🔵🔵⚪⚪⚪⚪🔴🔴🔴🔴
RED by SFR : Appels SIP sortant coupés au bout de 32 secondes
« Réponse #50 le: 11 août 2023 à 20:45:05 »
Si je remplace "mitry.p-cscf.sfr.net" par "residential.p-cscf.sfr.net" ça me met "erreur de passerelle".
"residential" n'existe pas comme tu peux le constater si après :
et pourquoi cela fonctionne chez moi ? tu peux aussi le constater sur mes images écran.

EDIT:
j'arrive a reproduire ton "erreur de passerelle" si je ne mets pas les DNS de sfr dans Microsip. Dès que je les mets et que je sauvegarde je repasse "Online" immediatement.
Pourtant sur mon PC et sur le routeur j'ai remplacé mes DNS 1.1.1.1 et 8.8.8.8 par ceux de SFR...

rooot

  • Abonné RED by SFR fibre FttH
  • *
  • Messages: 1 725
  • 🔵🔵🔵🔵⚪⚪⚪⚪🔴🔴🔴🔴
RED by SFR : Appels SIP sortant coupés au bout de 32 secondes
« Réponse #51 le: 11 août 2023 à 20:51:28 »
Re !
Bon je regarde ça avec un oeil neuf et cette réponse m'interpelle.

Ton client SIP doit résoudre un NDD (visiblement après la réponse "183 Session progress", j'imagine que le serveur en face te demande de chercher l'appel là bas), mais tu n'arrives pas à le résoudre.
C'est le champ A qu'il n'arrive pas a résoudre, mais est-ce que c'est celui là dont on a besoin ? parce que si je ne dis pas de betise et si ma mémoire ne me joue pas des tours, que j'utilise,
"residential.p-cscf.sfr.net" ou "corbas.p-cscf.sfr.net" le résultat est le même...

je vais refaire un test pour vérifier.

EDIT:
Voilà, je suis FULL DNS SFR: PC/ROUTEUR/Microsip
avec SIP Proxy sur : corbas.p-cscf.sfr.net:5062

Voici le résultat :

rooot

  • Abonné RED by SFR fibre FttH
  • *
  • Messages: 1 725
  • 🔵🔵🔵🔵⚪⚪⚪⚪🔴🔴🔴🔴
RED by SFR : Appels SIP sortant coupés au bout de 32 secondes
« Réponse #52 le: 11 août 2023 à 21:40:51 »
@artemus24
nslookup -q=srv _sip._udp.residential.p-cscf.sfr.net 109.0.66.10


Source : https://docs.opnsense.org/manual/how-tos/sfr_red_fr_ftth.html

Donc en passant par residential.p-cscf.sfr.net en fait on passe par un "load balancing" qui va attribuer un des 3 serveurs.

artemus24

  • Abonné SFR fibre FttH
  • *
  • Messages: 782
  • Montignac Lascaux (24)
RED by SFR : Appels SIP sortant coupés au bout de 32 secondes
« Réponse #53 le: 11 août 2023 à 23:05:43 »
Merci Rooot. :)

Voilà comment j'écris le serveur Proxy dans MicroSIP : "mitry.p-cscf.sfr.net:5062". Si je ne mets pas le port5062, ça ne fonctionne pas.

Je comprends mieux pourquoi il faut utiliser ton residential. Voici ce que j'obtiens :
C:\>nslookup -type=all  _sip._udp.residential.p-cscf.sfr.net 109.0.66.10
Serveur :   vip-dns-gp-primary.dns.sfr.net
Address:  109.0.66.10

Réponse ne faisant pas autorité :
_sip._udp.residential.p-cscf.sfr.net    SRV service location:
          priority       = 10
          weight         = 0
          port           = 5062
          svr hostname   = mitry.p-cscf.sfr.net
_sip._udp.residential.p-cscf.sfr.net    SRV service location:
          priority       = 10
          weight         = 0
          port           = 5062
          svr hostname   = corbas.p-cscf.sfr.net
_sip._udp.residential.p-cscf.sfr.net    SRV service location:
          priority       = 10
          weight         = 0
          port           = 5062
          svr hostname   = trappes.p-cscf.sfr.net

C:\>
Sauf que le mettre dans MicroSIP provoque une "erreur de passerelle". Ou alors, il y a d'autres déclarations à faire dans mon ordinateur pour que ce "residential" soit opérationnel.
Est-ce que tu utilises Siproxd ?

rooot

  • Abonné RED by SFR fibre FttH
  • *
  • Messages: 1 725
  • 🔵🔵🔵🔵⚪⚪⚪⚪🔴🔴🔴🔴
RED by SFR : Appels SIP sortant coupés au bout de 32 secondes
« Réponse #54 le: 12 août 2023 à 00:04:12 »
Voilà comment j'écris le serveur Proxy dans MicroSIP : "mitry.p-cscf.sfr.net:5062". Si je ne mets pas le port5062, ça ne fonctionne pas.
si tu utilies mitry, trappes, ou corbas alors il faut indiquer le port. Pas si tu utilises "residential", car l'application decouvre le domaine et le port avec la requete nslookup que j'ai indiqué plus haut.
Mais au final tout ca n'apporte pas grand chose vu que ca ne regle pas le problème qu'on a  ;D

concernant le champ champ SIP Server, il faut bien mettre : "ims.mnc010.mcc208.3gppnetwork.org" et non "+33xxxxxxxxxx@ims.mnc010.mcc208.3gppnetwork.org"
L'appli prend le texte que tu as mis dans "Account name" et le combien avec le "sip server" pour donner justement le "+33xxxxxxxxxx@ims.mnc010.mcc208.3gppnetwork.org"
Donc "Account name" = +33xxxxxxxxxxx
et  "sip server" = ims.mnc010.mcc208.3gppnetwork.org
et ca doit fonctionner.

Pour siproxd, non, j'ai essayé de l'installer mais je n'ai pas compris comment ca se parametre donc j'ai laissé tombé.

artemus24

  • Abonné SFR fibre FttH
  • *
  • Messages: 782
  • Montignac Lascaux (24)
RED by SFR : Appels SIP sortant coupés au bout de 32 secondes
« Réponse #55 le: 12 août 2023 à 01:18:09 »
Ca y est, j'ai enfin compris. Le "residential.p-cscf.sfr.net" s'utilise conjointement avec les DNS SFR 109.0.66.10 et 109.0.66.20.
Je dois être fatigué à force de chercher et de ne pas comprendre ce que je fais.

Dans Le paramétrage de MicroSIP, le séparateur des adresses IP des serveurs DNS est la virgule et non le point virgule.
« Modifié: 12 août 2023 à 01:47:04 par artemus24 »

rooot

  • Abonné RED by SFR fibre FttH
  • *
  • Messages: 1 725
  • 🔵🔵🔵🔵⚪⚪⚪⚪🔴🔴🔴🔴
RED by SFR : Appels SIP sortant coupés au bout de 32 secondes
« Réponse #56 le: 12 août 2023 à 08:11:30 »
Dans Le paramétrage de MicroSIP, le séparateur des adresses IP des serveurs DNS est la virgule et non le point virgule.
si je supprime le contenu de ce champ, et que je décoche et recoche "DNS SRV" alors ça m'affiche 8.8.8.8; 8.8.4.4
donc je pense que le séparateur est le point virgule...  ;D

x0r

  • Abonné Orange Fibre
  • *
  • Messages: 7
    • Site personnel
RED by SFR : Appels SIP sortant coupés au bout de 32 secondes
« Réponse #57 le: 15 août 2023 à 13:22:11 »
Bonjour,

Je viens de créer un compte sur lafibre.info et me joins tardivement à la conversation parce que quelqu’un m’a contacté sur Matrix à propos de ce sujet précis. :)

L’intervalle de 32 secondes entre le début et la coupure de l’appel correspond au timeout par défaut d’une transaction SIP.

Une première capture d’écran de Wireshark montre un message 183 Session Progress envoyé dans la transaction INVITE par le P-CSCF. C’est une méthode pour mettre en place une session avant le décroché de l’appel (le plus souvent, ça sert à jouer une tonalité de retour d’appel dans la bande). On parle dans ce cas d’« early media ». Puisque ces messages sont réémis avec l’algorithme de backoff classique du SIP (d’abord après 500 ms, puis 1000, 2000, 4000 jusqu’à expiration du timer), on peut supposer que le P-CSCF s’attendait à recevoir un PRACK de la part du client (cf. RFC 3262 pour les détails du PRACK). Sans PRACK dans les temps, le P-CSCF fait échouer l’INVITE avec une réponse 5xx.

Dans une seconde capture, je vois un 183 suivi d’un train de paquets RTP du client jusqu’au P-CSCF. C’est bon signe : cela signifie que la réponse SDP contenu dans le 183 est parvenu jusqu’au client. Mais il n’y a pas de trafic RTP dans l’autre sens, ni de PRACK du client.

Dans le doute, ce serait très utile de faire une capture tcpdump sur le routeur, avec l’option -i any et en enregistrant la capture dans un fichier, pour voir ce qui se passe exactement avec les trafics SIP et RTP au franchissement du NAT.

artemus24

  • Abonné SFR fibre FttH
  • *
  • Messages: 782
  • Montignac Lascaux (24)
RED by SFR : Appels SIP sortant coupés au bout de 32 secondes
« Réponse #58 le: 15 août 2023 à 17:17:17 »
Bonjour X0r, bienvenue dans ce forum.

Ton pseudo m'est familier car on parle de toi dans ce forum, en admettant qu'il s'agisse bien du même X0r. :)

Pour WireShark, je laisse Rooot se charger de cela, s'il le veut bien, car il est plus coutumier de ce genre de manipulation.

Citation de: X0R
L’intervalle de 32 secondes entre le début et la coupure de l’appel correspond au timeout par défaut d’une transaction SIP.
Sous Asterisk, on retrouve cette valeur en faisant :
Debian*CLI> pjsip show auth sfr

  I/OAuth:  <AuthId/UserName.............................................................>
==========================================================================================

     Auth:  sfr/NDIXXXXXXXXXX.XXX.XXX@sfr.fr

 ParameterName  : ParameterValue
 =============================================
 auth_type      : userpass
 md5_cred       :
 nonce_lifetime : 32
 oauth_clientid :
 oauth_secret   :
 password       : MMMMMMMMMMMMMMMM
 realm          :
 refresh_token  :
 username       : NDIXXXXXXXXXX.XXX.XXX@sfr.fr

Debian*CLI>
Citation de: X0r
on peut supposer que le P-CSCF s’attendait à recevoir un PRACK de la part du client (cf. RFC 3262 pour les détails du PRACK).
Comment cela se résout sous Asterisk ?

x0r

  • Abonné Orange Fibre
  • *
  • Messages: 7
    • Site personnel
RED by SFR : Appels SIP sortant coupés au bout de 32 secondes
« Réponse #59 le: 15 août 2023 à 17:39:17 »
Bonjour,

Ton pseudo m'est familier car on parle de toi dans ce forum, en admettant qu'il s'agisse bien du même X0r. :)

Oui, il s’agit bien du même x0r et je peux le prouver. :)

Citer
Sous Asterisk, on retrouve cette valeur en faisant :
Debian*CLI> pjsip show auth sfr

  I/OAuth:  <AuthId/UserName.............................................................>
==========================================================================================

     Auth:  sfr/NDIXXXXXXXXXX.XXX.XXX@sfr.fr

 ParameterName  : ParameterValue
 =============================================
 auth_type      : userpass
 md5_cred       :
 nonce_lifetime : 32
 oauth_clientid :
 oauth_secret   :
 password       : MMMMMMMMMMMMMMMM
 realm          :
 refresh_token  :
 username       : NDIXXXXXXXXXX.XXX.XXX@sfr.fr

Debian*CLI>

Houlà non, ça n’a rien à voir ; ça concerne l’authentification (et je pense que ce paramètre n’a aucune importance dans notre cas de figure).

La bonne valeur se lit avec pjsip show settings : à la toute fin il y a timer_b et timer_t1. Le timer T1 est l’intervalle de départ entre l’envoi de la requête et la première retransmission en cas de non-réponse et le timer B est le délai d’attente maximal. T1 vaut 500 ms par défaut et B vaut 64 × T1, soit 32 s. Ces deux timers n’ont d’effet que sur les requêtes SIP partant d’Asterisk ; ici, on voit plutôt les timers positionnés de l’autre côté qui font leur boulot. En tout cas, côté Asterisk, il n’y a vraiment aucune raison de toucher aux timers.

Bref, on s’éloigne du sujet : je voulais juste expliquer d’où venait ce délai de tout pile 32 secondes, et pourquoi pas 30 ou autre.

Citer
Comment cela se résout sous Asterisk ?

Là comme ça je n’ai pas encore assez d’informations. Je soupçonne de deux choses l’une : (a) quelque chose sur le trajet de l’infra de SFR jusqu’à Asterisk fait que ces messages 183 Session Progress ne parviennent jamais à Asterisk, ou (b) ce sont les réponses PRACK d’Asterisk, qui servent à accuser réception d’un 183 Session Progress, qui ne parviennent jamais à SFR.

D’où le besoin d’une capture de paquets sur le routeur pour savoir ce qui se passe.