Getting disconnecting call 'SIP/XXX--0000a230' for lack of RTP activity error

Hello,
I’m managing some asterisk servers that are getting several disconnecting call ‘SIP/XXX–0000a230’ for lack of RTP activity in 61 seconds errors. The servers are not on behind a firewall they’re on the WAN and connected to my LAN via 2 NICs I have made sure that NAT is set to no in the sip.conf on all of my inbound/outbound peers.
I am unsure what I can test next to determine the problem. If anyone has any ideas they would be appreciated.

Just clarify there should be no NAT interference as the servers are not going through the firewall.

Thanks,
Stinger554

start by making an rtp debug. Because the call is dropping due to the
lack of RTP activity. Use the command rtp set debug on and verify the rtp media flow most of the time this issue is caused by misconfigured firewall,iptables.

Thanks for the tip. When I ran a rtp debug it appears that the server is sending the rtp packets but never receiving a response. Would it be helpful for me to post my sip.conf? Also if the asterisk server is on the same LAN as the extensions would firewall rules still affect the traffic?

Thanks,
Stinger554

The firewall rules could certainly be blocking, it depends on how exactly they are made. Console output with SIP log (sip set debug on) would shine some light on it a bit.

Is it possible that the rtp data is being sent out the wrong NIC? (jcolp would probably know best though).

I’m guessing a sip debug trace and an rtp set debug on trace of a call would be good as well.

This is the sip debug info that that occurs at the error. I have replaced the Pub IP with xxx.xxx.xxx.xxx

