Asterisco: chan_sip.c:4321 __sip_reliable_xmit: problema grave de red; __sip_xmit devuelve un error para los datos del paquete

Asterisco: chan_sip.c:4321 __sip_reliable_xmit: problema grave de red; __sip_xmit devuelve un error para los datos del paquete

Tengo una configuración de Asterisk PBX ejecutándose en una Raspberry Pi 1 (IP 192.168.2.2) y funciona bien con algunos teléfonos IP locales. Recientemente compré una puerta de enlace Grandstream HT813 (IP 192.168.2.3) para conectar un teléfono analógico a IP y un IP a la PSTN.

El teléfono analógico funciona perfectamente y marcadeLa PSTN funciona perfectamente. Llamar fuera era mucho más problemático. En primer lugar, tengo lo siguiente en mi sip.conf: (no incluí los otros teléfonos, solo el puerto FXO)

[general]
context=default
sipdebug=yes
bindaddr=0.0.0.0

[FXO]
type=peer
context=inbound
host=192.168.2.3
insecure=port
dtmfmode=rfc2833
canreinvite=no
secret=secret_was_here

Redacté el secreto anterior por razones obvias. Cuando me comunico con PSTN a través de un teléfono IP (IP 192.168.2.5), aparece el siguiente error, ¿dónde [myphonenumber]está mi número de teléfono celular al que estaba llamando para probar?

  == Setting global variable 'SIPDOMAIN' to '192.168.2.2'
    -- Executing [[myphonenumber]@local:1] Goto("PJSIP/104-00000000", "dialout,[myphonenumber],1") in new stack
    -- Goto (dialout,[myphonenumber],1)
    -- Executing [[myphonenumber]@dialout:1] Dial("PJSIP/104-00000000", "SIP/FXO/[myphonenumber], 30") in new stack
  == Using SIP RTP CoS mark 5
Audio is at 13370
Adding codec ulaw to SDP
Adding codec alaw to SDP
Adding codec gsm to SDP
Adding non-codec 0x1 (telephone-event) to SDP
Reliably Transmitting (no NAT) to 192.168.2.3:5060:
INVITE sip:[myphonenumber]@192.168.2.3 SIP/2.0
Via: SIP/2.0/UDP 192.168.2.2:5060;branch=z9hG4bK71b94203
Max-Forwards: 70
From: <sip:[email protected]>;tag=as162b0b68
To: <sip:[myphonenumber]@192.168.2.3>
Contact: <sip:[email protected]:5060>
Call-ID: [email protected]:5060
CSeq: 102 INVITE
User-Agent: Asterisk PBX 16.2.1~dfsg-1
Date: Thu, 15 Aug 2019 19:11:17 GMT
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, PUBLISH, MESSAGE
Supported: replaces, timer
Content-Type: application/sdp
Content-Length: 291

v=0
o=root 1202030057 1202030057 IN IP4 192.168.2.2
s=Asterisk PBX 16.2.1~dfsg-1
c=IN IP4 192.168.2.2
t=0 0
m=audio 13370 RTP/AVP 0 8 3 101
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:3 GSM/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=maxptime:150
a=sendrecv

---
[Aug 15 20:11:17] ERROR[23679][C-00000001]: chan_sip.c:4321 __sip_reliable_xmit: Serious Network Trouble; __sip_xmit returns error for pkt data

Entonces configuré un puerto de conmutador para reflejar la salida de mi servidor Asterisk Pi. No envía datos al gateway cuando ocurre este error, por lo que el problema está en Asterisk. He visto muchas publicaciones que dicen que esto es un error de permiso o de firewall, por supuesto. En primer lugar, desactivé el firewall en el servidor Asterisk durante la prueba. (Es una red pequeña) También ejecuté nmap -v -sU -p 5060 192.168.2.3, lo que confirmó que mi puerta de enlace funciona bien. Si ejecuto ese comando como usuario de Asterisk, obtengo un error de permiso, por supuesto. No veo nada más en el syslog. ¿Algunas ideas?

ACTUALIZAR:Lo miré de nuevo y rastreé la llamada a través del código C. Parece que el problema es que la sipsockvariable (línea 1101) está configurada en -1 cuando sip_prepare_socketconfirma que la conexión requiere un socket UDP (línea 29503). Esto devuelve -1 arrojando un error en __sip_xmit. Buscaré en mis archivos de registro cualquier información adicional. Además, mi versión de Asterisk es la v16.2.1.

información relacionada