SIP register nutzt falsche IP

crashedworld

Neuer User
Mitglied seit
6 Dez 2004
Beiträge
11
Punkte für Reaktionen
0
Punkte
0
Hallo!

Ich habe ein Problem mit der SIP configurierung von Asterisk.

Hier meine sip.conf:
Code:
[general]
nat=yes
srvlookup=yes
externip=xx.xx.xx.xx

register => MeinUser:[email protected]/1000

[sipgate]
nat=yes
externip=xx.xx.xx.xx
type=friend
username=MeinUser
secret=MeinPass
fromuser=MeinUser
fromdomain=sipgate.de
host=sipgate.de
canretrieve=no
context=incomingsipgate

Die Values für externip stimmen, definitiv.
Die Benutzerdaten ebenfalls.

Trotzdem nimmt Asterisk bei registrieren immer die IP des Rechners im lokalen Netzwerk und nicht die, mit der der Server von aussen zu erreichen ist. was mache ich falsch? Kann mir irgendjemand helfen (BITTE!!).

Wenn ich asterisk mit sip debug laufen lasse bekomme ich immer folgende Meldungen:
Code:
Retransmitting #3 (no NAT):
REGISTER sip:sipgate.de SIP/2.0
Via: SIP/2.0/UDP <interneip>:5060;branch=z9hG4bK397af684
From: <sip:<MeinUser>@sipgate.de>;tag=as4d717cef
To: <sip:<MeinUser>@sipgate.de>
Call-ID: [email protected]
CSeq: 104 REGISTER
User-Agent: Asterisk PBX
Expires: 120
Contact: <sip:<MeinUser, ohne 555 davor>@10.0.0.5>
Event: registration
Content-Length: 0

und
Code:
Maximum retries exceeded on call [email protected] for seqno 102 (Critical Request)

Warum sagen meine sip debug Meldungen, dass kein NAT beutzt wird, obwohl ich explizit angegeben habe, dass NAT benutzt werden soll.

Zudem habe ich noch eine allgemein Fragen:
beim registrieren einer SIP-Connection, muss ich da 800 vor die Benutzernummer von sipgate stellen? Teilweise sehe ich das in Foren, teilweise aber auch nicht.

thx
 
http://www.ip-phone-forum.de/spip/a...p-info.org/wiki-Asterisk+config+sip.conf]hier.
 
Global nat=yes
Im Peer nat=no

externIP wird auch nur global definiert.

Es heisst canreinvite, nicht canretrieve
Type ist peer

Code:
[sipgate]
nat=no
type=peer
username=MeinUser
secret=MeinPass
fromuser=MeinUser
fromdomain=sipgate.de
host=sipgate.de
canreinvite=no
context=incomingsipgate

Im register sollte der Kontakt auf die Sipgatenummer zeigen:

register => MeinUser:[email protected]/MeinUser

In der extension.conf muss dann ein entsprechender Eintrag unter dem context incomingsipgate stehen.

jo
 
Danke für eure tipps. Leider funktioniert es immernoch nicht: Es ist mir nicht möglich keinen Sipgate account bei asterisk zu registrieren. Jedoch funktioniert es jetzt zumindest mit der externen IP.

Sorry, wenn meine Fragen dumm erscheinen. Bin leider ein absoluter newbie, was asterisk angeht.

Ich brauche noch ein bisschen hilfe. Wer Geduld hat mir zu antworten, würde mich sehr freuen
Hier ist der output von sip debug:

Code:
 to 217.10.79.9:5060
Retransmitting #5 (no NAT):
REGISTER sip:sipgate.de SIP/2.0
Via: SIP/2.0/UDP 81.90.xx.xx:5060;branch=z9hG4bK7d258079
From: <sip:[email protected]>;tag=as692fbaff
To: <sip:[email protected]>
Call-ID: [email protected]
CSeq: 106 REGISTER
User-Agent: Asterisk PBX
Expires: 120
Contact: <sip:[email protected]>
Event: registration
Content-Length: 0


 to 217.10.79.9:5060
