[Problem] Fehler im Paket Siproxd auf 7270v3 mit 74.04.88 und Freetz 1.2

Christoph_F

Neuer User
Mitglied seit
5 Dez 2006
Beiträge
80
Punkte für Reaktionen
1
Punkte
8
Hallo,

im Paket Siproxd scheinen folgende Fehler zu sein:

1) Start nur per Telnet möglich, erscheint nicht unter den Diensten in der Weboberfläche, die Auswahl "automatisch" bewirkt nichts.

Viel schlimmer ist aber:

2) Es scheint, als würde Siproxd extern als SIP-Ziel-Port fest eingebaut 5065/UDP verwenden.

Ich habe ein "N810" mit "Maemo" ("Diablo", "OS2008"), dessen eingebaute SIP-Applikation offenbar das "Bogous-Via"-Problem hat. Das wollte ich mit dem "Siproxd" lösen, geht aber nicht. Ich habe alles mögliche getestet, auch recht großzügig Portbereiche zum "Siproxd" von außen umgeleitet und dann mit "Tcpdump" auf der Box selber folgendes herausgefunden:

"Siproxd" leitet eine Anfrage des "N810" weiter an "Ekiga.net:5065", die lauschen aber auf "5060/UDP", ich erhalte deswegen "ICMP-port-unreachable" zurück.

Ich habe den Proxy testweise auf "25060" laufen lassen, das hilft nicht, es wird ans Ziel immer auf "5065" weitergeleitet. Was man in der Konfiguration als Port angibt, beeinflußt nur, worauf der Proxa lokal lauscht.
 
Zuletzt bearbeitet:
Moin.

1.) Bleibt der Bullet denn auf automatisch stehen oder springt er zurück auf manuell, wenn du neu startest?

2.) Wir Patch in siproxd den default Port von 5060 auf 5065, dass er nicht mit den AVM SIP Daemons kollidiert. Das sollte eigentlich nur den listen port auf der Box ändern.
Code:
--- src/siproxd.h
+++ src/siproxd.h
@@ -271,14 +271,14 @@
 /*
  * some constant definitions
  */
-#define SIP_PORT	5060	/* default port to listen */
+#define SIP_PORT	5065	/* default port to listen */
 #define DEFAULT_MAXFWD	70	/* default Max-Forward count */
 #define DEFAULT_EXPIRES	3600	/* default Expires timeout */
Gruß
Oliver
 
1.) Bleibt der Bullet denn auf automatisch stehen oder springt er zurück auf manuell, wenn du neu startest?

Das bleibt so stehen, wie ich es einstelle, bewirkt aber nichts. In der Dienstliste erscheint auch keine Eintragung zum manuellen Starten oder Beenden. "/etc/init.d/rc.siproxd start" funktioniert.

2.) Wir Patch in siproxd den default Port von 5060 auf 5065, dass er nicht mit den AVM SIP Daemons kollidiert. Das sollte eigentlich nur den listen port auf der Box ändern.
Code:
--- src/siproxd.h
+++ src/siproxd.h
[...]
-#define SIP_PORT	5060	/* default port to listen */
+#define SIP_PORT	5065	/* default port to listen */

Der Name "SIP_PORT" läßt mich anders als der Kommentar dahinter vermuten, daß es sich nicht nur um den Port zum Lauschen handelt. Habt Ihr das nie nach der Änderung nochmal getestet? Ekiga dürfte nicht der einzige Anbieter sein, der nicht auf "5065" hört.

Darüber hinaus ist das unnötig; denn Ihr liefert ja schon eine Konfigurationsdatei mit dieser Anpassung mit. Wer die Port-Einstellung dort ganz löscht, ohne das AVM-SIP zuvor lahmzulegen, ist selber schuld und wer das "zurückändert", übergeht diesen Patch für "LISTEN" sowieso.

Davon abgesehen ist es meiner Ansicht nach - obwohl allgemein üblich - eine Unsitte einfach irgendwelche Portnummern zweckzuentfremden. Dafür gedacht sind eigentlich die Nummern von 49152 bis 65535, wohin die aktuell übliche Praxis führt, sieht man an den orangen Eintragungen in dieser sehr unvollständigen Liste der standardisirten Ports bei Wikipedia. Die gelben Eintragungen sind alles gute Kandidaten, um mal orange zu werden und gerade im Bereich der freien Software sollten wir es nicht kritiklos den Kommerz-Entwicklern gleichtun. Sinngemäß gilt das dann auf Freetz bezogen auch für die zahlreichen Erweiterungen des Webinterfaces, da einfach nach 80 weiterzuzählen, finde ich persönlich fragwürdig.

Mein Vorschlag wäre daher:

1) Den Patch rückgängig machen, das sollte das beobachtete Problem beheben.
2) Eine Konfigurationsdatei mit einem Ausweich-Port im "Privatbereich" mitliefern, leicht zu merken wären da zum Beispiel "45060" oder "55060" oder "65060".
3) Eine Kommentarzeile in diese Datei einfügen, die die Kollision erläutert, damit das niemand zurückändert, gegebenenfalls auch erwähnen, daß man einen anderen freien Port wählen kann, wenn es lokal mit der Voreinstellung Probleme geben sollte.

