[Gelöst] tftp server ohne freetz möglich?

disorganizer

Neuer User
Mitglied seit
14 Mai 2010
Beiträge
115
Punkte für Reaktionen
4
Punkte
18
Gibt es die Möglichkeit einen tftp server als binary auf den usb stick zu legen und diesen beim boxstart zu starten?

Wenn ja wo bekommt man das binary und wie würde man das einrichten?

Ziel ist die config files für cisco phones per tftp direct von der fritzbox bereitzustellen. Und dafür die box zu freetzen wollte ich nicht.

Fals es das schon irgendwo gibt:
Vielleicht habe ich falsch gesucht... habe aber bisher nur den hinweis auf freetz gefunden.
 
Zuletzt bearbeitet:
Klingt gut, hab ich aber nicht verstanden :)

Wenn ich das richtig sehe ist ja auf freetz der dnsmasq verantworlicht für das Ganze.
Nun müsste ich also quasi die box freetzen, den passend konfigurieren und mir das binary und die config runterholen.
Danach dann die Box wieder unfreetzen und beides an die passenden Stellen legen, richtig?

Dann würde sich mir noch die Frage stellen ob das jemand mit der passenden gefreetzen box für mich machen könnte und mir die Files zukommen lassen kann, damit ich mir das zwischenfreetzen sparen kann.
 
Zuletzt bearbeitet:
Wenn Du es unnötig umständlich machen willst, geht es vermutlich auch so.

Einfacher ist es, ein Freetz Image zu erstellen, das Programm vom Build-System zu nehmen und auf die Box zu kopieren

PS:
Ist Dir die Shift-Taste in der Zwischenzeit abhanden gekommen?
 
Da war der Shift-Fresser am Werk :)

An das "Abziehen" des Files nach dem make hatte ich bisher nicht gedacht, danke für den Hinweis.
Werde ich morgen mal probieren.
Wie würde denn das nötige Konfigfile bzw die Aufrufparameter aussehen wenn man dnsmasq dazu bringen will NUR tftp Server zu spielen und nicht auch noch dhcp und dns?

Die Frage ist ob es nicht eine einfachere Möglichkeit gibt bzw ob man nicht einen anderen "schmaleren" tftp Server verwenden könnte der auch wirklich nichts anderes macht.
 
Für die Konfiguration such mal nach "man dnsmasq".

Andere TFP-Server gibt es sicher. Ob diese kleiner, einfacher oder anderweitig besser geeignet sind, weiß ich nicht. Für normale Linux-Systeme gibt es zum Beispiel atftpd. Der scheint einiges kleiner zu sein, den müsstest Du aber selbst erstellen.
 
OK.
Da ich kompletter FREETZ-Neuling bin: Wie kann ich denn von dort das Paket für tftp-hpa ziehen und in Freetz einbauen bzw kompilieren lassen?
 
Hast Du ein Linux als Build-System und den trunk ausgecheckt? Für atftp gibt es jetzt auch ein Paket im Freetz-Unterforum. Kannst ja beide testen. ;-)

Code:
root@fritz:/var/media/ftp/uStor01/archiv# ldd ./atftp
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x2aabe000)
        libc.so.0 => /lib/libc.so.0 (0x2aadc000)
        ld-uClibc.so.0 => /lib/ld-uClibc.so.0 (0x2aaa8000)
root@fritz:/var/media/ftp/uStor01/archiv# ldd ./atftpd
        libpthread.so.0 => /lib/libpthread.so.0 (0x2aabe000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x2aae1000)
        libc.so.0 => /lib/libc.so.0 (0x2aaff000)
        ld-uClibc.so.0 => /lib/ld-uClibc.so.0 (0x2aaa8000)
 
OK. Eingelesen ins Unterforum und ich probiere das mal aus :)
Erst tftp-hpa und dann das andere wenn Ersteres nicht läuft.

Aber jetzt wo ich mich sowieso in Freetz einlesen muss könnte ich ja auch gleich umsteigen. ;-)