Maximum retries exceeded on call [email protected] for seqno 106 (Critical Request)
Destroying call '[email protected]'


Hier meine sip.conf:
Code:
[general]
nat=yes
srvlookup=yes
externip=81.90.xx.xx
localnet=10.0.0.5/255.0.0.0

register => 55597xx:[email protected]/55597xx

[sipgate]
type=peer
username=55597xx
secret=Passwort
fromuser=55597xx
fromdomain=sipgate.de
host=sipgate.de
canreinvite=no
context=incomingsipgate


Ich habe mir die Anleitung, die Hupe gepostet hat mal angeschaut. Leider komme ich trotzdem nicht weiter.
Kann mir jemand sagen, wie ich das Dial-Command von der CLI aus handhaben muss um mal einen SIP test-call rauszuschicken?
thx
 
Also ich habe unter [general] nat=yes und bei allen Providern nat=yes, da diese ja nur über den Router/gateway erreichbar sind. Lediglich meine lokalen sip-Geräte sind natürlich, da im gleichen Netz, per nat=no eingebunden.

Außerdem sind die Anbieter bei mir nicht mit type=peer sondern mit type=friend definiert (gibt's da überhaupt einen Unterschied?)

sip.conf:
Code:
general]
port=5060
bindaddr=0.0.0.0
externip=netview.info ; fix ip
localnet=10.0.0.0/255.255.255.224
srvlookup=yes
context=default
disallow=all
allow=ulaw
allow=alaw
allow=gsm
;allow=ilbc
;allow=g729

register => 8115451:[email protected]/8115451
canreinvite=no
tos=0x18
insecure=very
nat=yes
dtmfmode=info
maxexpirey=3600		
defaultexpirey=3600


[sipgate]
type=friend
username=8115451
secret=passw
host=sipgate.de
fromuser=8115451
fromdomain=sipgate.net
context=default
canreinvite=no
qualify=no
disallow=all
allow=ulaw
allow=alaw
allow=gsm
;allow=ilbc
;allow=g729
insecure=very
nat=yes
dtmfmode=info
tos=0x18

extensions.conf:
Code:
[inbound] 

; Anruf von SIP (37 abgehende MSN - 40 gerufene MSN)
 
exten => 8115451,1,Dial(Capi/@37:40,60)

edit otaku42: Bitte an die code-Tags denken.
 
Das ist so. Wenn Dein Asterisk nicht Public IP hat, nimmt Asterisk immer die falsche (z.B hinter NAT)
externip scheint nur für RTP zuständig zu sein.
Zumindest bei Sipgate und Nikotel geht das mit interner NAT IP, GMX mags nicht.
 
Ich komme keinen cm weiter. Jetzt mal ganz elementar:
Welche Ports müssen frei, bzw durchgeleitet werden (das ding sitzt hinter ner Firewall).
Standard-Port ist der 5060. Werden noch andere Ports benoetigt?
 
Ja - die in der rtp.conf: 10000-20000 (default alles udp)
 
Netview schrieb:
Also ich habe unter [general] nat=yes und bei allen Providern nat=yes, da diese ja nur über den Router/gateway erreichbar sind. Lediglich meine lokalen sip-Geräte sind natürlich, da im gleichen Netz, per nat=no eingebunden.

