SIP+NAT+Asterisk

rajo

Admin-Team
Mitglied seit
31 Mrz 2004
Beiträge
1,958
Punkte für Reaktionen
0
Punkte
36
danke! sehr hilfreich - will aber immer noch net wirklich

Wie muss ich den qualify einstellen? Groß/klein???
 
Denke mal, dass das von deinem Router abhängt. Also wie lange er die IP-Adressen speichert. Das ist so eine Sache, die garantiert wieder in keinem Handbuch eines Routers steht. Und einstellen kann man das bestimmt auchnicht. Naja, wäre sowieso n bischen problematisch. Der Router hat ja einen endlichen Speicher für sowas. Wenn man denn viele Verbindungen aufbaut, werden die IPs wohl schneller verlohren gehen.
Einfach mal ausprobieren, mit welchem Wert es noch geht.
 
ja, das ist ein guter hinweis - also am anfang mal klein halten und vielleicht dann höher setzen
 
Ich habe Asterisk HINTER NAT ohne Port-Forwarding.
Hatte Zeit lang leider Richtung Festnetz immer kein Audio.

sip.conf:
externip=xxx.dyndns.org
localnet=192.168.1.xxx/255.255.255.0

hat mich schliesslich nach Wochen gerettet!
Also werd mal hier Probs hat, das wären die wichtigsten wie von rajo im FAQ beschrieben.

Fragt sich nur ob man in sip.conf bei [sipgate] und [nikotel] nat=yes + qualify=yes einstellen muss/sollte da die Outbound-Peers ja keine Telefone sind.
Port-Forwarding kann ich eben immer noch nicht machen.... :(

Ich bekomme immer so komische Meldungen mit ...is UNREACHABLE now.
Oder aber auch :
NOTICE[1116941120]: chan_sip.c:3605 sip_reg_timeout: Registration for '[email protected]' timed out, trying again


Aber es funktioniert jetzt.
 
@Blackvel:

NOTICE[1116941120]: chan_sip.c:3605 sip_reg_timeout: Registration for '[email protected]' timed out, trying again

Bin mir jetzt über das NOTICE hier nicht sicher, kann schlichtweg sein, dass die Registrierung von Asterisk am Provider abgelaufen ist (was bei SIP normal ist, da man alle xxx Sekunden eine neue registrierungsnachricht versenden muss) und Du eben so viele v's verwendest, dass Asterisk Dir *alles* anzeigt, was grade so los ist :)


Aber es funktioniert jetzt.
Mmmhh?? Warum willst Du dann noch an nat=yes+qualify=yes rumspielen? ;)
"Never touch a running system" :lol:
 
Das hab ich auch, aber sehr unregelmäßig:
NOTICE[1116941120]: chan_sip.c:3605 sip_reg_timeout: Registration for '[email protected]' timed out, trying again
Ich habs immer auf Sipgate geschoben, Asterisk funktionierte aber trotzdem...

qualify habe ich nicht gesetzt, nat=yes aber schon (wegen NAT-Router)

Folgendes habe ich mal im Netz gelesen und eingetragen - frag mich jetzt bitte nicht, wofür das genau steht (hat aber was mit den Reg-Zeiten auf sich):
Code:
maxexpirey=180
defaultexpirey=160
tos=reliability

Soweit funzt Asterisk bei mir aber ziemlich stabil.
 
maxexpirey=180
defaultexpirey=160

Diese Parameter beeinflussen das Registrierungsintervall von dem ich gesprochen habe.

In der sip.conf.sample ist es ja auch beschrieben:
;tos=184 ; Set IP QoS to either a keyword or numeric val
;tos=lowdelay ; lowdelay,throughput,reliability,mincost,none
;maxexpirey=3600 ; Max length of incoming registration we allow
;defaultexpirey=120 ; Default length of incoming/outoing registration

maxexpirey ist für Registrierungen am Asterisk-Server (d.h. Telefone etc.). Dieser Wert regelt also die maximale Dauer, für die eine Registrierung eines Clients gültig ist.

defaultexpirey ist der Standardwert für ein- und ausgehende Registrierungen.

(Beides in sekunden)
 
Hmm, "tos=184" gibt bei mir ein
Code:
Jun  7 21:42:08 WARNING[1128057776]: rtp.c:784 ast_rtp_settos: Unable to set TOS to 184
Jun  7 21:42:09 WARNING[1128057776]: rtp.c:784 ast_rtp_settos: Unable to set TOS to 184
:(
 
*grübel*

Kenne mich mit QoS und den TOS-Bits nicht aus, da ich es noch nie selber probiert habe.

Eine Vermutung wäre mal, dass Asterisk irgendetwas fehlt, um die Pakete entsprechend zu markieren.
Hab' jetzt aber keinen Schimmer ob das an fehlender Software, libs oder Kernelmodul oder sonstwas liegt. Sorry.

(und google/Mailinglistenarchiv hat mir da grade auch nicht weitergeholfen)
 
externip=xxx.dyndns.org
localnet=192.168.1.xxx/255.255.255.0
Was ist das xxx (in localnet) - die Adresse des *-Servers oder bei der Netzmaske die 0 (also die Netzwerk-Adresse)???

@Blackvel: Hast du den Sipgate-Peer OK oder UNREACHABLE?
 
also xxx bei externIP ist z.B aliashostname.dyndns.org.

Beispiele localnet:
localnet=192.168.0.0/255.255.0.0; All RFC 1918 addresses are local networks
localnet=10.0.0.0/255.0.0.0 ; Also RFC1918
localnet=169.254.0.0/255.255.0.0 ;Zero conf local network

Sorry, ich habe wohl wegen XXX und nicht X verwirrt :)

