Field Notice: Cisco IOS TFTP Client Cannot Transfer Files Larger than 16MB in Size
This problem is two-fold.
Firstly, current Cisco IOS? images do not support more than 16MB in size for Trivial File Transfer Protocol (TFTP).
The second issue is that most UNIX TFTP servers have this classic bug but no one has noticed this before now. Solaris UNIX TFTP servers, which are those most widely used, do not support TFTP file sizes of more than 16MB. Linux and FreeBSD support file sizes at 32MB.
Cisco has created a fix for this, which is identified by Cisco Bug ID DDTS CSCds46280.
Cisco IOS Software TFTP support can upload or download a file of16MB or smaller in size. In the past, this has not been an issue, due to Cisco IOS image sizes being smaller than 16MB.
Shown below is a standard practice used to TFTP Cisco IOS images from a TFTP server to a Cisco device. The symptom occurs during the download. The Cisco IOS image has not 100% downloaded and the system displays the following error message:
If you miss the download screen, you can verify if 100% of the file has been downloaded using the show flash command. If the file has not been downloaded 100%, the output displays an ED and type as follows:
Let’s look at this in more detail:
This problem occurs with both TFTP clients on the IOS routers and the TFTP server on Solaris UNIX. The interim solution is to use remote copy protocol (rcp) and File Transfer Protocol (FTP) copy commands on IOS routers and copy the image file into the flash memory of the IOS routers. See below for details on rcp and FTP image download instructions. We also look at how to verify an image in a Cisco router.
Copying an Image from an rcp Server to a Flash Memory File System
You can copy a system image from an rcp network server to a Flash memory file system.
If you copy the configuration file to a personal computer which is being used as a file server, this computer must support remote shell protocol (rsh).
Understanding the rcp Username
The rcp protocol requires a client to send a remote username on each rcp request to a server. When you copy an image from the router to a server using rcp, the Cisco IOS software sends the first valid username from those listed below:
The remote username specified in the copy command, if one is specified.
The username set by the ip rcmd remote-username command, if the command is configured.
The remote username associated with the current TTY (terminal) process. For example, if the user is connected to the router through Telnet and has been authenticated through the username command, the router software sends the Telnet username as the remote username.
The router host name.
For the rcp copy command to execute successfully, you must define an account on the network server for the remote username. If the server has a directory structure, the system writes or copies the configuration file or image relative to the directory associated with the remote username on the server. The path for all files and images to be copied begins at the remote user’s home directory. For example, if the system image resides in the home directory of a user on the server, specify that user’s name as the remote username.
Copying from an rcp Server to Flash Memory Tasks
To copy an image from an rcp server to Flash memory, first make a backup copy of the current system or bootstrap software image, then use the following commands while in privileged EXEC mode:
Reply to any router prompts for additional information or confirmation. This prompt depends on how much information you provide in the copy command and the current setting of the file prompt command.
Example: Copying From an rcp Server to Flash
In the following example, we are copying a system image named mysysim1 from the netadmin1 directory on the remote server named SERVER1.CISCO.COM, with an IP address of 172.16.101.101, to Flash memory.
To ensure that enough Flash memory is available to accommodate the system image you are copying, the Cisco IOS software allows you to erase the contents of Flash memory first.
Example: Copying From an rcp Server to Partitioned Slot0
In the following example, we are copying the file /tftpboot/gate/c3600-i-mz on the rcp server at 172.23.1.129 to partition 3 in slot 0. Since no username is specified, the router uses the default rcp remote username.
Copying an Image from an FTP Server to a Flash Memory File System
Let’s look at how to copy a system image from an FTP server to a Flash memory file system.
Understanding the FTP Username and Password
The FTP protocol requires a client to send a remote username and password on each FTP request to a server. When you copy a configuration file from the router to a server using FTP, the Cisco IOS software sends the first valid username from those listed below:
The username specified in the copy command, if a username is specified.
The username set by the ip ftp username command, if the command is configured.
The router sends the first valid password from those listed below:
The password specified in the copy command, if a password is specified.
The password set by the ip ftp password command, if the command is configured.
The username and password must be associated with an account on the FTP server. If you are writing to the server, you must make sure that the FTP server is properly configured to accept the FTP write request from the user on the router.
If the server has a directory structure, the configuration file or image is written to or copied from the directory associated with the username on the server. For example, if the system image resides in the home directory of a user on the server, specify that user’s name as the remote username.
Please refer to the documentation for your FTP server for more details.
Use the ip ftp username and ip ftp password commands to specify a username and password for all copies. Include the username in the copy command if you want to specify a username for that copy operation only.
Copying from an FTP Server to Flash Memory Tasks
To copy a system image from an FTP server to a Flash memory file system, first make a backup copy of the current software image or bootstrap image, then use the following commands while in EXEC mode:
Note: For IOS routers to be able to boot with TFTP images greater than 16MB at the boot prompt, all affected platforms should upgrade their BootROM or Bootimage versions with the latest images of the code containing the fix DDTS CSCds46280.
To follow the bug ID link below and see detailed bug information, you must be a registered user and you must be logged in.
Cisco IOS Versions Affected
The following Cisco IOS images have a file size greater than 15MB. Later releases will also increase the file sizes and other images may become greater than 15MB.
Cisco IOS Software Images with a File Size Greater than 15MB
Cisco IOS Major Release
How To Upgrade Software
To obtain the next maintenance releases, click on the following link: Software Downloading from CCO via World Wide Web ( registered customers only ). You can also consult the Software Downloading Process and follow the instructions given there.
TFTP Server Defect on Solaris
Sun’s TFTP server and client programs (/usr/ucb/tftp and /usr/sbin/in.tftpd) both have a 16MB file size limitation. SunOs TFTP and in.tfptd programs (unlike Linux, FreeBSD, and others) seem to use a signed short value instead of unsigned short value for the tftp block numbers. This means that they support up to 32768 block numbers, whereas the maximum upper limit for TFTP block numbers is 2 x 32768 = 65536 blocks (each block is 512 bytes long). This effectively reduces the maximum file size of Sun’s Solaris 2.5.1/2.6 to 16MB instead of 32MB.
Solaris 2.6 patch for TFTP #107565-02 does not have this bug fixed at the time this Field Notice was written.
Solaris 2.7 patch for TFTP #108301-02 has fixed the 16MB limitation.
Solaris 7 patch for TFTP #108301-02 has fixed the 16MB limitation.
Solaris 8 patch for TFTP #108964-04 has fixed the 16MB limitation.
Only Customers with a SUN contract can access the following patch report:
For More Information
If you require further assistance, or if you have any further questions regarding this field notice, please contact the Cisco Systems Technical Assistance Center (TAC) by one of the following methods:
Receive Email Notification For New Field Notices
Product Alert Tool – Set up a profile to receive email updates about reliability, safety, network security, and end-of-sale issues for the Cisco products you specify.
Posted In: NEWS
field, Services, Software
Leave a Comment