Cursos Asterisk en México

Llamadas exten remotas se cortan en 20segundos

Colapsar

Anuncio

Colapsar
No hay anuncio todavía.
X
 
  • Filtrar
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes

  • Llamadas exten remotas se cortan en 20segundos

    Hola. Tengo problemas para mantener una conversación desde mi extensión remota. Asterisk está en otra localización, y en mi oficina tengo un teléfono grandstream GXP1160, del cual intento hacer una llamada y se corta después de 20 segundos.

    Todos los puertos están abiertos en el firewall y el NAT está hecho correctamente. En mi sip_generel_custom.conf tengo configurada externip así como localnet.

    Pego el link de mi CLI, ya que sobrepasa el límite para este foro: http://pastebin.com/eqv2LRVf

    Espero que alguien pueda ayudarme. Gracias.

  • #2
    El pastebin que proporcionas no tiene información útil, deshabilita el debug del cli que solo genera datos innecesarios. Lo que necesitamos es el sip debug de una llamada completa no solo el final.

    Comentario


    • #3
      El sip debug de una llamada completa?? No sé cómo generarlo. He logrado obtener esto justo en el momento de la llamada:

      Executing [83226044@from-internal:1] Macro("SIP/500-00000091", "user-callerid,SKIPTTL,") in new stack
      -- Executing [s@macro-user-callerid:1] Set("SIP/500-00000091", "AMPUSER=500") in new stack
      -- Executing [s@macro-user-callerid:2] GotoIf("SIP/500-00000091", "0?report") in new stack
      -- Executing [s@macro-user-callerid:3] ExecIf("SIP/500-00000091", "1?Set(REALCALLERIDNUM=500)") in new stack
      -- Executing [s@macro-user-callerid:4] Set("SIP/500-00000091", "AMPUSER=500") in new stack
      -- Executing [s@macro-user-callerid:5] Set("SIP/500-00000091", "AMPUSERCIDNAME=500") in new stack
      -- Executing [s@macro-user-callerid:6] GotoIf("SIP/500-00000091", "0?report") in new stack
      -- Executing [s@macro-user-callerid:7] Set("SIP/500-00000091", "AMPUSERCID=500") in new stack
      -- Executing [s@macro-user-callerid:8] Set("SIP/500-00000091", "CALLERID(all)="500" <500>") in new stack
      -- Executing [s@macro-user-callerid:9] ExecIf("SIP/500-00000091", "0?Set(CHANNEL(language)=)") in new stack
      -- Executing [s@macro-user-callerid:10] GotoIf("SIP/500-00000091", "1?continue") in new stack
      -- Goto (macro-user-callerid,s,19)
      -- Executing [s@macro-user-callerid:19] Set("SIP/500-00000091", "CALLERID(number)=500") in new stack
      -- Executing [s@macro-user-callerid:20] Set("SIP/500-00000091", "CALLERID(name)=500") in new stack
      -- Executing [s@macro-user-callerid:21] NoOp("SIP/500-00000091", "Using CallerID "500" <500>") in new stack
      -- Executing [83226044@from-internal:2] NoOp("SIP/500-00000091", "Calling Out Route: nacional") in new stack
      -- Executing [83226044@from-internal:3] Set("SIP/500-00000091", "MOHCLASS=default") in new stack
      -- Executing [83226044@from-internal:4] Set("SIP/500-00000091", "_NODEST=") in new stack
      -- Executing [83226044@from-internal:5] Macro("SIP/500-00000091", "record-enable,500,OUT,") in new stack
      -- Executing [s@macro-record-enable:1] GotoIf("SIP/500-00000091", "1?check") in new stack
      -- Goto (macro-record-enable,s,4)
      -- Executing [s@macro-record-enable:4] ExecIf("SIP/500-00000091", "0?MacroExit()") in new stack
      -- Executing [s@macro-record-enable:5] GotoIf("SIP/500-00000091", "0?Group:OUT") in new stack
      -- Goto (macro-record-enable,s,15)
      -- Executing [s@macro-record-enable:15] GotoIf("SIP/500-00000091", "0?IN") in new stack
      -- Executing [s@macro-record-enable:16] ExecIf("SIP/500-00000091", "1?MacroExit()") in new stack
      -- Executing [83226044@from-internal:6] Macro("SIP/500-00000091", "dialout-trunk,3,83226044,") in new stack
      -- Executing [s@macro-dialout-trunk:1] Set("SIP/500-00000091", "DIAL_TRUNK=3") in new stack
      -- Executing [s@macro-dialout-trunk:2] GosubIf("SIP/500-00000091", "0?sub-pincheck,s,1") in new stack
      -- Executing [s@macro-dialout-trunk:3] GotoIf("SIP/500-00000091", "0?disabletrunk,1") in new stack
      -- Executing [s@macro-dialout-trunk:4] Set("SIP/500-00000091", "DIAL_NUMBER=83226044") in new stack
      -- Executing [s@macro-dialout-trunk:5] Set("SIP/500-00000091", "DIAL_TRUNK_OPTIONS=tr") in new stack
      -- Executing [s@macro-dialout-trunk:6] Set("SIP/500-00000091", "OUTBOUND_GROUP=OUT_3") in new stack
      -- Executing [s@macro-dialout-trunk:7] GotoIf("SIP/500-00000091", "1?nomax") in new stack
      -- Goto (macro-dialout-trunk,s,9)
      -- Executing [s@macro-dialout-trunk:9] GotoIf("SIP/500-00000091", "0?skipoutcid") in new stack
      -- Executing [s@macro-dialout-trunk:10] Set("SIP/500-00000091", "DIAL_TRUNK_OPTIONS=") in new stack
      -- Executing [s@macro-dialout-trunk:11] Macro("SIP/500-00000091", "outbound-callerid,3") in new stack
      -- Executing [s@macro-outbound-callerid:1] ExecIf("SIP/500-00000091", "0?Set(CALLERPRES()=)") in new stack
      -- Executing [s@macro-outbound-callerid:2] ExecIf("SIP/500-00000091", "0?Set(REALCALLERIDNUM=500)") in new stack
      -- Executing [s@macro-outbound-callerid:3] GotoIf("SIP/500-00000091", "1?normcid") in new stack
      -- Goto (macro-outbound-callerid,s,6)
      -- Executing [s@macro-outbound-callerid:6] Set("SIP/500-00000091", "USEROUTCID=") in new stack
      -- Executing [s@macro-outbound-callerid:7] Set("SIP/500-00000091", "EMERGENCYCID=") in new stack
      -- Executing [s@macro-outbound-callerid:8] Set("SIP/500-00000091", "TRUNKOUTCID=") in new stack
      -- Executing [s@macro-outbound-callerid:9] GotoIf("SIP/500-00000091", "1?trunkcid") in new stack
      -- Goto (macro-outbound-callerid,s,12)
      -- Executing [s@macro-outbound-callerid:12] ExecIf("SIP/500-00000091", "0?Set(CALLERID(all)=)") in new stack
      -- Executing [s@macro-outbound-callerid:13] ExecIf("SIP/500-00000091", "0?Set(CALLERID(all)=)") in new stack
      -- Executing [s@macro-outbound-callerid:14] ExecIf("SIP/500-00000091", "0?Set(CALLERID(all)=)") in new stack
      -- Executing [s@macro-outbound-callerid:15] ExecIf("SIP/500-00000091", "0?Set(CALLERPRES()=prohib_passed_screen)") in new stack
      -- Executing [s@macro-dialout-trunk:12] GosubIf("SIP/500-00000091", "0?sub-flp-3,s,1") in new stack
      -- Executing [s@macro-dialout-trunk:13] Set("SIP/500-00000091", "OUTNUM=83226044") in new stack
      -- Executing [s@macro-dialout-trunk:14] Set("SIP/500-00000091", "custom=SIP/gateway") in new stack
      -- Executing [s@macro-dialout-trunk:15] ExecIf("SIP/500-00000091", "0?Set(DIAL_TRUNK_OPTIONS=M(setmusic^default)) ") in new stack
      -- Executing [s@macro-dialout-trunk:16] Macro("SIP/500-00000091", "dialout-trunk-predial-hook,") in new stack
      -- Executing [s@macro-dialout-trunk-predial-hook:1] MacroExit("SIP/500-00000091", "") in new stack
      -- Executing [s@macro-dialout-trunk:17] GotoIf("SIP/500-00000091", "0?bypass,1") in new stack
      -- Executing [s@macro-dialout-trunk:18] GotoIf("SIP/500-00000091", "0?customtrunk") in new stack
      -- Executing [s@macro-dialout-trunk:19] Dial("SIP/500-00000091", "SIP/gateway/83226044,300,") in new stack
      == Using SIP RTP TOS bits 184
      == Using SIP RTP CoS mark 5
      -- Called SIP/gateway/83226044
      ippbx*CLI>
      -- SIP/gateway-00000092 is making progress passing it to SIP/500-00000091
      -- SIP/gateway-00000092 answered SIP/500-00000091
      -- Locally bridging SIP/500-00000091 and SIP/gateway-00000092
      -- Executing [h@macro-dialout-trunk:1] Macro("SIP/500-00000091", "hangupcall,") in new stack
      -- Executing [s@macro-hangupcall:1] GotoIf("SIP/500-00000091", "1?endmixmoncheck") in new stack
      -- Goto (macro-hangupcall,s,9)
      -- Executing [s@macro-hangupcall:9] NoOp("SIP/500-00000091", "End of MIXMON check") in new stack
      -- Executing [s@macro-hangupcall:10] GotoIf("SIP/500-00000091", "1?nomeetmemon") in new stack
      -- Goto (macro-hangupcall,s,28)
      -- Executing [s@macro-hangupcall:28] NoOp("SIP/500-00000091", "End of MEETME check") in new stack
      -- Executing [s@macro-hangupcall:29] GotoIf("SIP/500-00000091", "1?noautomon") in new stack
      -- Goto (macro-hangupcall,s,34)
      -- Executing [s@macro-hangupcall:34] NoOp("SIP/500-00000091", "TOUCH_MONITOR_OUTPUT=") in new stack
      -- Executing [s@macro-hangupcall:35] GotoIf("SIP/500-00000091", "1?noautomon2") in new stack
      -- Goto (macro-hangupcall,s,41)
      -- Executing [s@macro-hangupcall:41] NoOp("SIP/500-00000091", "MONITOR_FILENAME=") in new stack
      -- Executing [s@macro-hangupcall:42] GotoIf("SIP/500-00000091", "1?skiprg") in new stack
      -- Goto (macro-hangupcall,s,45)
      -- Executing [s@macro-hangupcall:45] GotoIf("SIP/500-00000091", "1?skipblkvm") in new stack
      -- Goto (macro-hangupcall,s,48)
      -- Executing [s@macro-hangupcall:48] GotoIf("SIP/500-00000091", "1?theend") in new stack
      -- Goto (macro-hangupcall,s,50)
      -- Executing [s@macro-hangupcall:50] AGI("SIP/500-00000091", "hangup.agi") in new stack
      -- Launched AGI Script /var/lib/asterisk/agi-bin/hangup.agi
      -- <SIP/500-00000091>AGI Script hangup.agi completed, returning 0
      -- Executing [s@macro-hangupcall:51] Hangup("SIP/500-00000091", "") in new stack
      == Spawn extension (macro-hangupcall, s, 51) exited non-zero on 'SIP/500-00000091' in macro 'hangupcall'
      == Spawn extension (macro-dialout-trunk, h, 1) exited non-zero on 'SIP/500-00000091'
      == Spawn extension (macro-dialout-trunk, s, 19) exited non-zero on 'SIP/500-00000091' in macro 'dialout-trunk'
      == Spawn extension (from-internal, 83226044, 6) exited non-zero on 'SIP/500-00000091'

      Comentario


      • #4
        Con el comando: sip set debug on

        Comentario


        • #5
          Ahora si. Aquí tengo toda la traza completa de la llamada. Tuve que pegarlo en pastebin nuevamente: http://pastebin.com/gh34E69f

          Comentario


          • #6
            Tu dispositivo en la dirección 190.113.109.189 no esta repondiendo a las peticiones de Asterisk, las retransmisiones comienzan en la línea 246 y terminan en la línea 413 del pastebin, esto generalmente es problema de NAT o de Ruteo, el sip debug se ve sano con las direcciones públicas correctas etc, por lo que podrías verifican en ambos routers que no existan opciones del tipo SIP ALG o SPI activadas.

            Comentario


            • #7
              Gracias por responder.

              En la sección ALG Service de mi router ubicado en 190.113.109.189 he DESACTIVADO: FTP, TFTP, IPSec, PPTP y L2TP. Además que DESACTIVADO las configuraciones UPnP, porque había leído en un foro que es recomendable quitarlo.

              Tengo el mismo problema. No logré la solución con esto.

              Comentario


              • #8
                ¿Y del lado del server no tienes esas opciones activadas? Por cierto debes buscar alguna otra opción en el router remoto con respecto a SIP. ¿Que modelo de router usas?

                Comentario


                • #9
                  Del lado del server tengo un modem/router marca Pirelli 6332AP y no hay ninguna opción como las que usted me indica. Del lado remoto (donde estoy ahora), tengo un router Nexxt.

                  Me estoy volviendo loco y no encuentro la solución. En el firewall tengo abierto todo el tráfico entre el lado server y el lado remoto.

                  Comentario


                  • #10
                    Realiza un trazado del lado remoto con wireshark para ver si están llegando esas retransmisiones de asterisk y a la par obtén el sip debug desde asterisk, así podrás/podremos ver que pasa en realidad con esos paquetes.

                    Comentario


                    • #11
                      He colocado canreinvite=very en las extensiones remotas, y me funciona perfecto. Ya no se corta. Solución válida o perjudica seguridad?

                      Comentario


                      • #12
                        No me suena ese valor Para canreinvite/directmedia, no será insecure? Canreinvite es usado para dirigir el rtp y los invites: http://www.voip-info.org/wiki/view/A...ip+canreinvite

                        insecure=very sirve para permitir a los hosts no reautenticarse como lo hacen en un register o en un invite.

                        Comentario

                        Nube de Etiquetas

                        Colapsar

                        Principales Usuarios Activos

                        Colapsar

                        No hay usuarios activos superiores.
                        Trabajando...
                        X