TFTP (Trivial File Transfer Protocol) 是一个简单的文件传输协议,常用于网络设备(如路由器、交换机、防火墙、IP电话、无线路由器等)的固件升级或配置备份,因为它非常简单,所以不提供安全认证,不适合在公共或不信任的网络环境中传输敏感文件。

在 Windows 上,你有两种主要的方式来设置 TFTP 服务器:
- 使用内置的 TFTP 客户端/服务器功能 (Windows 10/11 Pro/Enterprise/Education)
- 使用第三方开源软件 (更常用、更稳定、功能更全)
使用 Windows 内置的 TFTP 服务器功能
这个方法不需要安装任何额外软件,但配置相对繁琐,且功能有限。
启用 TFTP 服务器组件
默认情况下,Windows 并不安装 TFTP 服务器服务。
-
打开或关闭 Windows 功能:
(图片来源网络,侵删)- 在开始菜单搜索并打开 “控制面板”。
- 进入 “程序” -> “程序和功能”。
- 点击左侧的 “启用或关闭 Windows 功能”。
-
勾选 TFTP 服务器:
- 在弹出的列表中,找到并展开 “TFTP 客户端”。
- 勾选 “TFTP 服务器”。
- 点击 “确定”,系统会自动下载并安装所需文件。
配置 TFTP 服务器
安装完成后,你需要进行一些基本配置,因为默认路径是 C:\tftp,并且没有设置权限。
-
创建 TFTP 根目录:
- 在任意位置创建一个文件夹作为你的 TFTP 服务器根目录,在
D:盘下创建D:\TFTP-Root。建议使用英文字符和没有空格的路径。
- 在任意位置创建一个文件夹作为你的 TFTP 服务器根目录,在
-
配置 TFTP 服务:
(图片来源网络,侵删)- 按
Win + R键,输入services.msc并回车,打开“服务”窗口。 - 在服务列表中找到 “TFTP 服务器” (TFTP Server)。
- 双击它,打开属性窗口。
- 按
-
设置关键参数:
- 启动类型:设置为 “自动” 或 “手动”,建议先设为“手动”,配置完成无误后再改为“自动”。
- 服务状态:点击 “启动” 按钮来启动服务。
- 登录:确保选择 “本地系统账户”。
- 恢复:如果服务失败,可以选择“重新启动服务”。
-
配置注册表参数(最关键的一步): Windows 内置的 TFTP 服务器根目录和权限是通过注册表来设置的。
- 按
Win + R键,输入regedit并回车,打开注册表编辑器。 - 导航到以下路径:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tftpd - 在右侧窗口,你需要创建或修改两个 DWORD (32 位) 值:
- Directory:右键点击空白处 -> 新建 -> DWORD (32 位) 值,命名为
Directory,双击它,将其值修改为你之前创建的 TFTP 根目录的完整路径,D:\TFTP-Root。 - AllowWrite:同样方式创建一个名为
AllowWrite的 DWORD 值,双击它,将其值设置为1,以允许客户端上传文件,如果只允许下载,可以设置为0。
- Directory:右键点击空白处 -> 新建 -> DWORD (32 位) 值,命名为
- 按
-
设置文件夹权限:
- 右键点击你的 TFTP 根目录(
D:\TFTP-Root),选择 “属性”。 - 切换到 “安全” 选项卡。
- 点击 “编辑”,“添加”。
- 在输入框中输入
SYSTEM,点击“检查名称”后点击“确定”。 - 确保
SYSTEM用户有 “完全控制” 权限。 - 同样地,添加
Users组,并给予 “读取和执行” 以及 “读取” 权限,如果需要允许上传,则给予 “修改” 权限。
- 右键点击你的 TFTP 根目录(
-
重启 TFTP 服务:
- 回到
services.msc窗口,右键点击“TFTP 服务器”,选择 “重新启动”。
- 回到
你的 Windows TFTP 服务器就配置完成了,你可以将需要传输的文件(如路由器固件 .bin 文件)放入 D:\TFTP-Root 文件夹中。
使用第三方 TFTP 服务器软件(推荐)
对于大多数用户来说,使用第三方软件是更简单、更可靠的选择,这里我们推荐最流行、最稳定的 Tftpd32 (及其 64 位版本 Tftpd64)。
下载和安装
- 下载地址:https://tftpd32.jounin.net/
- 它是绿色软件,无需安装,下载
tftpd64.exe(64位) 或tftpd32.exe(32位) 即可。
配置和使用
-
启动软件:直接双击运行
tftpd64.exe。 -
基本设置:
- Current directory:点击右侧的 按钮,选择你希望作为 TFTP 根目录的文件夹(
D:\TFTP-Root)。这是最重要的设置。 - Interface:如果你的电脑有多个网卡,可以指定 TFTP 服务器在哪个 IP 地址上监听,通常保持
0.0.0(所有接口) 即可。 - Port:TFTP 默认使用 UDP 69 端口,通常无需修改。
- Current directory:点击右侧的 按钮,选择你希望作为 TFTP 根目录的文件夹(
-
高级设置(可选):
- 切换到 "TFTP" 选项卡。
- Timeout (seconds):设置超时时间,默认为 5 秒,在网络环境较差时,可以适当增加。
- Blocksize:可以尝试调整数据块大小,以提高大文件传输速度,但需要确保客户端也支持。
- Security:可以设置允许连接的客户端 IP 地址列表,增加一定的安全性。
-
启动服务:
- 设置完成后,点击左下角的 "TFTP server" 按钮,它会变成绿色,表示服务器已启动并正在运行。
-
日志监控:
软件主界面会实时显示连接和文件传输的日志,非常方便排查问题。
如何测试 TFTP 服务器?
你可以使用 Windows 自带的 TFTP 客户端 来测试。
-
打开命令提示符 (CMD) 或 PowerShell。
-
测试下载 (从服务器到本地电脑):
- 假设你的服务器 IP 是
168.1.100,服务器上有一个文件test.txt。 - 在命令行中输入:
tftp -i 192.168.1.100 get test.txt
- 成功后,
test.txt文件会出现在你当前所在的命令行目录下。
- 假设你的服务器 IP 是
-
测试上传 (从本地电脑到服务器):
- 假设你有一个本地的文件
myconfig.cfg,你想上传到服务器。 - 在命令行中输入:
tftp -i 192.168.1.100 put myconfig.cfg
- 成功后,
myconfig.cfg文件会出现在服务器你设置的根目录下。
- 假设你有一个本地的文件
注意:确保你的电脑和 TFTP 服务器在同一个局域网内,并且防火墙没有阻止 TFTP 通信(通常是 UDP 69 端口)。
总结与对比
| 特性 | Windows 内置 TFTP 服务器 | 第三方软件 (如 Tftpd64) |
|---|---|---|
| 安装 | 需要通过“启用或关闭 Windows 功能” | 无需安装,下载即用 |
| 配置 | 复杂,需要修改注册表和文件夹权限 | 简单,图形化界面,一目了然 |
| 功能 | 功能单一,仅支持 TFTP | 功能强大,常集成 TFTP, DHCP, SNMP, Syslog 等 |
| 稳定性 | 一般,可能存在权限或路径问题 | 非常稳定,专为网络设备设计 |
| 日志 | 无图形化日志,需通过系统事件查看 | 实时显示连接和传输日志,便于排错 |
| 推荐度 | ⭐⭐ (仅适合临时、简单的测试) | ⭐⭐⭐⭐⭐ (强烈推荐,特别是用于网络设备管理) |
除非你有特殊原因必须使用系统原生组件,否则强烈建议使用 Tftpd64 这类第三方软件来搭建你的 Windows TFTP 服务器,它将为你节省大量配置和排错的时间。
