Mac上TFTP服務器的配置和為TP-Link升級固件


1、TFTP協議
簡單文件傳輸協議Trivial File Transfer Protocol (TFTP)是一個基於UDP協議的簡單的、低開銷的文件傳輸協議,允許客戶端get或者put文件到遠程主機上。由於它開銷極效,所以TFTP被用於引導計算機,例如沒有大容量存儲器的路由器。這就是為什么很多路由器都用tftp作為升級的方式。這個協議很有意思,如果感興趣,請參考如下兩個網址:

中文wiki  或者 英文wiki

RFC 1350 THE TFTP PROTOCOL (REVISION 2)

2、Mac下配置和啟動TFTP
1)配置
Mac默認自帶TFTP。配置文件位置:/System/Library/LaunchDaemons/tftp.plist。

修改配置文件,去掉如下兩行:

<key>Disabled</key>
<true/>
添加如下配置(可選),就是添加-l選項:

<array>
<string>/usr/libexec/tftpd</string>
<string>-i</string>
<string>-l</string>
<string>/private/tftpboot</string>
</array>
簡要說明:

I、-i選項,開啟不安全模式。-l選項,使用syslog記錄所有請求的日志。關於說明請參考:man tftpd(打開終端,輸入這條命令就能看到了)。

II、/private/tftpboot是默認路徑,需要改變其讀寫權限(非常重要),執行命令:

chmod -R 777 /private/tftpboot
2)啟動
sudo launchctl load -F /System/Library/LaunchDaemons/tftp.plist
sudo launchctl start com.apple.tftpd
執行上邊兩條,如果沒有報錯,那么說明啟動成功。如果想看日志可以使用如下命令:

tail -f /var/log/system.log
得到的日志應該如下:


Mar 7 14:04:02 ***.local sudo[589]: *** : TTY=ttys000 ; PWD=/Users/*** ; USER=root ; COMMAND=/bin/launchctl load -F /System/Library/LaunchDaemons/tftp.plist
Mar 7 14:04:09 ***.local sudo[591]: *** : TTY=ttys000 ; PWD=/Users/*** ; USER=root ; COMMAND=/bin/launchctl start com.apple.tftpd
Mar 7 14:04:09 ***.local tftpd[593]: recvfrom: Resource temporarily unavailable
Mar 7 14:04:09 *** com.apple.xpc.launchd[1] (com.apple.tftpd[593]): Service exited with abnormal code: 1
這個位置貌似有一條報錯,但是不影響使用,如果有高手請指教如何處理。

3)關閉
sudo launchctl unload -F /System/Library/LaunchDaemons/tftp.plist
sudo launchctl stop com.apple.tftpd
3、TFTP協議的使用
在啟動TFTP服務器后,我們就可以使用TFTP來連接這台服務器,並獲取或者提交文件了。下邊用命令行來演示:


***:~ ***$ tftp
tftp> connect localhost
tftp> status
Connected to localhost.
Mode: netascii Verbose: off Tracing: off
Rexmt-interval: 5 seconds, Max-timeout: 25 seconds
tftp> verbose
Verbose mode on.
tftp> get 1.txt
getting from localhost:1.txt to 1.txt [netascii]
Received 9 bytes in 0.0 seconds [inf bits/sec]
tftp> quit
簡單說明:我們通過tftp從tftp服務器上獲取1.txt(/private/tftpboot/1.txt)文件。

connect host-name [port] 連接服務器。其他命令請參考: man tftp。

4、使用TFTP給TP-Link固件升級
如果上述步驟都已順利完成,那么用MAC的TFTP給TP-Link升級都很簡單了,只需要到TP-Link官網搜索你的路由器的對應的固件下載,然后將bin文件放到/private/tftpboot目錄下,並進入路由器192.168.1.1,然后固件升級,點幾下按鈕就搞定了。請大家盡情發乎吧。


---------------------
作者:ForeverNull
來源:CSDN
原文:https://blog.csdn.net/forevernull/article/details/44115751
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM