05-FTP和TFTP配置
本章节下载: 05-FTP和TFTP配置 (241.31 KB)
目 录
l 不同型号产品的特性功能支持情况略有不同,详细请参见“特性差异化列表”部分的介绍。
l 设备支持的接口类型和编号与设备的实际情况相关,本手册涉及以太网接口的配置举例统一使用Eth口举例说明。实际使用中请根据具体设备的接口类型和编号进行配置。
l 本手册中所述的AP设备可以指代一般意义下的AP设备和无线网桥、无线Mesh设备。
FTP(File Transfer Protocol,文件传输协议)用于在远端服务器和本地主机之间传输文件,是IP网络上传输文件的通用协议。在万维网(WWW,World Wide Web)出现以前,用户使用命令行方式传输文件,最通用的应用程序就是FTP。虽然目前大多数用户在通常情况下选择使用Email和Web传输文件,但是FTP仍然有着比较广泛的应用。
FTP协议在TCP/IP协议族中属于应用层协议,用于在远端服务器和本地客户端之间传输文件,使用TCP端口20和21进行传输。端口20用于传输数据,端口21用于数据控制消息。FTP协议基本操作在RFC959中进行了描述。
FTP有两种文件传输模式:
l 二进制模式,用于传输程序文件(比如后缀名为.bin和.btm的文件);
l ASCII码模式,用于传输文本格式的文件(比如后缀名为.txt、.bat和.cfg的文件)。
设备在支持FTP协议上有两种方式:
l 设备作为FTP客户端:用户在PC上通过终端仿真程序或Telnet程序连接到设备(设备作为FTP客户端),执行ftp命令,建立设备与远程FTP服务器的连接,访问远程FTP服务器上的文件。
l 设备作为FTP服务器:用户运行FTP客户端程序,作为FTP客户端,登录到设备上进行访问(用户登录前,网络管理员需要事先配置好FTP服务器的IP地址)。
图1-1 FTP配置示意图

目前,设备只支持作为FTP的客户端。
设备作为FTP客户端时,需要进行如下配置:
表1-1 设备作为FTP客户端时的配置
| 
    设备  | 
   
    操作  | 
   
    说明  | 
 
| 
   Device(作为FTP客户端)  | 
  
   可以直接使用ftp命令登录远端的FTP服务器  | 
  
   如果远端FTP服务器支持匿名访问,设备可以直接登录;如果远端FTP服务器不支持匿名访问,则必须先获取FTP用户名和密码后,才能成功登录远端的FTP服务器  | 
 
| 
   PC(作为FTP服务器)  | 
  
   启动FTP服务器,并作了用户名、密码、用户的权限等相关的配置  | 
  
   -  | 
![]()
FTP功能可以正常使用的条件是FTP服务器与FTP客户端之间路由可达。
FTP客户端要访问FTP服务器,必须先与FTP服务器建立连接。连接的建立方式有两种,一种是使用ftp命令直接建立连接,一种是在FTP客户端视图下使用open命令间接建立连接。
在访问FTP服务器时,到FTP服务器的可达路由可能有多条,用户可以通过配置客户端FTP报文的源地址来指定一条路由,以配合FTP服务器端的安全策略。源地址可以通过配置源接口或源IP来实现,源接口下配置的主IP地址即为发送报文的源地址。FTP客户端在与FTP服务器通信的时候,发送报文的源地址选取遵循以下规则:
l 如果没有指定FTP客户端的源地址,则采用路由决定的源地址进行通信。
l 如果只用ftp client source或ftp命令指定了源地址,则采用该地址进行通信。
l 如果执行ftp client source命令指定了源地址后,又在ftp命令中指定了源地址,则采用ftp命令中指定的源地址进行通信。
ftp client source命令指定的源地址对所有的ftp连接有效,ftp命令指定的源地址只对当前的FTP连接有效。
表1-2 建立FTP连接(IPv4组网环境)
| 
    操作  | 
   
    命令  | 
   
    说明  | 
 
| 
   进入系统视图  | 
  
   system-view  | 
  
   -  | 
 
| 
   配置FTP客户端的源地址  | 
  
   ftp client source { interface interface-type interface-number | ip source-ip-address }  | 
  
   可选 缺省情况下,设备使用路由决定的源地址与FTP服务器通信  | 
 
| 
   退回用户视图  | 
  
   quit  | 
  
   -  | 
 
| 
   在用户视图下直接登录远程FTP服务器  | 
  
   ftp [ server-address [ service-port ] [ source { interface interface-type interface-number | ip source-ip-address } ] ]  | 
  
   二者必选其一 ftp命令直接在用户视图下执行 open命令在FTP客户端视图下执行  | 
 
| 
   在FTP客户端视图下间接登录远程FTP服务器  | 
  
   ftp  | 
 |
| 
   open server-address [ service-port ]  | 
![]()
l 如果源接口下没有配置主地址,将导致FTP连接建立失败。
l 如果先后使用ftp client source命令配置了客户端FTP报文的源接口和源IP,则新配置的源IP将覆盖现有的源接口配置。反之亦然。
表1-3 建立FTP连接(IPv6组网环境)
| 
    操作  | 
   
    命令  | 
   
    说明  | 
 
| 
   在用户视图下直接登录远程FTP服务器  | 
  
   ftp ipv6 [ server-address [ service-port ] [ source ipv6 source-ipv6-address ] [ -i interface-type interface-number ] ]  | 
  
   二者必选其一 ftp ipv6命令直接在用户视图下执行;open ipv6命令在FTP客户端视图下执行  | 
 
| 
   在FTP客户端视图下间接登录远程FTP服务器  | 
  
   ftp ipv6  | 
 |
| 
   open ipv6 server-address [ service-port ] [ -i interface-type interface-number ]  | 
当设备作为FTP客户端,与FTP服务器连接建立成功后(连接操作请参见1.2.1 建立FTP连接),对于已经获得授权的目录,设备可以进行如下操作。
表1-4 FTP客户端基本操作
| 
    操作  | 
   
    命令  | 
   
    说明  | 
 
| 
   显示远程FTP服务器支持的FTP相关协议命令的帮助信息  | 
  
   remotehelp [ protocol-command ]  | 
  
   可选  | 
 
| 
   使能显示FTP服务器返回的详细信息  | 
  
   verbose  | 
  
   可选 缺省情况下,verbose开关为开启状态  | 
 
| 
   当设备作为FTP客户端时,打开FTP调试信息开关  | 
  
   debugging  | 
  
   可选 缺省情况下,FTP客户端调试信息开关处于关闭状态  | 
 
| 
   成功登录FTP服务器后,使用其他用户身份重新登录  | 
  
   user username [ password ]  | 
  
   可选  | 
 
| 
   设置FTP文件传输的模式为ASCII模式  | 
  
   ascii  | 
  
   可选 缺省情况下,文件传输模式为ASCII模式  | 
 
| 
   设置FTP文件传输的模式为二进制流模式  | 
  
   binary  | 
  
   可选 缺省情况下,文件传输模式为ASCII模式  | 
 
| 
   切换远程FTP服务器上的工作路径  | 
  
   cd { directory | .. | / }  | 
  
   可选  | 
 
| 
   退出远程FTP服务器的当前目录,返回FTP服务器的上一级目录  | 
  
   cdup  | 
  
   可选  | 
 
| 
   查看远程FTP服务器上的目录/文件的详细信息  | 
  
   dir [ remotefile [ localfile ] ]  | 
  
   可选  | 
 
| 
   查询远程FTP服务器上的目录/文件  | 
  
   ls [ remotefile [ localfile ] ]  | 
  
   可选  | 
 
| 
   下载FTP服务器上的文件  | 
  
   get remotefile [ localfile ]  | 
  
   可选  | 
 
| 
   上传本地文件到远程FTP服务器  | 
  
   put localfile [ remotefile ]  | 
  
   可选  | 
 
| 
   显示当前用户正在访问的远程FTP服务器上的路径  | 
  
   pwd  | 
  
   可选  | 
 
| 
   获取FTP客户端本地的工作路径  | 
  
   lcd  | 
  
   可选  | 
 
| 
   在远程FTP服务器上创建目录  | 
  
   mkdir directory  | 
  
   可选  | 
 
| 
   设置数据传输的方式为被动方式  | 
  
   passive  | 
  
   可选 缺省情况下,数据传输的方式为被动方式  | 
 
| 
   彻底删除远程FTP服务器上的指定文件  | 
  
   delete remotefile  | 
  
   可选  | 
 
| 
   删除FTP服务器上指定的目录  | 
  
   rmdir directory  | 
  
   可选  | 
 
| 
   不退出FTP客户端视图的前提下,断开与FTP服务器的连接  | 
  
   disconnect  | 
  
   可选 等效于close命令  | 
 
| 
   不退出FTP客户端视图的前提下,断开与FTP服务器的连接  | 
  
   close  | 
  
   可选 等效于disconnect命令  | 
 
| 
   断开与远程FTP服务器的连接,并退回到用户视图  | 
  
   bye  | 
  
   可选  | 
 
| 
   终止与远程FTP服务器的连接,并退回到用户视图  | 
  
   quit  | 
  
   可选 在FTP客户端视图下执行,等效于bye命令  | 
![]()
l FTP传输文件有两种模式:一种是ASCII码模式(可用ascii命令设置),用于传输文本文件;另一种是二进制模式(可用binary命令设置),用于传输程序文件。
l ls命令只能显示出目录/文件的名称,而dir命令可以查看与目录/文件相关的信息,如大小,创建日期等。
l 当用户通过设备登录FTP服务器时,只有级别为3(管理级)的用户登录设备后才能使用表1-4所列的命令,但命令能否执行成功,还将受FTP服务器端的授权限制。
l AP作为FTP客户端,PC作为TFTP服务器。IP地址如组网图所示,AP和PC之间路由可达。
l AP从PC上下载新的启动文件完成设备的升级,并将配置文件上传到PC进行备份。
l PC上已设置AP登录FTP服务器的用户名为abc,密码为pwd。AP以用户名abc、密码pwd登录FTP服务器。
图1-2 利用FTP客户端功能实现平滑升级

![]()
如果设备剩余的内存空间不够,请使用fixdisk命令清理内存或者使用delete /unreserved file-url命令删除部分暂时不用的文件后再执行以下操作。
# 以FTP方式登录服务器。
<Sysname> ftp 10.1.1.1
Trying 10.1.1.1 ...
Connected to 10.1.1.1.
220 WFTPD 2.0 service (by Texas Imperial Software) ready for new user
User(10.1.1.1:(none)):abc
331 Give me your password, please
Password:
230 Logged in successfully
# 将传输模式设置为binary,以便传输启动文件。
[ftp] binary
200 Type set to I.
# 将启动文件newest.app从PC下载到设备。
[ftp] get test.bin
227 Entering Passive Mode (10,1,1,1,4,1).
125 BINARY mode data connection already open, transfer starting for / test.bin.
.....226 Transfer complete.
FTP: 5805100 byte(s) received in 19.898 second(s) 291.74K byte(s)/sec.
# 将AP的配置文件config.cfg上传到服务器进行备份。
[ftp] ascii
[ftp] put config.cfg back-config.cfg
227 Entering Passive Mode (10,1,1,1,4,2).
125 ASCII mode data connection already open, transfer starting for /config.cfg.
226 Transfer complete.
FTP: 3494 byte(s) sent in 5.646 second(s), 618.00 byte(s)/sec.
[ftp] bye
# 将test.bin指定为设备的主用下次启动文件。
<Sysname> boot-loader file test.bin main
# 重启设备,完成设备软件升级。
<Sysname> reboot
![]()
下次启动文件必须存放在存储介质的根目录下。可使用文件的拷贝或移动操作来调整文件的路径为根目录。关于boot-loader命令的详细介绍请参见“基础配置命令参考”中的“设备管理”。
在完成上述配置后,在任意视图下执行display命令可以显示配置后FTP的运行情况,通过查看显示信息验证配置的效果。
表1-5 FTP显示和维护
| 
    操作  | 
   
    命令  | 
 
| 
   查看FTP客户端的当前配置  | 
  
   display ftp client configuration  | 
TFTP(Trivial File Transfer Protocol,简单文件传输协议)也是用于在远端服务器和本地主机之间传输文件的,相对于FTP,TFTP没有复杂的交互存取接口和认证控制,适用于客户端和服务器之间不需要复杂交互的环境。TFTP协议的运行基于UDP协议,使用UDP端口69进行数据传输。TFTP协议基本操作在RFC1986中进行了描述。。
TFTP协议传输是由客户端发起的:
l 当TFTP客户端需要从服务器下载文件时,由客户端向TFTP服务器发送读请求包,然后从服务器接收数据,并向服务器发送确认;
l 当TFTP客户端需要向服务器上传文件时,由客户端向TFTP服务器发送写请求包,然后向服务器发送数据,并接收服务器的确认。
TFTP传输文件有两种模式:
l 二进制模式,用于传输程序文件(比如后缀名为.bin和.btm的文件)。
l ASCII码模式,用于传输文本格式的文件(比如后缀名为.txt、.bat和.cfg的文件)。
目前,设备只能作为TFTP客户端,不支持作为TFTP服务器。
图2-1 TFTP配置示意图

使用TFTP之前,网络管理员需要配置好TFTP客户端和服务器的IP地址,并且确保客户端和服务器之间的路由可达。
设备作为TFTP客户端时,需要进行如下配置:
表2-1 设备作为TFTP客户端时的配置
| 
    设备  | 
   
    操作  | 
   
    说明  | 
 
| 
   Device (作为TFTP客户端)  | 
  
   l 进行IP地址和路由功能配置,确保设备和TFTP服务器之间路由可达 l 直接使用TFTP命令登录远端的TFTP服务器上传或者下载文件  | 
  
   -  | 
 
| 
   PC (作为TFTP服务器)  | 
  
   启动TFTP服务器,并配置TFTP工作目录  | 
  
   -  | 
