凌峰创科服务平台

Windows系统如何搭建TFTP服务器?

什么是 TFTP?

TFTP (Trivial File Transfer Protocol) 是一个简单的文件传输协议,类似于 FTP,但它更简单、功能更少。

Windows系统如何搭建TFTP服务器?-图1
(图片来源网络,侵删)
  • 优点: 实现简单,不需要复杂的用户认证,占用资源少。
  • 缺点: 不安全(没有用户名/密码验证),功能有限(不能列出目录、不能删除文件)。
  • 主要用途: 通常用于网络设备的固件升级,如路由器、交换机、防火墙、IP电话、无线路由器等,也常用于 PXE 网络启动环境中传输启动文件。

使用 Windows 自带的 TFTP 客户端(仅客户端)

首先需要明确一点:现代 Windows 系统默认只包含 TFTP 客户端,而不包含 TFTP 服务器 功能。

这意味着你可以用 Windows 命令行从其他 TFTP 服务器 下载 文件,但不能用它来 接收 文件,即不能作为服务器。

如何使用 TFTP 客户端?

  1. 打开命令提示符 或 PowerShell。

  2. 基本命令格式如下:

    Windows系统如何搭建TFTP服务器?-图2
    (图片来源网络,侵删)
    • 从 TFTP 服务器下载文件到本地:

      tftp -i [服务器IP地址] get [远程文件名] [本地文件名 - 可选]
      • -i: 指定二进制模式传输(对于固件等重要文件,强烈推荐使用)。
      • [服务器IP地址]: 运行 TFTP 服务器的机器的 IP 地址。
      • get: 下载文件的关键字。
      • [远程文件名]: 服务器上你想下载的文件名。
      • [本地文件名]: 保存到本地的文件名,如果省略,则与远程文件名相同。

      示例:

      # 从 IP 为 192.168.1.100 的服务器下载名为 firmware.bin 的文件,并保存为 myfirmware.bin
      tftp -i 192.168.1.100 get firmware.bin myfirmware.bin
    • 从本地上传文件到 TFTP 服务器:

      tftp -i [服务器IP地址] put [本地文件名] [远程文件名 - 可选]
      • put: 上传文件的关键字。
      • 其他参数与 get 类似。

      示例:

      Windows系统如何搭建TFTP服务器?-图3
      (图片来源网络,侵删)
      # 将本地的 config.txt 文件上传到 192.168.1.100 服务器,并命名为 new_config.txt
      tftp -i 192.168.1.100 put config.txt new_config.txt

使用第三方 TFTP 服务器软件(推荐)

既然 Windows 自身不带服务器功能,我们就需要安装第三方软件,这里推荐两款非常流行且免费的工具:Tftpd32SolarWinds TFTP Server

推荐工具 1:Tftpd32 (经典、免费、功能全面)

这是一个非常经典的小工具,集成了 TFTP 服务器、DHCP 服务器、SNMP 等多种功能,非常适合个人使用和小型网络环境。

优点:

  • 免费,单个可执行文件,无需安装。
  • 功能强大,除了 TFTP 服务器,还集成了 DHCP、Syslog、SNMP Agent。
  • 界面直观,操作简单。