EDIT:
Hmm.
Habe eben nach beidem im ausgecheckten trunk gesucht, aber nichts gefunden :-(
Ich brauche wohl doch etwas mehr Erklärung.
Ich habe eine aktuelle Freetz-Vmware unter virtualbox. Dann den Checkout auf den trunk. Und dann make menuconfig => nichts ist bei den plugins zu finden.
 
Zuletzt bearbeitet:
Ich habe eine aktuelle Freetz-Vmware unter virtualbox. Dann den Checkout auf den trunk. Und dann make menuconfig => nichts ist bei den plugins zu finden.
Mit "make menuconfig" musst Du nur deine Box auswählen und speichern. Den Patch aus dem Anhang anwenden und "make tftp-hpa-precompiled" machen und die binaries sollten erzeugt werden.

EDIT:
Vor dem Kopieren der binaries auf deine Box, schau bitte nach, ob es in der busybox deiner FB, tftp gibt. Wenn ja, dann nur das binary tftpd auf die FB kopieren.
 

Anhänge

  • tftp-hpa_5_2.patch.txt
    5.6 KB · Aufrufe: 38
Zuletzt bearbeitet:
Nach herunterladen der diversen 100 Mbytes an sourcen ward das binary kompiliert.
Habe beide (tftp und tftpd... scheinen aber identisch zu sein) nach /tmp der box gelegt und mit chmod a+x ausführbar gemacht.
Dann mit
/tmp/tftpd -s /tmp -u root -l -c --ipv4
das Ganze aufrufen
=> /tmp sollte die tftp-Root sein.

So weit so gut

Nur bekomme ich keine File transferiert.
Koennte es sein das auf der box die Firewall zuschlägt?
Sehe ich das irgendwo und wie könnte ich port 69 aufmachen auf der fritzbox?
 
Zuletzt bearbeitet:
Hatte ich vergessen zu sagen: Vom LAN.
Ist da bei der Fritzbox auch eine Firewall davor?

Da es ein Test ist könnte ich den Firewall-Prozess (welcher auch immer das ist) ja einfach erstmal killen.
DSL hat die Fritte nicht (hängt als dect-voip-zu-isdn-Gateway im LAN ohne Router/Firewall Funktion).
 
Mach mal aus dem LAN ein Scan auf Port 69 der Box:
Code:
sudo nmap -sSU <IP-FritzBox> -p69
und poste die Ausgabe von:
Code:
netstat -tulen | grep 69
von deiner Box.
 
Da ich Windows fahre habe ich mit einem anderen scanner ports gescant.
23 und 80 waren offen, 69 nicht.

Auf der box:

# netstat -tulen | grep 69
udp 0 0 0.0.0.0:69 0.0.0.0:*

Auf Port 69 scheint der Server also zuzuhören.

EDIT:
Nun der Witz: Es geht jetzt.
./tftpd -s -l /tmp -u root
hat gereicht. Und man kann sogar putten, obwohl das eigentlich nicht gehen sollte.
Strange.
Zumal mit dem weiter oben geposteten Syntax der deamon nicht mehr losläuft.


Ich boote sicherheitshalber nochmal.

EDIT2:
Nach reboot... Geht es immer noch.
Warum auch immer. Wichtig ist das -l. Sonst geht es nicht.
Die Datei "tftp" ist nicht nötig, nur "tftpd" (27kb).

Ich probiere das nun über Zeit nochmal auf Stabilität... Ansonsten kann ich das ja dann über die debug.cfg automatisch aufrufen, oder?
Und bei 27kb könnte ich das denke ich sogar ins Flash legen... mal sehen.

Tnx für die Hilfe auf jeden Fall schon mal, ich halte euch über den Status auf dem laufenden.

EDIT3:
Zur Vollständigkeit:
read only access:
/tmp/tftpd -l -s /tmp -u root
read write access:
/tmp/tftpd -l -c -s /tmp -u root
 
Zuletzt bearbeitet:
Beides :) Und die Firewall war aus.
Ich vermute mit der Virtualbox und dem Tftp Client und dem vielen Parallel-Machen ist da was nicht mehr so gelaufen wie es sollte.
Und die Fritte habe ich ja auch mehrfach gebootet während der Versuche.

Jetzt scheint es aber ja stabil zu laufen.
Mal sehen wie es sich über die nächsten Tage ergibt.

Wo wäre denn der beste Platz im Flash für das binary?
# df -h
Filesystem Size Used Available Use% Mounted on
/dev/root 11.4M 11.4M 0 100% /
/dev/mtdblock5 2.6M 724.0K 1.9M 27% /data
/dev/loop0 3.9M 259.0K 3.4M 7% /var/media/ftp
unter /data scheint ja genug platz zu sein. Mich wundert nur was /var/media/ftp sein soll.


edit:
Wie war das nochmal mit der debug.cfg (lange her):
mit
echo "/tmp/tftpd -l -s /tmp -u root" > /var/flash/debug.cfg
Würde ich die erstellen (mit >> anhängen).

Was würde denn passieren wenn die dort aufgerufene Datei nicht vorhanden ist?
Bleibt dann die box stehen oder verhält sie sich wie in der shell (ignoriert das)?
 
Zuletzt bearbeitet:
Scheint stabil zu laufen.
Kann man die Box ungefreetzt dazu bringen die USB sticks nicht immer so komisch zu mounten?
Oder die gar nicht automatisch zu mounten so das man sie beim booten über mount /dev/sda1 selbst mounten kann?
 
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.