In case that you don't already know, in the latest IOS (> 12.4(15)T) you can use extended-range vlans (1006-4094) in your dynamips router/switch (using the NM-16ESW module). Also the vlan database mode is not recommended anymore and you can use the latest config-vlan submode. That way you can replicate more closely the various vendor labs.
I'm using a 3725 as switch, so this is its config in the net file:
[[3725]]
image = /usr/share/cisco-ios/c3725-adventerprisek9-mz.124-15.T5.extracted.bin
ram = 148
disk0 = 8
disk1 = 0
# The idlepc value hasn't been tested extensively, so it might not work in your case.
idlepc = 0x6148b594
The tricky part is that you don't get any indication of this capability; it's like a hidden command. But if you try to configure it, it'll be accepted and it'll work fine.
SW1#conf t
Enter configuration commands, one per line. End with CNTL/Z.
SW1(config)#vlan ?
accounting VLAN accounting configuration
ifdescr VLAN subinterface ifDescr
SW1(config)#vlan 2567
SW1(config-vlan)#name VLAN-2567
SW1(config-vlan)#^Z
SW1#
Configure this vlan under an interface:
SW1#conf t
Enter configuration commands, one per line. End with CNTL/Z.
SW1(config)#int f1/1
SW1(config-if)#switchport access vlan ?
<1-4094> VLAN ID of the VLAN when this port is in access mode
SW1(config-if)#switchport access vlan 2567
SW1(config-if)#^Z
SW1
Verify the vlan:
SW1#sh vlan-sw br
VLAN Name Status Ports
---- -------------------------------- --------- -------------------------------
1 default active Fa1/0, Fa1/4, Fa1/5, Fa1/6
Fa1/7, Fa1/8, Fa1/9, Fa1/10
Fa1/11, Fa1/12, Fa1/13, Fa1/14
Fa1/15
13 VLAN0013 active
1002 fddi-default act/unsup
1003 token-ring-default act/unsup
1004 fddinet-default act/unsup
1005 trnet-default act/unsup
2567 VLAN-2567 active Fa1/1
Verify the spanning-tree:
SW1#sh spanning-tree vlan 2567
VLAN2567 is executing the ieee compatible Spanning Tree protocol
Bridge Identifier has priority 32768, address c200.04f8.0001
Configured hello time 2, max age 20, forward delay 15
We are the root of the spanning tree
Topology change flag set, detected flag set
Number of topology changes 2 last change occurred 00:00:19 ago
from FastEthernet1/2
Times: hold 1, topology change 35, notification 2
hello 2, max age 20, forward delay 15
Timers: hello 1, topology change 16, notification 0, aging 300
Port 42 (FastEthernet1/1) of VLAN2567 is forwarding
Port path cost 19, Port priority 128, Port Identifier 128.42.
Designated root has priority 32768, address c200.04f8.0001
Designated bridge has priority 32768, address c200.04f8.0001
Designated port id is 128.42, designated path cost 0
Timers: message age 0, forward delay 0, hold 0
Number of transitions to forwarding state: 1
BPDU: sent 193, received 0
Extended-range VLANs are not saved in the VLAN database; they are saved in the switch that runs the configuration file.
SW1#sh run | b vtp
vtp mode transparent
!
vlan 2567
name VLAN-2567
!
If you get the following message while trying to configure the vlan under an interface, try to shut the interface, reenter the vlan and then unshut the interface:
SW1#conf t
Enter configuration commands, one per line. End with CNTL/Z.
SW1(config)#int f1/1
SW1(config-if)#switchport access vlan 2567
% Warning: port will be inactive in non-ethernet VLAN
SW1(config-if)#^Z
SW1#sh int f1/1 switchport
Name: Fa1/1
Switchport: Enabled
Administrative Mode: static access
Operational Mode: static access
Administrative Trunking Encapsulation: dot1q
Operational Trunking Encapsulation: native
Negotiation of Trunking: Disabled
Access Mode VLAN: 2567 ((Inactive))
Trunking Native Mode VLAN: 1 (default)
Trunking VLANs Enabled: ALL
Trunking VLANs Active: 2567
Protected: false
Priority for untagged frames: 0
Override vlan tag priority: FALSE
Voice VLAN: none
Appliance trust: none
SW1#conf t
Enter configuration commands, one per line. End with CNTL/Z.
SW1(config)#int f1/1
SW1(config-if)#shut
SW1(config-if)#no switchport access vlan 2567
SW1(config-if)#switchport access vlan 2567
SW1(config-if)#no shut
SW1(config-if)#^Z
SW1#sh int f1/1 switchport
Name: Fa1/1
Switchport: Enabled
Administrative Mode: static access
Operational Mode: static access
Administrative Trunking Encapsulation: dot1q
Operational Trunking Encapsulation: native
Negotiation of Trunking: Disabled
Access Mode VLAN: 2567 (VLAN-2567)
Trunking Native Mode VLAN: 1 (default)
Trunking VLANs Enabled: ALL
Trunking VLANs Active: 2567
Protected: false
Priority for untagged frames: 0
Override vlan tag priority: FALSE
Voice VLAN: none
Appliance trust: none
Also, as you may already know, vtp must be in transparent mode if you want to configure extended-range vlans:
SW1#sh vtp status
VTP Version : 2
Configuration Revision : 0
Maximum VLANs supported locally : 36
Number of existing VLANs : 6
VTP Operating Mode : Server
VTP Domain Name :
VTP Pruning Mode : Disabled
VTP V2 Mode : Disabled
VTP Traps Generation : Disabled
MD5 digest : 0xF5 0xBA 0x45 0x80 0xA7 0x6B 0x76 0x88
Configuration last modified by 0.0.0.0 at 3-1-02 00:07:07
Local updater ID is 0.0.0.0 (no valid interface found)
SW1#conf t
Enter configuration commands, one per line. End with CNTL/Z.
SW1(config)#vlan 2567
SW1(config-vlan)#name VLAN-2567
SW1(config-vlan)#exit
% Failed to create VLANs 2567
Extended VLAN(s) not allowed in current VTP mode.
%Failed to commit extended VLAN(s) changes.
SW1(config)#
*Mar 1 00:02:23.247: %SW_VLAN-4-VLAN_CREATE_FAIL: Failed to create VLANs 2567: extended VLAN(s) not allowed in current VTP mode
If you get the following error while trying to change vtp mode, you can erase and then squeeze the flash in order to fix it:
SW1#conf t
SW1(config)#vtp mode server
Setting device to VTP SERVER mode
% not enough space on flash to store vlan database. trying squeeze...
squeeze in progress...
% error squeezing flash - (Unknown error 0)
SW1#squeeze flash:
Squeeze operation may take a while. Continue? [confirm]
squeeze in progress...
%Error squeezing flash (Unknown error 0)
SW1#erase flash:
Erasing the flash filesystem will remove all files! Continue? [confirm]
Erasing device... ...NOT erased
Erase of flash: complete
SW1#squeeze flash:
Squeeze operation may take a while. Continue? [confirm]
Squeeze of flash complete
At the end, reload this switch from inside dynagen and everything should be fine.