Externer Sip-Client: Rein ja, raus nein

allesOK

Mitglied
Mitglied seit
24 Mai 2004
Beiträge
732
Punkte für Reaktionen
0
Punkte
0
Hallo!

An meinem *-Server (hinter Firewall, aber mit Open Ports) kann sich der Sip-Teilnehmer 32 (ebenfalls hinter NAT, Eumex 704 LAN) registrieren. Die 32 kann auch ohne Probleme in den * und per ISDN weiter zur Anlage anrufen, aber umgekehrt geht es nicht.

Weder von der ISDN-Anlage, noch von internen Sip-Clients kann ich den externen SIP erreichen.

Jun 1 21:32:51 NOTICE[360464]: app_dial.c:559 dial_exec: Unable to create channel of type 'SIP'

Die internen Sip erreichen sich gegenseitig und von ISDN aus ohne Probleme...

Irgendwelche Ideen?
 
Könnte es am RPT-Port liegen? Standartmäßig ist Asterisk ja glabe ich auf Port 10000-20000 eingestellt. Bei den Clients ist es ja meist 5004. Also, kann mir vorstellen, daß Asterisk den Client auf irgend nem Port zwischen 10000 & 20000 anruft, aber de externe Client da garnicht horcht.
 
hi,

danke, aber isses net. 5060,5004,8000 und 10000-20000 (alles UDP) werden zum Client durchgereicht.

Kommt immer noch der gleiche Fehler.
 
- Schau mal die verwendeten Codecs durch, kann es sein, dass Du Codecs verwenden willst, die Du nicht hast o.ä.?

- Von wann ist deine Asterisk-Version (CVS?) ggf. mal CVS nochmal updaten, wenn Du den Entwicklerzweig nimmst und unglücklicherweise mitten in den Commits der Entwickler was ausgecheckt hast, kann es sein, das schlichtweg was kaputt ist.
 
Codecs: Der externe Client ist genauso (standard) konfiguriert, wie die internen (X-Lite, + Transmit Silence)

CVS: Die Version ist maximal 1 h alt
 
hi,

danke, aber isses net. 5060,5004,8000 und 10000-20000 (alles UDP) werden zum Client durchgereicht.

Kommt immer noch der gleiche Fehler.

Ich meine ja auchnicht, daß es n Firewall-Problem ist (also bei dem Client, den Asterisk anruft).
Hab auch keine Ahnung, nach welchen kriterien Asterisk das RPT-Port wählt.
Aber wenn dein Client nur auf 5004 hört, und der Server z.B. auf 10000 sendet, dann bekommt der Client das nicht mit, weil er das Port 5004 nicht überwacht.
 
achso .... ja das kann es sein. Auf welchem Port hört denn X-Lite standardmäßig? Die rtp.conf hat nämlich 10000-15000 eingetragen.

Wobei: Dann dürften die netzinternen Clients doch auch keine Anrufen empfangen, oder?
 
Seltsam ist auch dieses Verhalten direkt nach einem *-Neustart:

Jun 1 22:18:17 NOTICE[65541]: chan_sip.c:5887 sip_poke_noanswer: Peer '32' is now UNREACHABLE!
Jun 1 22:18:17 NOTICE[65541]: chan_sip.c:5887 sip_poke_noanswer: Peer '13' is now UNREACHABLE!
Jun 1 22:18:27 NOTICE[65541]: chan_sip.c:4925 handle_response: Peer '13' is now REACHABLE!

dabei ist '13' ein interner Sip-Client und '32' der sagenhafte externe. Beide sind gleich konfiguriert.
 
ggf. mal CVS-Version vom Vortag versuchen (cvs co -D yesterday asterisk)
 
bin dabei - denke aber nicht das es hilft.

Noch zur Hilfe - ein andere externer Client (NICHT hinter NAT, aber hinter Restricted Firewall) funzt sehr gut.
 
ich nochmal:

das problem liegt tiefer. ich verwende das install_sh script von bristuff (das patched einige Files). Das cvs up auf die Version von gestern erzeugt Konflikte. Ideen?
 
Hast Du Sip-Client hinter Firewall in der sip.conf auf nat=yes + qualify=yes ?
 
steht:
nat=yes
qualify=200 (ist das yes?)

noch was:
sip show peers zeigt:

32/32 217.232.169.xx (D) 255.255.255.255 5982 UNREACHABLE

Dabei ist 5982 der Port. Kann das damit zusammenhängen, dass ich die 32 nicht erreiche?
----
Edit von Christoph:

Bitte an die "Edit"-Funktion denken, wenn es so kurzfristige Nachträge gibt. ;-)
 
Also nochmal langsam zum mitschreiben:

32 --SIP--> (NAT) --> Asterisk ----> (NAT) --SIP--> Aussenwelt
+----ISDN---> Aussenwelt

32 kann Asterisk anrufen, aber Asterisk nicht die 32
Asterisk zur Aussenwelt geht auch nicht.

Kannst Du ggf. mal die sip.conf posten?


Was das CVS betrifft: ok, hatte den bristuff vergessen, dann lass es mal so mit aktuellem CVS laufen.
 
danke, aber isses net. 5060,5004,8000 und 10000-20000 (alles UDP) werden zum Client durchgereicht.
Das sind die Freigegebenen Ports? (alle?)

32/32 217.232.169.xx (D) 255.255.255.255 5982 UNREACHABLE

Dabei ist 5982 der Port. Kann das damit zusammenhängen, dass ich die 32 nicht erreiche?

Port 5982 liegt ja ganz offensichtlich nicht im freigegebenen Portrange zwischen 10000 und 20000.
 
32 -- Sip --> (NAT) --> Web --> (NAT) --> * : das geht, aber umgekehrt
* --> (NAT) --> Web --> (NAT) --> Sip --> 32 will nich (damit meine ich sowohl von den internen Sips als auch über ISDN per bristuff)

An die sip.conf komme ich gerade nicht ran ist aber sehr übersichtlich. Ich versuche mich mal zu erinnern

Code:
[general]
port = 5060
bind_addr = 0.0.0.0

[32]
type=friend
host=dynamic
username=32
secret=mypassword
callerid=32
qualify=200
context=intern
nat=yes
canreinvite=yes
 
@hupe: ja, also du denkst auch, das wird es sein (der fehlende freigegebene Port auf dem dem NAT-Router des externen Clients). Konnte es nur nicht mehr ausprobieren, da der extener Client heute nacht auch mal schlafen wollte ... aber warum wird denn nicht standardmäßig 5060 verwendet? Das x-lite ist genauso wie bei meinem eigenen internen Clients konfiguriert.

edit:mad:christoph
sorry, mach ich in zukunft
 
5982? das ist der port den mir * mit sip show peers anzeigt.

Kann mir mal schnell jemand Nachhilfe geben, was SIP und was RPT Port ist?
 
Aso.... hmmm... könnte schlicht und ergreifend das NAT auf der Seite von 32 verkonfiguriert sein? -- Wenn Du weder mit SIPPS noch * rankommst?

Ausserdem -- weshalb wird da so ein krummer Port für die SIP-Signalisierung verwendet? Kannst Du das dort nicht auf 5060 umstellen?

Und sip show peers zeigt den Signalisierungsport.
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.