Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
TFTP(1)			FreeBSD	General	Commands Manual		       TFTP(1)

     tftp -- trivial file transfer program

     tftp [host	[port]]

     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).

     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 Re-
	      quest 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 Re-
	      quest 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	con-
	      nections 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	the connect
	      command; the remote host can be specified	as part	of the get or
	      put commands.

     debug level
	      Enable or	disable	debugging levels during	verbose	output.	 The
	      value of level can be one	of packet, simple, options, or access.

     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	lo-
	      cally 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 dis-
	      ambiguate	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, other-
	      wise the original	filename is used.  If the remote-directory ar-
	      gument 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 op-
	      tions), and extra	(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	Re-
	      quest 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.

     windowsize	[size]
	      Sets the TFTP windowsize option in TFTP Read Request or Write
	      Request packets to [size]	blocks as specified in RFC 7440.
	      Valid values are between 1 and 65535.  If	no windowsize is spec-
	      ified, then the default windowsize of 1 block will be used.


     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).

     RFC 7440: TFTP Windowsize Option.

     The non-standard rollover and blksize2 TFTP options are mentioned here:

     Extending TFTP,

     The tftp command appeared in 4.3BSD.

     Edwin Groothuis <> performed a major rewrite of the
     tftpd(8) and tftp code to support RFC2348.

     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 dif-
     ficult 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.

FreeBSD	13.0			 March 2, 2020			  FreeBSD 13.0


Want to link to this manual page? Use this URL:

home | help