Home > LAB > Xmodem – do you remember how slow it is?

Xmodem – do you remember how slow it is?

After a long time I had a chance to use my home lab. I have a 2600 router that was waiting for a while to be added to the lab setup. The end of this long weekend was a great opportunity to reconnect to the Cisco in me and get some work done.

I’ve connected to the router using a console cable and this is what I got on-screen:

System Bootstrap, Version 11.3(2)XA4, RELEASE SOFTWARE (fc1)
Copyright (c) 1999 by cisco Systems, Inc.
TAC:Home:SW:IOS:Specials for info
C2600 platform with 24576 Kbytes of main memory

boot: cannot determine first file name on device “flash:”

I found that the IOS file was deleted and had to load a new IOS file. Since I was already on console I used the Xmodem command, using the following syntax:

rommon 1 > xmodem -c c2600-i-mz.123-26.bin

This is the output that follow my command (asking for my approval):

Do not start the sending program yet…
File size           Checksum   File name
4487708 bytes (0x447a1c)   0x8f40    c2600-i-mz.121-12.bin (deleted)

WARNING: All existing data in bootflash will be lost!
Invoke this application only for disaster recovery.
Do you wish to continue? y/n  [n]:  y
Ready to receive file c2600-i-mz.123-26.bin …

Now I had to send the file to the router and wait. The one thing I forgot is how slow this copy process run. Check the screen shot:

Yes, unbelievable 810 cps which translate to (about) 2:40 hours for a 7.5mb file!

Since it is totally insane I switched to the IP system. I used my Netgear wireless router and plugged the router to one of the 4 ports on the back. Since my lab PC is on the same network all I had to do is pick up an unused IP and assign it to the router.
This is a good reminder for anyone who’s got to use tftp via rommon:

rommon 6 > set
rommon 7 > IP_ADDRESS=
rommon 8 > IP_SUBNET_MASK=
rommon 10 > TFTP_SERVER=
rommon 11 > TFTP_FILE=c2600-i-mz.123-26.bin
rommon 12 > tftpdnld

TFTP_FILE: c2600-i-mz.123-26.bin

Invoke this command for disaster recovery only.
WARNING: all existing data in all partitions on flash will be lost!
Do you wish to continue? y/n:  [n]:  y

Receiving c2600-i-mz.123-26.bin from !!!!!.!!!!!!!!!!!!!!.!!!!
File reception completed.
Copying file c2600-i-mz.123-26.bin to flash.
Erasing flash at 0x607c0000
program flash location 0x60440000
rommon 13 >

You can imagine how fast this process completed…

  1. July 8, 2010 at 11:11 pm

    I’m here with Aaron. sure, I can change the settings any time but in a production environment you want to keep it simple and 9600 is the common way of work.
    You can also argue and say that using IP would be the best way to begin with and why would I spend a moment on Xmodem but isn’t it why we use labs?

  2. July 6, 2010 at 9:03 am

    I don’t like the idea of changing the port speed at all. It creates a one-off, non-standard setup that I’m sure to forgot about down the line when I’m on the console and can’t get a prompt. That’s exactly why the bootstrap has a primitive IP setup included. 🙂

  3. Roland
    July 6, 2010 at 3:52 am

    Have you set console speed to 115200 bps???


    Using the ROMmon confreg Utility

    This procedure is valid for both the Cisco 2600 and 3600 Series Routers.

    rommon 2 > confreg

    Configuration Summary
    enabled are:
    load rom after netboot fails
    console baud: 9600
    boot: image specified by the boot system commands
    or default to: cisco2-C3600

    do you wish to change the configuration? y/n [n]: y
    enable “diagnostic mode”? y/n [n]:

    !— Pressing “Enter” accepts the default (value between the brackets).

    enable “use net in IP bcast address”? y/n [n]:
    disable “load rom after netboot fails”? y/n [n]:
    enable “use all zero broadcast”? y/n [n]:
    enable “break/abort has effect”? y/n [n]:
    enable “ignore system config info”? y/n [n]:
    change console baud rate? y/n [n]: y
    enter rate: 0 = 9600, 1 = 4800, 2 = 1200, 3 = 2400
    4 = 19200, 5 = 38400, 6 = 57600, 7 = 115200 [7]: 7
    change the boot characteristics? y/n [n]:

    Configuration Summary
    enabled are:
    load rom after netboot fails
    console baud: 115200
    boot: image specified by the boot system commands
    or default to: cisco2-C3600

    do you wish to change the configuration? y/n [n]:

    You must reset or power cycle for new config to take effect


  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: