Well – just began my CCIE SP study in earnest today – after almost a year of procrastination!
I got a dedicated Ubuntu box, and run Dynamips there. GNS3 is running on my Mac, leaving the dedicated machine doing the hard work.
As you probably know, you can’t simulate a Catalyst 3550 in Dynamips. The best you can do is to use the built-in “ethernet switch” (which you can’t log into) or use an NM-16ESW in a router as an ethernet switch.
This leads to an additional problem. The ethernet switch module uses the old method of storing VLAN information – i.e. the ‘vlan.dat’ file. The VLANs need to be created in a special VLAN mode that you enter by typing ‘vlan database’. You create the VLANs there, and when you exit, the database of VLANs is stored in the vlan.dat file, which by default, resides in flash:.
With a 3640 in my lab, I was getting the following when creating a VLAN in this mode:
SPRack1R8#vlan database SPRack1R8(vlan)#vlan 10 VLAN 10 added: Name: VLAN0010 SPRack1R8(vlan)#exit % not enough space on flash to store vlan database. trying squeeze...First create squeeze log by erasing the entire device % error squeezing flash - (Missing or corrupted log) Error on database apply 40: NV storage failure Use 'abort' command to exit SPRack1R8(vlan)#
You can’t squeeze the flash without erasing it. I’ve got my base config there (stored using the command ‘copy running-config SW2-R8Base’) which I use every time I reset my pod. So I copy that to nvram: and then erase/squeeze the flash: filesystem:
SPRack1R8#dir Directory of flash:/ 1 -rw- 1229 SW2-R8Base 8388604 bytes total (0 bytes free) SPRack1R8#dir nvram: Directory of nvram:/ 123 -rw- 1229 startup-config 124 ---- 24 private-config 1 -rw- 0 ifIndex-table 129016 bytes total (126687 bytes free) SPRack1R8#copy SW2-R8Base nvram: Destination filename [SW2-R8Base]? 1229 bytes copied in 0.040 secs (30725 bytes/sec) SPRack1R8# SPRack1R8#dir nvram: Directory of nvram:/ 123 -rw- 1229 startup-config 124 ---- 24 private-config 1 -rw- 0 ifIndex-table 2 -rw- 1229 SW2-R8Base 129016 bytes total (124639 bytes free) SPRack1R8#erase flash: Erasing the flash filesystem will remove all files! Continue? [confirm] Erasing device... eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee ...erased Erase of flash: complete SPRack1R8#squeeze flash: Squeeze operation may take a while. Continue? [confirm] squeeze in progress... Squeeze of flash complete SPRack1R8#
Now it all works fine. Create the VLAN, and no errors are encountered…
SPRack1R8#vlan database SPRack1R8(vlan)#vlan 10 VLAN 10 added: Name: VLAN0010 SPRack1R8(vlan)#exit APPLY completed. Exiting.... SPRack1R8#wr Building configuration... [OK] SPRack1R8#
Some postings on the Internet say that flash: isn’t emulated as a persistent filesystem, so when you reboot, you may find your VLANs are no longer there. However this does not appear to be the case any more – at least not with the combination of things I am running. So long as I save my config before rebooting, vlan.dat is still in flash: after the reboot, and the VLANs show up when typing ‘show vlan-switch’.
For interest, here are the versions of things I am running:
Ubuntu server with 2.6.24-19-generic kernel
3640 code c3640-jsx-mz.124-16b.bin
GNS3 0.5 beta for Mac