安装与配置步骤:

  1. 下载:

    • 访问其官方网站或可靠的下载站点(https://tftpd32.jounin.net/)。
    • 下载 tftpd32tftpd64 (64位版本) 的 ZIP 压缩包。
  2. 运行:

    • 解压 ZIP 文件,直接运行 tftpd32.exe (或 tftpd64.exe),无需安装。
  3. 配置:

    • 首次运行会弹出一个配置窗口,如果没弹出,可以点击界面上的 "Settings" 按钮。
    • TFTP 选项卡:
      • Current directory: 设置你的 TFTP 根目录,所有上传和下载的文件都相对于这个目录,你可以设置为 C:\TFTP-Root注意:这个目录必须已经存在,TFTP 服务需要有读写权限。
      • Security: 勾选 "Accept only known hosts" 可以只允许来自特定 IP 地址的设备连接,增加安全性。
      • Timeout (sec): 设置超时时间,可以根据网络情况调整。
    • 其他选项卡:
      • 如果你需要为 PXE 启动服务,可以在 "PXE" 选项卡中配置。
      • 如果你需要为网络设备分配 IP 地址,可以在 "DHCP" 选项卡中配置。
  4. 启动服务:

    配置完成后,点击界面上的 "TFTP server" 按钮,使其状态变为 "Running",现在你的 TFTP 服务器就已经启动了。

使用:

  • 下载: 网络设备可以通过 tftp get 命令从你电脑的 IP 地址下载 Current directory 中的文件。
  • 上传: 设备可以通过 tftp put 命令将文件上传到 Current directory 中。

推荐工具 2:SolarWinds TFTP Server (专业、稳定、免费)

SolarWinds 提供的这款 TFTP 服务器是业界非常知名的免费工具,界面更现代化,非常稳定可靠。

优点:

  • 免费,商业和个人使用均可。
  • 界面美观,配置清晰。
  • 非常稳定,适合生产环境或频繁使用的场景。
  • 提供详细的传输日志。

安装与配置步骤:

  1. 下载:

    访问 SolarWinds 官网搜索 "TFTP Server",下载并安装。

  2. 配置:

    • 安装并打开软件。
    • 在主界面,点击 "..." 按钮来选择 TFTP Root Directory(TFTP 根目录),和 Tftpd32 一样,这是所有文件存放的位置。
    • 你可以设置 Server Interface(服务器监听的网卡)和 Timeout(超时)。
    • Logging 选项卡中,你可以启用日志记录,方便排查问题。
  3. 启动服务:

    点击主界面上的 "Start" 按钮,服务器即开始运行。


使用 Docker(适合开发者和技术爱好者)

如果你已经安装了 Docker,使用容器来运行 TFTP 服务器是一种非常干净和高效的方式。

优点:

  • 环境隔离,不会污染你的主系统。
  • 安装和卸载极其简单。
  • 版本管理方便。

步骤:

  1. 确保已安装 Docker

  2. 创建 TFTP 根目录: 在你的电脑上创建一个文件夹,C:\docker\tftp

  3. 运行 Docker 容器:

    • 打开 PowerShell 或命令提示符,运行以下命令:
      docker run -d -p 69:69/udp -v C:\docker\tftp:/tftp-root --name tftp-server panchshakti/tftp-hpa
    • -d: 在后台运行容器。
    • -p 69:69/udp: 将容器的 69 端口(TFTP 默认端口)映射到主机的 69 端口。
    • -v C:\docker\tftp:/tftp-root: 将你本地的 C:\docker\tftp 目录挂载到容器内的 /tftp-root 目录,这是文件传输的根目录。
    • --name tftp-server: 给容器起一个名字,方便管理。
    • panchshakti/tftp-hpa: 这是一个流行的、轻量级的 TFTP 服务器 Docker 镜像。
  4. 管理:

    • 停止服务: docker stop tftp-server
    • 启动服务: docker start tftp-server
    • 查看日志: docker logs tftp-server

总结与对比

方法 优点 缺点 适用人群
Windows 自带客户端 系统自带,无需安装 不能作为服务器,功能单一 只需要从服务器下载文件的用户
Tftpd32 免费,轻量,功能集成度高 界面较老,偶尔有兼容性问题 个人用户,小型网络,需要多种网络工具的人
SolarWinds TFTP Server 界面现代,稳定可靠,有日志 需要安装 对稳定性有要求的个人用户和小型企业
Docker 环境隔离,部署快捷,易于管理 需要 Docker 知识 开发者,技术爱好者,追求整洁环境的用户

对于绝大多数 Windows 我强烈推荐使用 Tftpd32SolarWinds TFTP Server 它们简单易用,能完美满足搭建 TFTP 服务器的需求。

分享:
扫描分享到社交APP
上一篇
下一篇