NAME
tftp
—
trivial file transfer
program
SYNOPSIS
tftp |
[host [port]] |
DESCRIPTION
The tftp
utility is the user interface to
the Internet TFTP (Trivial File Transfer Protocol), which allows users to
transfer files to and from a remote machine. The remote
host may be specified on the command line, in which
case tftp
uses host as the
default host for future transfers (see the connect
command below).
COMMANDS
Once tftp
is running, it issues the prompt
“tftp>
” and recognizes the
following commands:
?
command-name ...- Print help information.
ascii
- Shorthand for "mode ascii"
binary
- Shorthand for "mode binary"
blocksize
[size]- Sets the TFTP blksize option in TFTP Read Request or Write Request packets to [size] as specified in RFC 2348. Valid values are between 8 and 65464. If no blocksize is specified, then by default a blocksize of 512 bytes will be used.
blocksize2
[size]- Sets the TFTP blksize2 option in TFTP Read Request or Write Request packets to [size]. Values are restricted to powers of 2 between 8 and 32768. This is a non-standard TFTP option.
connect
host [port]- Set the host (and optionally
port) for transfers. Note that the TFTP protocol,
unlike the FTP protocol, does not maintain connections between transfers;
thus, the
connect
command does not actually create a connection, but merely remembers what host is to be used for transfers. You do not have to use theconnect
command; the remote host can be specified as part of theget
orput
commands. debug
level- Enable or disable debugging levels during verbose output. The value of
level can be one of
packet
,simple
,options
, oraccess
. get
[host:]file [localname]get
[host1:]file1 [host2:]file2 ... [hostN:]fileN- Get one or more files from the remote host. When using the
host argument, the host will
be used as default host for future transfers. If
localname is specified, the file is stored locally
as localname, otherwise the original filename is
used. Note that it is not possible to download two files at a time, only
one, three, or more than three files, at a time.
To specify an IPv6 numeric address for a host, wrap it using square brackets like “
[3ffe:2900:e00c:ffee::1234]
:file” to disambiguate the colons used in the IPv6 address from the colon separating the host and the filename. mode
transfer-mode- Set the mode for transfers; transfer-mode may be one of ascii or binary. The default is binary.
packetdrop [arg]
- Randomly drop arg out of 100 packets during a transfer. This is a debugging feature.
put
file [[host:]remotename]put
file1 file2 ... fileN [[host:]remote-directory]- Put a file or set of files to the remote host. When
remotename is specified, the file is stored remotely
as remotename, otherwise the original filename is
used. If the remote-directory argument is used, the
remote host is assumed to be a UNIX machine. To
specify an IPv6 numeric address for a host, see the
example under the
get
command. options
[arg]- Enable or disable support for TFTP options. The valid values of
arg are
on
(enable RFC 2347 options),off
(disable RFC 2347 options), andextra
(toggle support for non-RFC defined options). quit
- Exit
tftp
. An end of file also exits. rexmt
retransmission-timeout- Set the per-packet retransmission timeout, in seconds.
rollover [arg]
- Specify the rollover option in TFTP Read Request or Write Request packets. After 65535 packets have been transmitted, set the block counter to arg. Valid values of arg are 0 and 1. This is a non-standard TFTP option.
status
- Show current status.
timeout
total-transmission-timeout- Set the total transmission timeout, in seconds.
trace
- Toggle packet tracing.
verbose
- Toggle verbose mode.
SEE ALSO
The following RFC's are supported:
RFC 1350: The TFTP Protocol (Revision 2).
RFC 2347: TFTP Option Extension.
RFC 2348: TFTP Blocksize Option.
RFC 2349: TFTP Timeout Interval and Transfer Size Options.
RFC 3617: Uniform Resource Identifier (URI) Scheme and Applicability Statement for the Trivial File Transfer Protocol (TFTP).
The non-standard rollover
and
blksize2
TFTP options are mentioned here:
Extending TFTP, http://www.compuphase.com/tftp.htm.
HISTORY
The tftp
command appeared in
4.3BSD.
Edwin Groothuis <edwin@FreeBSD.org> performed a major
rewrite of the tftpd(8) and tftp
code to support
RFC2348.
NOTES
Because there is no user-login or validation within the TFTP protocol, the remote site will probably have some sort of file-access restrictions in place. The exact methods are specific to each site and therefore difficult to document here.
Files larger than 33488896 octets (65535 blocks) cannot be transferred without client and server supporting the TFTP blocksize option (RFC2348), or the non-standard TFTP rollover option.