This page is not fully translated, yet. Please help completing the translation.
(remove this paragraph once the translation is finished)
Coğu cihazda, sağlayıcı firmaca tedarik edilen önyükleyici asıl bellenimden ayrılmış bir bölüntüdür. Başarısız bir çakma süreci durumunda veya yanlış yapılandırma durumunda, cihaz'ın önyükleyicisi genellikle dokunulmamış ve tamamen çalışırdır. Eğer önyükleyicini bir yapısal “TFTP kurtarma modu” varsa, bozuk bir bellenim bölüntüsünün kontrolünü, kurtarma çakım sürecine (ve yapılandırmanızı da cihaz varsayılanına sıfırlamaya) izin vererek tekrar kazanmak için etkinleştirilir.
Birçok yönlendirici için kurtarma bilgisayarınızda bir TFTP sunucusu başlatmayla işler. Bu durumda bozuk bellenimli cihaz TFTP kurtarma modunda başlatılmış olmalıdır. Takiben bazı cihazlar, şebekece-sağlanan bellenim dosyasını TFTP şebeke protokolü üzerinden OpenWrt'ye çeker ve başarılı bir acil çakım süreciyle umutla toparlanır.
Bazı cihazlar kendiliğinden çekme işlevine sahip olmazlar ve bellenimi TFTP'den edinmek ve bellenim yüklemek için kurtarma modunda kullanıcının TFTP kopyalama komutlarına gereksinirler.
NOT: Diğer bazı yönlendiriciler, örneğin birçok Netgear yönlendirici, üzerlerinde TFTP sunucuya sahiplerdir ve kişisel kompüterin TFTP istemcisi olarak davranması gerekir. “TFTP kurtarma modu” bunu ifade ediyor da olabilir, öyleyse yönlendiricinizin hangi yöntemi destekleyebileceğini bulmak için, yönlendiriciniz hakkında bilgiye dikkatlice bakın.
Aşağıdaki yazı temelde, “yönlendiricide TFTP istemci” olan kurtarma öğütler.
Ethernet üzerinden tftp kurtarma her yönlendirici modelince desteklenmez. TFTP kurtarma cihazınızda bulunan veya bulunmayan, cihaz- ve üretici-özgül önyükleyici temellidir. Sizin cihazınızın TFTP kurtarma destekleyen bir önyükleyiciye sahip olup olmadığını bulmak için, sizin belirli modeliniz için OpenWrt cihaz sayfasını kontrol edin. Eğer cihazınız destekliyorsa, OpenWrt bellenimi cihazınıza cakıldıktan sonra bu kurtarma işlevi cihaz önyükleyicisinde hala bulunuyor olacak.
Not:
Takip eden prosedür sadece TFTP kurtarma/yükleme hazırlık süreci için nasıl Ethernet üzerinden TFTP sunucu kurulduğunu tanımlar, cihaz-özgül çakma kurtarma/yükleme sürecini tanımlamaz. Asıl çakma süreci için tedarikçinin sağladığı dokümantasyona, İnternete, OpenWrt Forumuna veya OpenWrt cihaz sayfalarına başvurmalısınız.
macOS provides a native tftpd server that runs the command line. However, it is not verified to work on recent versions (10.15). dnsmasq can be used instead. There are also GUI applications that are available for those that prefer them.
Dnsmasq can be installed easily via Homebrew and has the advantage of being able to offer a DHCP server if necessary. Launch it with
$ sudo /usr/local/opt/dnsmasq/sbin/dnsmasq -i enX -p 0 -z --enable-tftp --tftp-root /tmp
Replace enX with the interface identifier of your ethernet adapter (use ifconfig to find it out) and /tmp to the directory containing the image you want to serve. Don't forget to kill the process (e.g. using the Activity Monitor) before you want to start a new instance of dnsmasq.
For recent versions of macOS, the system-supplied tftpd is managed with launchctl. Users should be comfortable with command-line usage and sudo to take this approach. As confirmed on macOS Sierra 10.12.6 and macOS Mojave 10.14.2, the general steps involved are
tftpd$ sudo cp path/to/file/to/serve.bin /private/tftpboot/the_name_the_device_is_looking_for.bin $ sudo launchctl load -F /System/Library/LaunchDaemons/tftp.plist
tfptd is running by looking for the UDP listener on port 69$ netstat -an | fgrep \*.69 udp4 0 0 *.69 *.*
tftpd, shut it down with$ sudo launchctl unload -F /System/Library/LaunchDaemons/tftp.plist
As an example of a GUI-driven TFTP server, TFTPServer.app from http://ww2.unime.it/flr/tftpserver/ provides a pleasant GUI wrapper around the native command that makes the process less error prone. This procedure was tested with TftpServer.app v 3.4.1 on OSX 10.10.5 in December 2016.
While there is a command line TFTP server/client feature in windows, it's easier to use a third party one that has a proper graphical interface.
A simple and free TFTP application is Tftpd64, available here.
Download the portable version, and unzip it in a folder. You should see the manual, a license in a PDF file, a configuration file, and the application executable itself.
Place the file you want to send (the firmware file usually) in the same folder where you find the Tftpd64 program file. The folder exposed through TFTP can be changed by clicking on Browse button, but in most situations you don't need to do that.
Configure your ethernet port according to your device's own recovery method as detailed in Rescue from failed firmware upgrade, note that in most cases you can't use that port to connect to the internet until you reconfigure it back like it was before.
Double-click on the Tftpd64 program file and you should get a Windows Firewall popup asking you to grant access. Check both options, to allow Tftpd64 to communicate over both home/work and public networks. This is very important, if the Windows Firewall blocks your TFTP server you won't be able to access it from the device you want to recover.
Click on the drop-down menu called Server Interfaces and select your PC's Ethernet port.
Now the TFTP server is online and ready, and the file(s) in it can be accessed as normal.
Tiny PXE seems to do the same as Tftpd64 plus BOOTP support (particularly useful for MikroTik devices).
dnsmasq çoğu dağıtımda önyüklenmiştir. Dizininize bir imaj dosyası koyun - asıl ad değişiklik gösterir. Sonra TFTP sunucuyu koşturun:
# dnsmasq --port=0 --enable-tftp --tftp-root=/path/to/firmware/directory --tftp-no-blocksize --user=root --group=root
TFTP sunucunuz dinliyormu kontrol edin:
# netstat -lunp | grep 69
atftpd de kullanabilirsiniz:
|
Debian/Ubuntu/Mint deposundan atftpd yükleme # apt install atftpd |
RedHat/Fedora/Centos deposundan atftpd yükleme # yum install atftpd |
İmaj dosyasını koyacağınız dizini yaratın.
# mkdir /srv/tftp
Dizininize bir imaj dosyası koyun - asıl ad değişiklik gösterir
# cp ~/tp_recovery.bin /srv/tftp
Klasör ve içindeki dosyanın sahipliğini değiştirin
# chown nobody:nogroup -R /srv/tftp
TFTP sunucuyu koşturun (daemon olarak koştur, çatallama, olayları stdout'a kaydet)
# atftpd --daemon --no-fork --logfile - /srv/tftp
TFTP sunucu dinliyor mu kontrol et
# netstat -lunp|grep 69
Olmadıysa, TFTP sunucuyu süperkullanıcı olarak koşturmayı denemelisin
TFTP sunucunuzdan dosyayı gerçekten de çekebildiğinizi sınayın. Tercihen diğer bir bilgisayardan TFTP sunucu IP'sini çağırın: (veya olası değilse, aynı sunucuda 0.0.0.0 IP'sini çağırabilirsiniz)
# tftp 192.168.0.66 tftp> get tp_recovery.bin Received 8152633 bytes in 0.8 seconds tftp> quit
Eğer dosyayi teslim aldıysanız, tebrikler, bu hazır.
TFTP dosya aktarımı yerel bilgisayardan çalışmaz
TFTP doya aktarımı yerel bilgisayardan çalışıyor, ama diğer bir bilgisayardan çalışmıyor:
TFTP dosya aktarımı başka bilgisayardan çalışıyor ama yönlendiriciden çalışmıyor:
arp -s kullan veya geçkin girdileri silmek işin arp -d kullan