PEER OK in der Regel, manchmal aber auch kurz UNREACHABLE (trotz gehts <g>).

Desweiteren bekomme ich noch folgende Meldungen mit nat=yes + qualify=yes :

Jun 7 23:09:13 NOTICE[1116941120]: chan_sip.c:5906 handle_response: Peer 'sipgate' is now TOO LAGGED!
Jun 7 23:09:14 NOTICE[1116941120]: chan_sip.c:5906 handle_response: Peer '63.214.186.6' is now TOO LAGGED!
Jun 7 23:09:14 NOTICE[1116941120]: chan_sip.c:5906 handle_response: Peer 'calamar0.nikotel.com' is now TOO LAGGED!
Jun 7 23:09:14 NOTICE[1116941120]: chan_sip.c:5906 handle_response: Peer 'nikotel' is now TOO LAGGED!
Jun 7 23:09:23 NOTICE[1116941120]: chan_sip.c:5901 handle_response: Peer 'sipgate' is now REACHABLE!
Jun 7 23:09:25 NOTICE[1116941120]: chan_sip.c:5901 handle_response: Peer '63.214.186.6' is now REACHABLE!
Jun 7 23:09:25 NOTICE[1116941120]: chan_sip.c:5901 handle_response: Peer 'calamar0.nikotel.com' is now REACHABLE!
Jun 7 23:09:25 NOTICE[1116941120]: chan_sip.c:5901 handle_response: Peer 'nikotel' is now REACHABLE!
Jun 7 23:11:20 NOTICE[1116941120]: chan_sip.c:6057 handle_response: Failed to authenticate on REGISTER to '<sip:[email protected]>;tag=as41e346af'
Jun 7 23:11:22 WARNING[1116941120]: chan_sip.c:6042 handle_response: Got 200 OK on REGISTER that isn't a register

Die 2 letzten beunruhigen mich etwas. Ich habe das Gefühl das kommt durch qualify=yes.

Was ist denn genau der UDP Keep-Alive der bei meinem NAT-Router (Cisco) die Ports aufhält ? qualify=yes ?

Ich hatte auch noch defaultexpirey=20 + tos=lowdelay gesetzt.
 
Beispiele localnet:
localnet=192.168.0.0/255.255.0.0; All RFC 1918 addresses are local networks
localnet=10.0.0.0/255.0.0.0 ; Also RFC1918
localnet=169.254.0.0/255.255.0.0 ;Zero conf local network

Mein Asterisk hat 192.168.250.225 - was muss dann hin?

localnet=192.168.250.0/255.255.255.0
-oder-
localnet=192.168.250.0
localmask=255.255.255.0

Ansonsten habe ich qualify=yes nat=yes.
 
Hast Du Asterisk 0.9.0:
Code:
localnet=192.168.250.0 
localmask=255.255.255.0
Neuere Versionen (bzw. die neueste CVS) nutzt die andere Schreibweise.
 
habe die version die mit bristuff mitkommt (-r stable_1.0 oä)
 
allesOK schrieb:
habe die version die mit bristuff mitkommt (-r stable_1.0 oä)
"v1-0_stable" nutzt folgende Schreibweise:
Code:
localnet = 192.168.250.0
localmask = 255.255.255.0

"HEAD" nutzt folgende Schreibweise:
Code:
localnet=192.168.250.0/255.255.255.0
 
ok, danke - habe das alles genau so eingetragen, aber für sipate bekomme ich nur UNREACHABLE (egal, ob ich ports auf/zumache). Und damit gehen auch keine Calls nach draussen - Cannot create channel of type 'SIP'

(und leider auch für externe sip-clients)
 
Ich kann dieses UNREACHABLE leider nicht reproduzieren :-(

Was ist das denn für eine Version von Asterisk bzw. woher kommt diese?

Hast du Asterisk selbst übersetzt?
 
;)

Die Version ist die cvs -rv1_0-stable leicht gepached so wie hier:
http://www.ip-phone-forum.de/forum/viewtopic.php?t=768

Ja, habe ich mit g++-3.3.3

Witzigerweise konnte ich gestern schon mal über Sipgate raustelefonieren, aber heute will er nicht mehr .....

Ist dein * hinter einem NAT-Router? Und hast du auf diesem Ports umgeleitet?
 
Es läuft ;-)

Und deswegen hier nochmal ein paar Details:

Client München:
X-lite hinter Eumex 704 MIT Stun KEINE offenen Ports
sip.conf: qualify=yes nat=yes

Client Sipgate:
ganz normal mit register und type=friend
sip.conf: qualify=yes nat=yes

sip show peers sagt OK (REACHABLE)

Dazu:
sip.conf auf * hinter NAT (Station Saarland):
KEINE externip und KEIN localnet / localmask ?!?!?!? Ja, es darf wirklich nicht gesetzt sein (*-Version: -v1_0-stable).
Auf dem Router sind momentan folgende UDP-Ports auf:
5060-5063, 8000-8019, 5004-5010, 10000-20000

rtpstart=10000
rppend=20000

Die Ports versuche ich in den nächsten Tagen noch einzuschränken. Ich werde euch berichten.

Bis hierhin aber vielen Dank für eure Bemühungen ;-)))
 
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.