[Gelöst] Easybell,IPv6 und Asterisk?

Artabanos

Neuer User
Mitglied seit
6 Dez 2015
Beiträge
22
Punkte für Reaktionen
0
Punkte
0
Hallo,

hat hier irgendjemand gegenwärtig ein Asterisk oder FreePBX erfolgreich via IPv6 bei Easybell zum Laufen gebracht?

Das hat mal funktioniert, früher, während der IPv6-Beta-Phase bei Easybell. Doch seit etwa März diesen Jahres leider nicht mehr. Ich beschreibe das Problem absichtlich hier im Easybell-Bereich, da Asterisk grundsätzlich funktioniert, und das Problem bei SipGate über IPv6 in der Form nicht besteht.

Das Problem ist der Registrierungs-String. Im Normallfall sieht der bei Easybell bekanntlich so aus:

Code:
0049xxxxxxxxxx:[email protected]/0049xxxxxxxxxx

Da spielt Asterisk allerdings nicht mit. Ich habe es mit 6 verschiedenen Kombinationen aus Asterisk 11.15.0 bis Asterisk 13.6.0 und Debian/Fedora/Centos/Suse als Betriebssystem probiert. Auch die originale FreePBX-Komplettdistribution zeigt dasselbe Verhalten. Die Registrierung beim Provider funktioniert zwar, doch bei einem eingehenden Anruf tritt dieser Fehler auf:

Code:
[2015-12-12 17:59:29] ERROR[23503][C-00000000]: netsock2.c:269 ast_sockaddr_resolve: getaddrinfo("2001:4090:4008::124", "(null)", ...): Address family for hostname not supported
[2015-12-12 17:59:29] WARNING[23503][C-00000000]: chan_sip.c:10805 process_sdp_c: Unable to lookup RTP Audio host in c= line, 'IN IP4 2001:4090:4008::124'
[2015-12-12 17:59:29] WARNING[23503][C-00000000]: chan_sip.c:10394 process_sdp: Insufficient information in SDP (c=)...

SipGate empfiehlt:
Falls Sie eine Asterisk-basierte Lösung verwenden (z.B. auch FreePBX, Gemeinschaft, …), müssen Sie wahrscheinlich die neuen IPv6-Adressen als Peer hinzufügen, damit Ihr Asterisk keine Authentifizierung bei eingehenden Anrufen verlangt.

Easybell schreibt in etwa gleichlautend:
Hinweis für IPv6 Kunden: Wahrscheinlich müssen Sie die IPv6 Adresse als Peer hinzufügen. Damit sollte der Asterisk bei eingehenden Gesprächen auf die Authentifizierung verzichten.

Während das bei SipGate tatsächlich funktioniert, führt ein Registrierungs-String in der Form:

Code:
0049xxxxxxxxxx:PASSWORD@[2001:4090:4008::124]/0049xxxxxxxxxx
bei Easybell stets zu folgender Fehlermeldung:

Code:
Forbidden - wrong password on authentication for REGISTER for '0049xxxxxxxxxx' to '[2001:4090:4008::124]'

Hat irgendjemand eine Idee? - Ich wäre für jeden Hinweis dankbar.
 
Zuletzt bearbeitet:
Der Fehler wird wohl eher hier liegen:
Code:
Unable to lookup RTP Audio host in c= line, 'IN IP4 2001:4090:4008::124'

Wenn da ne IPv6-Adresse im "c" steht muss die auch mit "IP6" gekennzeichnet werden. Also ein Fehler beim Anbieter und nicht an deinen Einstellungen.
 
Zuletzt bearbeitet:
Der Fehler wird wohl eher hier liegen:


Wenn da ne IPv6-Adresse im "c" steht muss die auch mit "IP6" gekennzeichnet werden. Also ein Fehler beim Anbieter und nicht an deinen Einstellungen.

Danke für die Bestätigung. Zu dem Zeitpunkt, als ich diesen Beitrag erstellt habe, hatte ich noch keinen SIP-Debug gemacht. Tatsächlich steht diese Zeile: "c=IN IP 4 2001:4090:4008::124" in der Form schon in der INVITE-Message, kommt also ganz klar so fehlerhaft bereits von Easybell.
Es stellt sich nun die Frage, wieso sind andere nicht davon betroffen? Ich bin doch sicher nicht der einzige Nutzer, der Easybell via IPv6 benutzt. Und das Problem ist ja nicht neu, es besteht bereits seit Ende März. Da das so unwahrscheinlich ist, bin ich davon ausgegangen, daß der Fehler auf meiner Seite zu suchen sei. Dem scheint offensichtlich nicht so zu sein.

Inzwischen habe ich den Support angeschrieben, wurde bereits um ein SIP-Trace gebeten, und das Problem wurde weitergeleitet. Bin gespannt was dabei herauskommt.
 
weil andere evtl. IPv6 nicht korrekt konfiguriert haben und nur die Signalisierung aber nicht das eigentliche Gespräch über IPv6 leiten würde ich jetzt mal vermuten.
 
Das klingt plausibel. Allerdings ändert sich an dem Fehlverhalten rein gar nichts, selbst wenn ich diesen Weg mit directmedia=yes bzw. directrtpsetup=yes explizit freigebe.
 
Das eigentliche Problem - die Angabe von "IP4" im SDP-Protokoll - kann auch nur der Provider fixen.
Asterisk erkennt halt aufgrund des "ip4" dass da ne IPv4-Adresse folgt, erkennt dann, dass 2001:4090:4008::124 eben keine IPv4-Adresse ist, und versucht dann, den hostname "2001:4090:4008::124" aufzulösen, was natürlich nicht klappt, weil das kein gültiger Hostname ist.
 
Ich schrieb ja bereits, daß mich der Easybell-Support um entsprechende SIP-Traces bat. Vor einigen Tagen nun erhielt ich die Information, daß sich die Techniker das Problem anschauen und einen Fix einspielen würden.
Und tatsächlich, seit gestern funktioniert Asterisk via IPv6 wieder einwandfrei im Zusammenspiel mit Easybell.
 
Ich habe demnächst auch das zweifelhafte Vergnügen mich mit der Thematik intensiver zu beschäftigen, glücklicher Weise erst mal nicht an meinem Anschluss. :)
Daher vorerst rein interessehalber:
Welchen host verwendest du im Easybell Context? Bekommst du auch ein fehlerhaftes INVITE wenn du dort, wie im register, host = ipv6.sip.easybell.de verwendest?
Hast du im [general] mal bindaddr=:: als Wildcard versucht?

VG R.
 
Wie gesagt, das Problem wurde ja nun seitens Easybell gelöst. Vorher war es egal, was ich als Host eigetragen habe, ein Invite scheiterte immer. Im Moment habe ich ipv6.sip.easybell.de eingetragen und es funktioniert. Da Easybell nur einen Server, bzw. nur eine IP-Adresse verwendet geht das ja. Bei Sipgate hingegen musste ich 4 Trunks anlegen, jeweils mit host=[2001:ab7::1] bis host=[2001:ab7::4].

bindaddr=:: ist natürlich Pflicht, da sonst Asterisk gar nicht erst auf IPv6 hört.
 
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.