Das "Maemo-Programm", die Ursache meines konkreten Problems, die mich überhaupt erst zu dem Proxy gebracht hat, hat da auch noch einen speziellen Fehler: es läßt als höchste Portnummer "32767" zu - irgendsoein "Signed-Short"-Mist womöglich oder es war ein Unwissender am Werk.

Eine weitere Sache hatte ich zu erwähnen vergessen: die Erweiterungen scheinen nicht alle geladen zu werden, zumindest machen nicht alle die erwartete Log-Meldung. Wenn man eine angibt, die nicht geht, werden allem Anschein nach danach auch keine weiteren mehr geladen. Da müßte ich aber auch noch mehr herumprobieren, aber erstmal muß das Ziel-Port-Problem erfolgreich beseitigt werden sonst hat das wenig Zweck.

Viele Grüße, Christoph
 
Hallo,

das ging jetzt aber schnell, danke schonmal. Eine Frage noch dazu: erscheint das automatisch im aktuellen Freetz 1.2 oder muß ich den Trunk verwenden, um das auszuprobieren? Wenn ja, wie geht das, ohne die aktuellen Einstellungen meiner Bau-Umgebung zu verlieren (Debian Squeeze in "/usr/local/src", keine virtuelle Maschineoder dergleichen)?
 
Du kannst dir von hier unten auf der Seite das Changeset als unified diff runterladen und mit patch -p2 einspielen:
Code:
oliver@ubuntu:~/fritzbox/freetz/freetz-stable-1.2$ wget "http://freetz.org/changeset/7562?format=diff&new=7562"
--2011-08-31 07:09:17--  http://freetz.org/changeset/7562?format=diff&new=7562
Auflösen des Hostnamen freetz.org... 85.214.209.234
Verbindungsaufbau zu freetz.org|85.214.209.234|:80... verbunden.
HTTP-Anforderung gesendet, warte auf Antwort... 200 OK
Länge: 4506 (4,4K) [text/x-patch]
In »7562?format=diff&new=7562« speichern.

100%[=================================================>] 4.506       22,3K/s   in 0,2s

2011-08-31 07:09:18 (22,3 KB/s) - »7562?format=diff&new=7562« gespeichert [4506/4506]
oliver@ubuntu:~/fritzbox/freetz/freetz-stable-1.2$ patch -p2 < "7562?format=diff&new=7562" 
(Stripping trailing CRs from patch.)
patching file make/siproxd/files/root/etc/default.siproxd/siproxd_conf
(Stripping trailing CRs from patch.)
patching file make/siproxd/patches/025-reduce_buffer_sizes.patch
(Stripping trailing CRs from patch.)
patching file make/siproxd/patches/020-plugin_dir_trailing_slash.patch
(Stripping trailing CRs from patch.)
patching file make/siproxd/patches/025-defaults__reduce_buffer_sizes.patch
oliver@ubuntu:~/fritzbox/freetz/freetz-stable-1.2$
Gruß
Oliver
 
Danke, das klingt ja einfach, das werde ich also demnächst mal testen.
 
Besten Dank, das läuft jetzt zu meiner Zufriedenheit, der Port wird tatsächlich nicht nur zum Lauschen genutzt, sondern auch ausgehend. Was mit dem Patch natürlich noch nicht geht, ist der automatische Start und das Erscheinen auf der Dienste-Seite von Freetz.

Ich gehe davon aus, daß ich jetzt bis auf weiteres nicht mehr vergessen darf, den Patch nach jedem "svn update" erneut anzuwenden, solange ich 1.2 verwende?
 
Du gehst falsch aus, svn update wird die vom Patch geänderten Dateien nicht verändern, solange nicht im svn genau diese Dateien geändert wurden. Falls das geschehen sollte, wird es vermutlich einen Konflikt geben. Wenn Du Glück hast, bedeutet das, dass die Änderungen im SVN aufgenommen wurden. In dem Fall kannst Du einfach die Dateien löschen und nochmal svn update ausführen.
 
Hallo,

Der Patch sollte eigentlich nicht mehr nötig sein!?

ist er anscheinend auch bereits nicht mehr, ich hatte bisher den Stand 7570:

Code:
/usr/local/src/freetz/freetz-1.2-previev$ svn up
[…]
G    make/siproxd/files/root/etc/default.siproxd/siproxd_conf
   C make/siproxd/patches/025-defaults__reduce_buffer_sizes.patch
svn: Datei »make/siproxd/patches/025-reduce_buffer_sizes.patch« konnte nicht hinzugefügt werden: eine nicht versionierte Datei mit demselben Namen existiert bereits

Es ist also nun in der 1.2 mit drin.
 

Zurzeit aktive Besucher

Statistik des Forums

Themen
246,219
Beiträge
2,248,328
Mitglieder
373,792
Neuestes Mitglied
gilbertsamson563
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.