Asterisk 20mp után megszakad

Fórumok

Sziasztok!

-Trixbox (Asterisk 1.6.0.26-FONCORE-r78)
-5060 porton

sip_nat.conf (külső IP nk beállítva)
-externip=89.xx.xx.xx
-localnet=192.168.1.0/255.255.255.0
extensionok:
-canreinvite=no
-nat=yes
-qualify=yes

-belső hálózaton, belső IP vel, 11111 port redictelve hogy az is működjön
-iptables -t nat -A PREROUTING -i eth0 -p udp --dport 11111 -j REDIRECT --to-port 5060

-van egy linux alapú tűzfal
-DNAT UDP port 11111 ---> 192.168.1.20:11111
-/sbin/modprobe -r nf_nat_sip
/sbin/modprobe -r nf_conntrack_sip
/sbin/modprobe nf_conntrack_sip ports=5060,11111 sip_direct_signalling=0 sip_direct_media=0
/sbin/modprobe nf_nat_sip

-Belső hálózatból működik rendesen(minden funkció nincs soha hiba)
-Kívülről registráció OK. Hívásnál kapcsolat létrejön, de VAGY nincs semmi hang egyik oldalt se és megszakad 20sec múlva.
Vagy van hang és megszakad 20sec múlva.
Internet és hálózati problémát asterisk gépen nem látunk, tűzfal nem egy bonyolult dolog nincs korlátozás.
-Ha 5060 asportot használunk ua. ez az eset jön elő.

Ezt kapom asteriskben(asterisk -rvvvvv)
[2013-10-16 16:44:52] WARNING[2933]: chan_sip.c:2995 retrans_pkt: Maximum retries exceeded on transmission JEJ1NYYolO5w6RYvCFeqBIW6iqtzG2oK for seqno 26665 (Critical Response) -- See doc/sip-retransmit.txt.
[2013-10-16 16:44:52] WARNING[2933]: chan_sip.c:3027 retrans_pkt: Hanging up call JEJ1NYYolO5w6RYvCFeqBIW6iqtzG2oK - no reply to our critical packet (see doc/sip-retransmit.txt).
-- Executing [h@macro-dial:1] Macro("SIP/34-000045d3", "hangupcall") in new stack
-- Executing [s@macro-hangupcall:1] GotoIf("SIP/34-000045d3", "1?skiprg") in new stack
-- Goto (macro-hangupcall,s,4)

Sajnos nincs nagy asterisk tudásunk. Odáig jutottunk hogy valami NAT probléma lehet, de nem teljesen értem hogy ha az is lenne akkor miért van hogy beszélekünk egymással már, és utána 20 sec nél megszakad.

Köszi ötletet előre is.

Z.

Hozzászólások

X-Lite has broken re-invite handling that will cause a disconnect in that sort of time frame if you have canreinvite anabled.

Solution?

"Options, Advanced, Network,Call Inactivity RTCP. I disabled CallInactivity and problem went away."

source:
http://forums.asterisk.org/viewtopic.php?f=1&t=73372
--
Kristof

köszi de nem x-lite ot használunk. hanem Bria Prof softphone t elsősorban.
canreinvite no -n van jelenleg is.

közben még állítottam:
TCP t is engedélyeztem érdekes távoli softphone proginál ez javított a helyzeten.
Viszont mobil 3G n TCP vel továbbra is 20-30sec nél eldobja, de mintha nem mindig.

hálózati gond lesz ez..

UPDATE: TCP nem ok, asterisk minden féle problémákra hivatkozott reggelre..
"[2013-10-17 06:52:03] DEBUG[17464] pbx.c: FONALITY: This thread has already held the conlock, skip locking"

szóval továbbra se jó. Asterisk leírások azon kívűl hogy oda biggyesztik hogy "broken NAT" konkrétumot sehol nem találok mivel lehetne megoldani.

szerintem inkább forwardolt az rtp.conf -ban levő range-t is (esetleg úgy hogy módosítod...) és ne használd a conntract_sip -et...

nem láttam még működő l7-es sip proxy-t...

Üdv:
Csabka

többi sip-esre is gondoltam!
lsmod|grep sip

valamint érdemes lehet sip debug-ot bekapcsolni (sip set debug on), hogy mit tartalmaz az INVITE és az SDP hátha nem azt amit szeretnél...

lehet hogy a távoli oldal is NAT mögött van? ott is lehet sip proxy valamint esetleges tűzfal beállítás dolog...

Szia,

Ahhoz, hogy értsd miért szakad meg a hívás, értened kell az Asterisk mûködését. Mi is sokat szenvedtünk ezzel, amikor a saját voip telefonközpont progaramunkat fejlesztettük.

Az asterisk a hívás kiépítésének az ellsô fázisában behazudja a telefonnak, hogy ô a másik fél. Ezt úgy teszi meg, hogy a saját ip címét küldi le az SDP-ben, hogy ide küld a hangot. Ezt mind a két féllel megteszi. Amikor mind a két féltôl jön a hang RTP protokollon keresztül, átjátsza a hangot.

A második lépés a hívásban, hogy az asterisk kiszáll a hangátjátszásból. Ekkor a két telefonnek küld egy üzenetet, hogy mostantól a hangot direktbe küldd. Ez kb 8-10 mp után történik meg.

A probléma amit tapasztalsz abból adódik, hogy a második fázisban az asterisk rossz ip címet küld a telefonnak. Ez pedig abból adódik, hogy a telefon még az elsô fázisban rossz ip címmel mutatkozott be az asterisknek.

A megoldás az, hogy a telefonokon Stunt állítasz be, hogy rendesen felderítsék a saját ip címüket.

Egyébként pont az ilyen szívások vezettek oda, hogy nekiálltunk kifejleszteni az Ozeki Phone System-et