Cisco: Cisco 26xx/36xx network module compatibility.

Short story

NM-2E anything nor any NM-XFE will work in Cisco 2620. This includes NM-2E2W, NM-1FE, NM-2FE, etc. Same with HPPI and HSSI cards. Here is a list of supported NMs.

To me this looks like a deliberate crippling of 26xx platform just to convince people to buy bigger boxes, because NM-4E is supported under 2620, so in NM-2E2W it’s not a backplane speed issue.

Long story

I ended up with a Cisco 2620 handed to me. It came with only a single WIC slot populated with WIC-1DSU-T1, so it had an empty NM slot, and an empty second WIC slot, plus built in 10/100 FastEthernet port.

I figured that I have three NM-2E2W interfaces in my Cisco 3640, yet I am only using 4 uplinks, so I should just move one NM-2E2W to the 2620, turning it into a mean routing machine, with 3 ethernet interfaces, plus a serial interface. Then I could cross-connect 2620 and 3640 over serial, and use HSRP or something fancy, or, if worst comes to worst, just sell 3640 – I can get away with just 3 interfaces.

So I transfered NM-2E2W to the 2620.

It booted up, and I saw a curious syslog message:

00:00:08: SERVICE_MODULE(Serial0/0): self test finished: Passed
00:00:09: %PA-2-UNDEFPA: Undefined Port Adaptor type 30 in bay 1
00:00:13: %LINK-3-UPDOWN: Interface Serial0/0, changed state to down

That’s weird, I thought. I got distracted, however, as I had to drop to rommon, change config register to 0x2401, write a new config file in to the router, etc. But sh ver was showing me only

cisco 2620 (MPC860) processor (revision 0x102) with 61440K/4096K bytes of memory.
Processor board ID XXXXXXXXXXX (XXXXXXXXX)
M860 processor: part number 0, mask 49
Bridging software.
X.25 software, Version 3.0.0.
1 FastEthernet/IEEE 802.3 interface(s)
1 Serial network interface(s)
32K bytes of non-volatile configuration memory.
16384K bytes of processor board System flash (Read/Write)

which is not exactly useful as I generally use ethernet, and short of doing something fancy, like dot1q, router in it’s current state is not that functional.

I remembered times from debugging Cisco 7204s at Cyberus, where different IOS loads would recognize different PAs. 2620 had a c2600-ik9o3s3-mz.123 load that was a few years old, so I figured that maybe I need a new IOS. No problems, a recent security advisory provided me with an excuse to call up TAC and ask for new IOS.

When calling TAC in case like this, one has to be aware that TAC will only offer a like for like update. In other words, if you have 12.0.x, you will get a 12.0.Y image, where Y > X, but still, same feature set, same IOS revision. Makes sense, as I am not a paying customer.

Basic concern for me was to get an IOS load that has 3DES support. 3DES support means SSH capable load. Sadly, Cisco is in the States, which has a somewhat silly law about encryption being more dangerous then nukes. Luckily the image on the router was already with the right features. So I called up TAC, spent about 2 hours on hold with them, talking to their wonderful people. I like TAC – they talk to me, even though I don’t have a support contract.

End result was that they gave me links to download c2600-ik9o3s3-mz.123-15b.bin and c3640-ik9s-mz.123-16.bin .
I’ve attempted to load the former onto the 2620, however there was a disappointment – Cisco’s latest and greatest is a few hundred K larger then the 16meg flash I have in 2620:

c2620#sh flash

System flash directory:
File  Length   Name/status
  1   11072164  c2600-ik9s-mz.122-17a.bin  
  2   309208   crashinfo_19930301-000024  
[11381500 bytes used, 4871428 available, 16252928 total]
16384K bytes of processor board System flash (Read/Write)

c2620#
stany@gilva:/private/tftpboot/works[11:29 PM]$ ls -la c2600-ik9o3s3-mz.123-15b.bin 
-rw-r--r--   2 stany  501  16303356 Sep 15 20:49 c2600-ik9o3s3-mz.123-15b.bin
stany@gilva:/private/tftpboot/works[11:30 PM]$ 

Way to go Cisco!

No, problems, if this load would recognize my NM-2E2W, I will tftpboot it each time.
I dropped to rommon, set a bunch of variables, and did tftpdlnt.

On my MacOS X box I did:

root@gilva:/private/tftpboot[11:36 PM]# ln ~stany/c2600-ik9o3s3-mz.123-15b.bin test.bin
root@gilva:/private/tftpboot[11:36 PM]# /usr/libexec/tftpd -d -s /private/tftpboot/
root@gilva:/private/tftpboot[11:37 PM]# netstat -an | grep *.69
udp4       0      0  *.69                   *.*                    
udp6       0      0  *.69                   *.*                    
root@gilva:/private/tftpboot[11:37 PM]# 

On the Cisco I dropped into rommon by pressing break on the boot-up, and checked that my settings made sense:

rommon 1 > set
PS1=rommon ! >
IP_ADDRESS=192.168.82.249
IP_SUBNET_MASK=255.255.255.0
DEFAULT_GATEWAY=192.168.82.254
TFTP_SERVER=192.168.82.161
TFTP_FILE=test.bin
TFTP_VERBOSE=2
?=38
RET_2_RTS=19:08:22 EST Sun Feb 28 1993
RET_2_RCALTS=
CRASHINFO=flash:crashinfo_19930301-000024
BSI=0
RET_2_RUTC=0
rommon 2 >

All tftpdlnd cares about are valid IP_ADDRESS IP_SUBNET_MASK DEFAULT_GATEWAY TFTP_SERVER and TFTP_FILE. TFTP_VERBOSE can be set to 0 (no verbosity), 1 (somewhat verbose, default) and 2 (tell me everything).

test.bin is a reasonable name for the file – it’s short and easy to type.

Once I verified that everything was in order, I proceeded to download the image and executing it in memory (-r option). This is, BTW, a very useful way of testing IOS images, when you have something in flash that you know works, and you don’t have space for multiple images on flash. This way you can test new image, knowing that a power-cycle will get rid of it.

rommon 2 > tftpdnld -r

         IP_ADDRESS: 192.168.82.249
      IP_SUBNET_MASK: 255.255.255.0
     DEFAULT_GATEWAY: 192.168.82.254
         TFTP_SERVER: 192.168.82.161
           TFTP_FILE: test.bin

Performing tftpdnld over Fast Enet.
Interface is operating at: 100Mbps/HALF DUPLEX
Initializing interface.
Interface link state up.
ARPing for 192.168.82.161
ARP reply for 192.168.82.161 received.  MAC address 00:0d:93:42:2a:96
Receiving test.bin from 192.168.82.161 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!.!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
File reception completed.
program load complete, entry point: 0x80008000, size: 0xf8c3e0
Self decompressing the image : ########################################################################
#######################################################################################################
######################################################################################## [OK]

Smart Init is enabled
smart init is sizing iomem
  ID            MEMORY_REQ                 TYPE
000094          0X000B3B80 C2600 Single Fast Ethernet
00001E           UNKNOWN port adapter
                0X00098670 public buffer pools
                0X00211000 public particle pools
TOTAL:          0X0035D1F0

If any of the above Memory Requirements are
"UNKNOWN", you may be using an unsupported
configuration or there is a software problem and
system operation may be compromised.
Rounded IOMEM up to: 4Mb.
Using 6 percent iomem. [4Mb/64Mb]

              Restricted Rights Legend

Use, duplication, or disclosure by the Government is
subject to restrictions as set forth in subparagraph
(c) of the Commercial Computer Software - Restricted
Rights clause at FAR sec. 52.227-19 and subparagraph
(c) (1) (ii) of the Rights in Technical Data and Computer
Software clause at DFARS sec. 252.227-7013.

           cisco Systems, Inc.
           170 West Tasman Drive
           San Jose, California 95134-1706



Cisco Internetwork Operating System Software
IOS (tm) C2600 Software (C2600-IK9O3S3-M), Version 12.3(15b), RELEASE SOFTWARE (fc1)
Copyright (c) 1986-2005 by cisco Systems, Inc.
Compiled Thu 25-Aug-05 13:39 by ssearch
Image text-base: 0x80008098, data-base: 0x81A13C28


This product contains cryptographic features and is subject to United
States and local country laws governing import, export, transfer and
use. Delivery of Cisco cryptographic products does not imply
third-party authority to import, export, distribute or use encryption.
Importers, exporters, distributors and users are responsible for
compliance with U.S. and local country laws. By using this product you
agree to comply with applicable laws and regulations. If you are unable
to comply with U.S. and local laws, return this product immediately.

A summary of U.S. laws governing Cisco cryptographic products may be found at:
http://www.cisco.com/wwl/export/crypto/tool/stqrg.html

If you require further assistance please contact us by sending email to
export@cisco.com.

cisco 2620 (MPC860) processor (revision 0x102) with 61440K/4096K bytes of memory.
Processor board ID XXXXXXXXXXX (XXXXXXXXXX)
M860 processor: part number 0, mask 49
Bridging software.
X.25 software, Version 3.0.0.
1 FastEthernet/IEEE 802.3 interface(s)
2 Serial network interface(s)
32K bytes of non-volatile configuration memory.
16384K bytes of processor board System flash (Read/Write)

Uncompressed configuration from 1579 bytes to 2531 bytes


Press RETURN to get started!

Still no NM-2E2W!

I telnetted into Cisco, and did sh diag:

c2620#sh diag | beg 88 00
          0x30: 88 00 00 00 00 01 24 01 FF FF FF FF FF FF FF FF

Slot 1:
        Unknown (type 30) Port adapter
        Port adapter is disabled 
        Port adapter insertion time unknown
        EEPROM contents at hardware discovery:
        Hardware revision 1.2           Board revision E0
        Serial number     18783769      Part number    800-01171-05
        FRU Part Number:  NM-2E2W=

        Test history      0x0           RMA number     00-00-00
        EEPROM format version 1
        EEPROM contents (hex):
          0x00: 01 1E 01 02 01 1E 9E 19 50 04 93 05 00 00 00 00
          0x10: 70 00 00 00 00 02 29 17 FF FF FF FF FF FF FF FF


c2620#

In other words, it sees the NM-2E2W, just refuses to deal with it.

Argh!

Eventually, after more googling, I discovered this useful document, that tells me that cisco 2620 is a piece of crap, unless I spend a fortune on NM-4E. Argh.