Oct 21 13:35:52] Really destroying SIP dialog ‘4784e92d141f47566dc25f3e75e35df4@xxx.xxx.xxx.xxx:5060’ Method: INVITE
[Oct 21 13:35:52] NOTICE[3968]: chan_sip.c:26712 check_rtp_timeout: Disconnecting call ‘SIP/238-00008966’ for lack of RTP activity in 61 seconds
[Oct 21 13:35:52] – Hungup ‘DAHDI/pseudo-1715713832’
[Oct 21 13:35:52] == Spawn extension (default, 8600094, 1) exited non-zero on ‘SIP/238-00008966’
[Oct 21 13:35:52] – Executing [h@default:1] AGI(“SIP/238-00008966”, “agi://127.0.0.1:4577/call_log–HVcauses–PRI-----NODEBUG-----16---------------”) in new stack
[Oct 21 13:35:52] – <SIP/238-00008966>AGI Script agi://127.0.0.1:4577/call_log–HVcauses–PRI-----NODEBUG-----16--------------- completed, returning 0
[Oct 21 13:35:52] Scheduling destruction of SIP dialog ‘00bde3fc6c4ecc5b153ef8cc002179f7@xxx.xxx.xxx.xxx:5060’ in 6400 ms (Method: INVITE)
[Oct 21 13:35:52] set_destination: Parsing sip:238@192.168.2.238:46396;rinstance=6f0fbe9633ec3be6;transport=UDP for address/port to send to
[Oct 21 13:35:52] set_destination: set destination to 192.168.2.238:46396
[Oct 21 13:35:52] Reliably Transmitting (no NAT) to 192.168.2.238:46396:
BYE sip:238@192.168.2.238:46396;rinstance=6f0fbe9633ec3be6;transport=UDP SIP/2.0
Via: SIP/2.0/UDP xxx.xxx.xxx.xxx:5060;branch=z9hG4bK6e6fb320
Max-Forwards: 70
From: “S1610211334488600094” sip:4805008985@xxx.xxx.xxx.xxx;tag=as7cc79a32
To: sip:238@192.168.2.238:46396;rinstance=6f0fbe9633ec3be6;transport=UDP;tag=e2079b33
Call-ID: 00bde3fc6c4ecc5b153ef8cc002179f7@xxx.xxx.xxx.xxx:5060
CSeq: 103 BYE
User-Agent: Asterisk PBX 1.8.32.2-vici
X-Asterisk-HangupCause: Normal Clearing
X-Asterisk-HangupCauseCode: 16
Content-Length: 0


[Oct 21 13:35:52]
<— SIP read from UDP:192.168.2.238:46396 —>
SIP/2.0 200 OK
Via: SIP/2.0/UDP xxx.xxx.xxx.xxx:5060;branch=z9hG4bK6e6fb320;received=192.168.1.22
Contact: sip:238@192.168.2.238:46396;rinstance=6f0fbe9633ec3be6;transport=UDP
To: sip:238@192.168.2.238:46396;rinstance=6f0fbe9633ec3be6;transport=UDP;tag=e2079b33
From: "S1610211334488600094"sip:4805008985@xxx.xxx.xxx.xxx;tag=as7cc79a32
Call-ID: 00bde3fc6c4ecc5b153ef8cc002179f7@xxx.xxx.xxx.xxx:5060
CSeq: 103 BYE
User-Agent: Z 3.3.25608 r25552
Content-Length: 0

<------------->
[Oct 21 13:35:52] — (9 headers 0 lines) —
[Oct 21 13:35:52] Really destroying SIP dialog ‘00bde3fc6c4ecc5b153ef8cc002179f7@xxx.xxx.xxx.xxx:5060’ Method: INVITE
[Oct 21 13:35:52] – <Local/914239038166@default-00009faf;2>AGI Script agi://127.0.0.1:4577/call_log–HVcauses–PRI-----NODEBUG-----16-----ANSWER-----18-----5 completed, returning 0
[Oct 21 13:35:52]
<— SIP read from UDP:192.168.2.238:46396 —>
PUBLISH sip:238@192.168.1.22;transport=UDP SIP/2.0
Via: SIP/2.0/UDP 192.168.2.238:46396;branch=z9hG4bK-d8754z-34d52deb8758dd3c-1—d8754z-
Max-Forwards: 70
Contact: sip:238@192.168.2.238:46396;transport=UDP
To: sip:238@192.168.1.22;transport=UDP
From: sip:238@192.168.1.22;transport=UDP;tag=2460f972
Call-ID: ZGI3NDQ5MWNhZjk4YjBjNmU5ZTNlZWQ4MThkMDhjNTI.
CSeq: 1 PUBLISH
Expires: 600
Allow: INVITE, ACK, CANCEL, BYE, NOTIFY, REFER, MESSAGE, OPTIONS, INFO, SUBSCRIBE
Content-Type: application/pidf+xml
Supported: replaces, norefersub, extended-refer, timer, X-cisco-serviceuri
User-Agent: Z 3.3.25608 r25552
Event: presence
Allow-Events: presence, kpml
Content-Length: 258

<?xml version="1.0" encoding="UTF-8"?>

open Online

<------------->
[Oct 21 13:35:52] — (16 headers 3 lines) —
[Oct 21 13:35:52]
<— Transmitting (no NAT) to 192.168.2.238:46396 —>
SIP/2.0 489 Bad Event
Via: SIP/2.0/UDP 192.168.2.238:46396;branch=z9hG4bK-d8754z-34d52deb8758dd3c-1—d8754z-;received=192.168.2.238
From: sip:238@192.168.1.22;transport=UDP;tag=2460f972
To: sip:238@192.168.1.22;transport=UDP;tag=as7885cf89
Call-ID: ZGI3NDQ5MWNhZjk4YjBjNmU5ZTNlZWQ4MThkMDhjNTI.
CSeq: 1 PUBLISH
Server: Asterisk PBX 1.8.32.2-vici
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, PUBLISH, MESSAGE
Supported: replaces, timer
Content-Length: 0

<------------>
[Oct 21 13:35:52] Really destroying SIP dialog ‘ZGI3NDQ5MWNhZjk4YjBjNmU5ZTNlZWQ4MThkMDhjNTI.’ Method: PUBLISH
[Oct 21 13:35:52]
<— SIP read from UDP:192.168.2.238:46396 —>
SUBSCRIBE sip:238@192.168.1.22;transport=UDP SIP/2.0
Via: SIP/2.0/UDP 192.168.2.238:46396;branch=z9hG4bK-d8754z-b4c4c768d7ecfea3-1—d8754z-
Max-Forwards: 70
Contact: sip:238@192.168.2.238:46396;transport=UDP
To: sip:238@192.168.1.22;transport=UDP
From: sip:238@192.168.1.22;transport=UDP;tag=4c5fb66f
Call-ID: MTNkNDY0NTIwNDQ3ZDBkZDk5MTM0ZDU3MDNmZjNlMjg.
CSeq: 1 SUBSCRIBE
Expires: 600
Accept: application/watcherinfo+xml
Allow: INVITE, ACK, CANCEL, BYE, NOTIFY, REFER, MESSAGE, OPTIONS, INFO, SUBSCRIBE
Supported: replaces, norefersub, extended-refer, timer, X-cisco-serviceuri
User-Agent: Z 3.3.25608 r25552
Event: presence.winfo
Allow-Events: presence, kpml
Content-Length: 0

<------------->
[Oct 21 13:35:52] — (16 headers 0 lines) —
[Oct 21 13:35:52] Creating new subscription
[Oct 21 13:35:52] Sending to 192.168.2.238:46396 (no NAT)
[Oct 21 13:35:52] list_route: hop: sip:238@192.168.2.238:46396;transport=UDP
[Oct 21 13:35:52] Found peer ‘238’ for ‘238’ from 192.168.2.238:46396
[Oct 21 13:35:52]
<— Transmitting (no NAT) to 192.168.2.238:46396 —>
SIP/2.0 401 Unauthorized
Via: SIP/2.0/UDP 192.168.2.238:46396;branch=z9hG4bK-d8754z-b4c4c768d7ecfea3-1—d8754z-;received=192.168.2.238
From: sip:238@192.168.1.22;transport=UDP;tag=4c5fb66f
To: sip:238@192.168.1.22;transport=UDP;tag=as14b766ea
Call-ID: MTNkNDY0NTIwNDQ3ZDBkZDk5MTM0ZDU3MDNmZjNlMjg.
CSeq: 1 SUBSCRIBE
Server: Asterisk PBX 1.8.32.2-vici
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, PUBLISH, MESSAGE
Supported: replaces, timer
WWW-Authenticate: Digest algorithm=MD5, realm=“asterisk”, nonce="2b595351"
Content-Length: 0

<------------>
[Oct 21 13:35:52] Scheduling destruction of SIP dialog ‘MTNkNDY0NTIwNDQ3ZDBkZDk5MTM0ZDU3MDNmZjNlMjg.’ in 6400 ms (Method: SUBSCRIBE)
[Oct 21 13:35:52]
<— SIP read from UDP:192.168.2.238:46396 —>
SUBSCRIBE sip:238@192.168.1.22;transport=UDP SIP/2.0
Via: SIP/2.0/UDP 192.168.2.238:46396;branch=z9hG4bK-d8754z-8a75d09840fa1b2b-1—d8754z-
Max-Forwards: 70
Contact: sip:238@192.168.2.238:46396;transport=UDP
To: sip:238@192.168.1.22;transport=UDP
From: sip:238@192.168.1.22;transport=UDP;tag=4c5fb66f
Call-ID: MTNkNDY0NTIwNDQ3ZDBkZDk5MTM0ZDU3MDNmZjNlMjg.
CSeq: 2 SUBSCRIBE
Expires: 600
Accept: application/watcherinfo+xml
Allow: INVITE, ACK, CANCEL, BYE, NOTIFY, REFER, MESSAGE, OPTIONS, INFO, SUBSCRIBE
Supported: replaces, norefersub, extended-refer, timer, X-cisco-serviceuri
User-Agent: Z 3.3.25608 r25552
Authorization: Digest username=“238”,realm=“asterisk”,nonce=“2b595351”,uri="sip:238@192.168.1.22;transport=UDP",response=“6d328df91df22792a981bd4d25d69cd3”,algorithm=MD5
Event: presence.winfo
Allow-Events: presence, kpml
Content-Length: 0

<------------->
[Oct 21 13:35:52] — (17 headers 0 lines) —
[Oct 21 13:35:52] Creating new subscription
[Oct 21 13:35:52] Sending to 192.168.2.238:46396 (no NAT)
[Oct 21 13:35:52] Found peer ‘238’ for ‘238’ from 192.168.2.238:46396
[Oct 21 13:35:52] Looking for 238 in default (domain 192.168.1.22)
[Oct 21 13:35:52]
<— Transmitting (no NAT) to 192.168.2.238:46396 —>
SIP/2.0 404 Not Found
Via: SIP/2.0/UDP 192.168.2.238:46396;branch=z9hG4bK-d8754z-8a75d09840fa1b2b-1—d8754z-;received=192.168.2.238
From: sip:238@192.168.1.22;transport=UDP;tag=4c5fb66f
To: sip:238@192.168.1.22;transport=UDP;tag=as14b766ea
Call-ID: MTNkNDY0NTIwNDQ3ZDBkZDk5MTM0ZDU3MDNmZjNlMjg.
CSeq: 2 SUBSCRIBE
Server: Asterisk PBX 1.8.32.2-vici
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, PUBLISH, MESSAGE
Supported: replaces, timer
Content-Length: 0

<------------>

It might be that but I’ve been doing some packet captures and everything appears to be going in the right directions.

You’ve only posted a log of the call getting hung up, none of the set up which includes addresses and information.

Here’s the sip.conf and related info (although the second part is a referenced .conf file) All of the extensions have the same config as the 100 one.

[general]
context=trunkinbound
allowguest=no
allowoverlap=no

bindport=5060
bindaddr=0.0.0.0
srvlookup=yes

disallow=all
allow=ulaw
allow=gsm
mohinterpret=default
mohsuggest=default
language=en
relaxdtmf=yes
trustrpid = no
sendrpid = yes
progressinband=no

dtmfmode = rfc2833

videosupport=no

callevents=yes

rtptimeout=60

notifyringing = yes
notifyhold = yes
limitonpeers = yes
externip = xxx.xxx.xxx.xxx

localnet=192.168.1.0/255.255.255.0
localnet=10.0.0.0/255.0.0.0
localnet=172.16.0.0/12
localnet=169.254.0.0/255.255.0.0
nat=no
canreinvite=no

jbenable = yes
jbforce = no
jbmaxsize = 100
jbresyncthreshold = 1000
jbimpl = adaptive
jblog = no
qualify=yes
limitonpeer = yes

[general]
localnet=192.168.0.0/255.255.255.0
localnet=192.168.1.0/255.255.255.0
localnet=192.168.2.0/255.255.255.0
localnet=192.168.3.0/255.255.255.0

[vitel-inbound]
type=friend
context=trunkinbound
usecallerid=yes
trustrpid=yes
sendrpid=yes
dtmfmode=rfc2833
host=xxxxx.xxxx.xxxx
qualify=60
insecure=port,invite
allow=all
qualify=yes
allowguest=no

[xcast-outbound]
insecure=port,invite
secret=no
qualify=yes
host=xxxxx.xxxxx.xxxxx.
disallow=all
allow=ulaw
dtmfmode=rfc2833
externip=xxxxx.xxxx.xxx
nat=no
canreinvite=no
context=from-internal
type=peer

[100]
username=100
secret=secert
accountcode=100
callerid="" <>
mailbox=100
type=friend
host=dynamic
canreinvite=no
context=default
nat=no
qualify=yes
rtpkeepalive=0
disallow=all
allow=ulaw,alaw