当设备作为TFTP客户端时,可以把本设备的文件上传到TFTP服务器,还可以从TFTP服务器下载文件到本地设备。下载又分为两种:
l 普通下载。在这种方式下,设备将获取的远端文件直接写到存储设备中。这样如果是覆盖性下载系统文件,而且下载失败(如网络断开等原因),则原系统文件已被删除,设备将无法正常启动。
l 安全下载。在这种方式下,设备将获取的远端文件先保存到内存中,等用户文件全部接收完毕,才将它写到存储设备中。这样如果系统文件下载失败(如网络断开等原因),因为原有的系统文件没有被覆盖,设备仍能够启动。这种方法安全系数较高,但需要较大的内存空间。
当操作启动文件或配置文件等重要文件时,建议采用安全下载或者非覆盖性下载(即下载时使用一个当前目录下不存在的文件名作为目标文件名)。
在执行上传/下载操作时,到TFTP服务器的可达路由可能有多条,用户可以通过配置客户端TFTP报文的源地址来指定一条路由,以配合TFTP服务器端的安全策略。源地址可以通过配置源接口或源IP来实现,源接口下配置的主IP地址即为发送报文的源地址。TFTP客户端在与TFTP服务器通信的时候,发送报文的源地址选取遵循以下规则:
l 如果没有指定TFTP客户端的源地址,则采用路由决定的源地址进行通信。
l 如果只用tftp client source或tftp命令指定了源地址,则采用该地址进行通信。
l 如果执行tftp client source命令指定了源地址后,又在tftp命令中指定了源地址,则采用tftp命令中指定的源地址进行通信。
tftp client source命令指定的源地址对所有的tftp传输有效,tftp命令指定的源地址只对当前的tftp传输有效。
表2-2 配置TFTP客户端
| 
    操作  | 
   
    命令  | 
   
    说明  | 
 
| 
   进入系统视图  | 
  
   system-view  | 
  
   -  | 
 
| 
   使用ACL限制设备可访问哪些TFTP服务器  | 
  
   tftp-server [ ipv6 ] acl acl-number  | 
  
   可选 缺省情况下,没有使用ACL限制TFTP服务器  | 
 
| 
   配置TFTP客户端的源地址  | 
  
   tftp client source { interface interface-type interface-number | ip source-ip-address }  | 
  
   可选 缺省情况下,设备使用路由决定的源地址与TFTP服务器通信  | 
 
| 
   退回用户视图  | 
  
   quit  | 
  
   -  | 
 
| 
   在IPv4网络,用TFTP下载/上传/安全下载文件  | 
  
   tftp server-address { get | put | sget } source-filename [ destination-filename ] [ source { interface interface-type interface-number | ip source-ip-address } ]  | 
  
   可选 该命令在用户视图下执行  | 
 
| 
   在IPv6网络,用TFTP下载/上传文件  | 
  
   tftp ipv6 tftp-ipv6-server [ -i interface-type interface-number ] { get | put } source-file [ destination-file ]  | 
  
   可选 该命令在用户视图下执行  | 
![]()
l 如果源接口下没有配置主地址,将导致TFTP传输失败。
l 如果先后配置了客户端TFTP报文的源接口和源IP,则新配置的源IP将覆盖现有的源接口配置。反之亦然。
在完成上述配置后,在任意视图下执行display命令可以显示配置后TFTP客户端的情况,通过查看显示信息验证配置的效果。
表2-3 TFTP客户端显示和维护
| 
    操作  | 
   
    命令  | 
 
| 
   查看TFTP客户端的当前配置  | 
  
   display tftp client configuration  | 
l AP作为TFTP客户端,PC作为TFTP服务器。IP地址如组网图所示,AP和PC之间路由可达。
l AP通过TFTP协议从PC上下载最新启动文件完成设备升级,同时将配置文件config.cfg上传到PC实现备份。
图2-2 利用TFTP客户端功能实现平滑升级

(1) 配置PC(TFTP服务器)(具体配置步骤略)
l 在PC上启动TFTP服务器功能;
l 配置TFTP服务器的工作目录。
(2) 配置AP(TFTP客户端)
![]()
如果AP剩余的内存空间不够大,请使用fixdisk命令清理内存或者使用delete /unreserved file-url命令删除部分暂时不用的文件后再执行以下操作。
# 将启动文件test.bin从PC下载到AP。
<Sysname> tftp 1.2.1.1 get test.bin
# 将AP的配置文件config.cfg上传到TFTP服务器。
<Sysname> tftp 1.2.1.1 put config.cfg configback.cfg
# 将test.bin指定为设备的主用下次启动文件。
<Sysname> boot-loader file test.bin main
# 重启设备,完成设备软件升级。
<Sysname> reboot
![]()
下次启动文件必须存放在存储介质的根目录下。可使用文件的拷贝或移动操作来调整文件的路径为根目录。关于boot-loader命令的详细描述请参见“基础配置命令参考”中的“设备管理”。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!