Außerdem sind die Anbieter bei mir nicht mit type=peer sondern mit type=friend definiert (gibt's da überhaupt einen Unterschied?)

Lies mal ein wenig bei voip-info.org. Da ist alles erklärt

jo
 
Es läuft immernoch nicht. Kann mir jemand den folgendne Output von tcpdump auswerten und ob eventuell irgendwelche Signale von der Firewall geschluckt werden? Bin wirklich für alles an Hilfe dankbar! (*leichtverzweifelt*)
Code:
13:36:39.876875 IP 10.0.0.5.32779 > sbs.nxxxi.local.domain:  58154+ PTR? 109.60.103.134.in-addr.arpa. (45)
13:36:39.877114 IP sbs.nxxxi.local.domain > 10.0.0.5.32779:  58154 1/0/0 (84)
13:36:39.877912 IP 10.0.0.5.32779 > sbs.nxxxi.local.domain:  58945+ PTR? 5.0.0.10.in-addr.arpa. (39)
13:36:39.878076 IP sbs.nxxxi.local.domain > 10.0.0.5.32779:  58945 NXDomain* 0/1/0 (120)
13:36:39.878955 IP 10.0.0.5.32779 > sbs.nxxxi.local.domain:  62535+ PTR? 1.0.0.10.in-addr.arpa. (39)
13:36:39.879096 IP sbs.nxxxi.local.domain > 10.0.0.5.32779:  62535* 1/0/0 PTR[|domain]
13:36:39.965551 802.1d config 0000.00:09:5b:a3:ec:16.8002 root 0000.00:09:5b:a3:ec:16 pathcost 0 age 0 max 6 hello 2 fdelay 4
13:36:42.218233 802.1d config 0000.00:09:5b:a3:ec:16.8002 root 0000.00:09:5b:a3:ec:16 pathcost 0 age 0 max 6 hello 2 fdelay 4
13:36:43.303669 IP 10.0.0.5.32779 > sbs.nxxxi.local.domain:  13404+ A? sipgate.de. (28)
13:36:43.303906 IP sbs.nxxxi.local.domain > 10.0.0.5.32779:  13404 1/0/0 A sipgate.de (44)
13:36:43.304554 IP 10.0.0.5.32780 > sbs.nxxxi.local.domain:  65530+ PTR? 9.79.10.217.in-addr.arpa. (42)
13:36:43.304724 IP sbs.nxxxi.local.domain > 10.0.0.5.32780:  65530 1/0/0 PTR[|domain]
13:36:43.314091 IP 10.0.0.5.32780 > sbs.nxxxi.local.domain:  29189+ SRV? _sip._udp.sipgate.de. (38)
13:36:43.314272 IP sbs.nxxxi.local.domain > 10.0.0.5.32780:  29189 1/0/1 SRV[|domain]
13:36:43.314962 IP 10.0.0.5.32780 > sbs.nxxxi.local.domain:  46783+ A? proxy.de.sipgate.net. (38)
13:36:43.315107 IP sbs.nxxxi.local.domain > 10.0.0.5.32780:  46783 1/0/0 A sipgate.de (54)
13:36:43.318049 IP 10.0.0.5.5060 > sipgate.de.5060: UDP, length 359
13:36:44.318977 IP 10.0.0.5.5060 > sipgate.de.5060: UDP, length 359
13:36:44.470998 802.1d config 0000.00:09:5b:a3:ec:16.8002 root 0000.00:09:5b:a3:ec:16 pathcost 0 age 0 max 6 hello 2 fdelay 4
13:36:45.318822 IP 10.0.0.5.5060 > sipgate.de.5060: UDP, length 359
13:36:46.319647 IP 10.0.0.5.5060 > sipgate.de.5060: UDP, length 359
13:36:46.723664 802.1d config 0000.00:09:5b:a3:ec:16.8002 root 0000.00:09:5b:a3:ec:16 pathcost 0 age 0 max 6 hello 2 fdelay 4
13:36:47.319505 IP 10.0.0.5.5060 > sipgate.de.5060: UDP, length 359
13:36:48.319348 IP 10.0.0.5.5060 > sipgate.de.5060: UDP, length 359
13:36:48.976408 802.1d config 0000.00:09:5b:a3:ec:16.8002 root 0000.00:09:5b:a3:ec:16 pathcost 0 age 0 max 6 hello 2 fdelay 4
13:36:51.229086 802.1d config 0000.00:09:5b:a3:ec:16.8002 root 0000.00:09:5b:a3:ec:16 pathcost 0 age 0 max 6 hello 2 fdelay 4
13:36:53.481835 802.1d config 0000.00:09:5b:a3:ec:16.8002 root 0000.00:09:5b:a3:ec:16 pathcost 0 age 0 max 6 hello 2 fdelay 4
13:36:55.734534 802.1d config 0000.00:09:5b:a3:ec:16.8002 root 0000.00:09:5b:a3:ec:16 pathcost 0 age 0 max 6 hello 2 fdelay 4
13:36:57.987259 802.1d config 0000.00:09:5b:a3:ec:16.8002 root 0000.00:09:5b:a3:ec:16 pathcost 0 age 0 max 6 hello 2 fdelay 4
13:37:00.239936 802.1d config 0000.00:09:5b:a3:ec:16.8002 root 0000.00:09:5b:a3:ec:16 pathcost 0 age 0 max 6 hello 2 fdelay 4
13:37:02.492684 802.1d config 0000.00:09:5b:a3:ec:16.8002 root 0000.00:09:5b:a3:ec:16 pathcost 0 age 0 max 6 hello 2 fdelay 4
13:37:03.319313 IP 10.0.0.5.32780 > sbs.nxxxi.local.domain:  26152+ SRV? _sip._udp.sipgate.de. (38)
13:37:03.319654 IP sbs.nxxxi.local.domain > 10.0.0.5.32780:  26152 1/0/1 SRV[|domain]
13:37:03.320997 IP 10.0.0.5.32780 > sbs.nxxxi.local.domain:  22584+ A? proxy.de.sipgate.net. (38)
13:37:03.321160 IP sbs.nxxxi.local.domain > 10.0.0.5.32780:  22584 1/0/0 A sipgate.de (54)
13:37:03.324188 IP 10.0.0.5.5060 > sipgate.de.5060: UDP, length 359
13:37:04.324917 IP 10.0.0.5.5060 > sipgate.de.5060: UDP, length 359
13:37:04.745368 802.1d config 0000.00:09:5b:a3:ec:16.8002 root 0000.00:09:5b:a3:ec:16 pathcost 0 age 0 max 6 hello 2 fdelay 4
13:37:05.325771 IP 10.0.0.5.5060 > sipgate.de.5060: UDP, length 359
13:37:06.325612 IP 10.0.0.5.5060 > sipgate.de.5060: UDP, length 359
13:37:06.998128 802.1d config 0000.00:09:5b:a3:ec:16.8002 root 0000.00:09:5b:a3:ec:16 pathcost 0 age 0 max 6 hello 2 fdelay 4
13:37:07.325463 IP 10.0.0.5.5060 > sipgate.de.5060: UDP, length 359
13:37:08.325301 IP 10.0.0.5.5060 > sipgate.de.5060: UDP, length 359
13:37:09.250793 802.1d config 0000.00:09:5b:a3:ec:16.8002 root 0000.00:09:5b:a3:ec:16 pathcost 0 age 0 max 6 hello 2 fdelay 4
13:37:11.503535 802.1d config 0000.00:09:5b:a3:ec:16.8002 root 0000.00:09:5b:a3:ec:16 pathcost 0 age 0 max 6 hello 2 fdelay 4
13:37:13.756221 802.1d config 0000.00:09:5b:a3:ec:16.8002 root 0000.00:09:5b:a3:ec:16 pathcost 0 age 0 max 6 hello 2 fdelay 4
13:37:16.008963 802.1d config 0000.00:09:5b:a3:ec:16.8002 root 0000.00:09:5b:a3:ec:16 pathcost 0 age 0 max 6 hello 2 fdelay 4
 
rollo schrieb:
Netview schrieb:
Also ich habe unter [general] nat=yes und bei allen Providern nat=yes, da diese ja nur über den Router/gateway erreichbar sind. Lediglich meine lokalen sip-Geräte sind natürlich, da im gleichen Netz, per nat=no eingebunden.

Außerdem sind die Anbieter bei mir nicht mit type=peer sondern mit type=friend definiert (gibt's da überhaupt einen Unterschied?)

Lies mal ein wenig bei voip-info.org. Da ist alles erklärt

jo

Tx!

peer: A SIP entity to which Asterisk sends calls (a SIP provider for example). If you want a user (extension) to have multiple phones, define an extension that calls two SIP peers. The peer authenticates at registration.
user: A SIP entity which places calls through Asterisk (A phone which can place calls only). Users authenticate to reach services with their context.
friend: An entity which is both a user and a peer. This make sense for most desk handsets and other devices.
 
Unter [general] nicht den localnet Eintrag vergessen, wie im Beispiel von Netview auch vorhanden.

z.B.

localnet=192.168.0.0/255.255.255.0

Es könnte hier noch ein Problem in folgenden Dateien vorliegen:

/etc/network/interfaces

Beispiel-Konfiguration bei IP 192.168.0.14 des Asterisk Rechners und Gateway (Router) IP 192.168.0.1:

Code:
auto lo eth0

iface eth0 inet static
address 192.168.0.14
gateway 192.168.0.1
netmask 255.255.255.0

iface lo inet loopback



in resolv.conf darauf achten nameserver eingetragen zu haben, z.B. von T-Online:

/etc/resolv.conf
Code:
nameserver  217.237.150.225
nameserver  217.237.150.141

/etc/hosts
Code:
127.0.0.1 localhost Asterisk
192.168.0.14 Asterisk

..ip6 Einträge


Ansonsten sieht es bei mir analog zu Netviews .conf files aus. Unbedingt UDP port 5060 sowie 10000-20000 (siehe Einstellung port range in rtp.conf) per portforwarding auf die IP des Asterisk Servers weiterleiten.

Gruß,
Tin
 
Hi!

Ich hab jetzt rausgefunden, dass die Ports blockiert waren.
Mein Problem ist jetzt im Moment nur noch folgendes:
wenn ich per sipsak (von einem Rechner nicht hinter NAT) ein OPTIONS request an sipgate schicke wird nicht der Port 5060 benutzt. es sind immer so 1040..1050
Ist das normal? und wenn ich auf dem Port 5060 ein request mache wird es ignoriert. Warum?
Sind diese Ports auch freizuschalten? Und warum nimmt der (erfolgreich) 1040...1050
 
Kann es sein dass Du den Quellport meinst? Der ist natürlich variabel. Zielport ist per default 5060.

jo
 
ist es möglich den Quellport fest auf 5060 zu definieren? Ich sollte ja ungefähr wissen, von welchem Port aus gearbeitet wird um sinnvoll die Firewall zu konfigurieren.
Wenn der Quellport variabel sein muss, in welchem Spektrum sollten bewegen sich die Portnummern?
 
das nicht wirklich, aber alles was incoming ist sollte schon gefiltert werden. Zudem hängt der Rechner hinter nat. Demzufolge sollte ich schon wissen, was wohin geht, oder?
Zudem sind leider Windows-Rechner in dem Netzwerk... Was die treiben weiß man ja nie so genau... Also besser alles zu, was nicht gebraucht wird...

Sind die ports, die ich in rtp.conf konfiguriere die, die dann auch für die SIP request verwendet werden? Oder ist die portrange, eine andere?
 
Nein - das sind die rtp (media-) ports über die nachher die Sprachpakete laufen!

Der sip-port in der sip.conf ist quasi der "Control-port".

Alle diese udp-ports sind quasi 'incoming' an den * zu forwarden!
 
Hi!

Vielen Dank für alle eure Tipps!
Das Problem war einfach nur: SIPGATE. Web.de funktioniert. Leider verstehe ich nicht warum sipgate nicht funktioniert... aber egal..

thx @ all
 

Statistik des Forums

Themen
244,695
Beiträge
2,216,692
Mitglieder
371,315
Neuestes Mitglied
jack-mack
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.