I've been using the "config replace" functionalty lately in GNS3 (0.8.6) and it's worked quite well for me so I'd thought I'd share my experience getting it working.
Previously I used to just create a new GNS3 project for each major section and copy the configs (after changing the file exention to .cfg) into the "configs" directory for the project. With the way the v5 Workbook is setup that process can get very tedious since each section was designed to start with a specific config. I like the v5 format a lot better because it's easy to drop in and perform any task quickly, so I figured it'd be worth the time investment to get this working.
To get this to work, I setup a TCL script that I pasted in each of the routers so they would download their specfic config to the disk0: from a TFTP server (I extracted the initial configs zip file into the root of the TFTP server).
Each router will use the same config with TWO EXCEPTIONS - 1) use a unique IP for the purpose of simultanous TFTP transfers, and 2) you need change the "RX.txt" in the copy tftp command at the bottom of the script for each router.
I'm running 15.2(4)M6 IOS.
The TCL script (and some prescript commands) looks like this:
config t
file prompt quiet
int f1/1
!Use a unique IP for each router if you want to be able to run more than one router at the same time
ip address 192.168.100.102 255.255.255.0
no shut
end
format disk0:
!
!
!
!
tclsh
foreach X {
authenticating.bgp.peerings
basic.bgp.routing
basic.bgp.routing.with.aggregation
basic.eigrp.routing
basic.ip.addressing
basic.layer.2.switching
basic.ospf.routing
basic.rip.routing
bgp.confederation
bgp.disable.connected.check
bgp.full
bgp.next.hop.processing.manual.modification
bgp.next.hop.processing.next.hop.self
bgp.over.gre
bgp.redistribute.internal
bgp.remove.private.as
bgp.update.source
catalyst.multicast
dmvpn
ebgp.multihop
ebgp.with.r9.to.r10
eigrpv6.basic
eigrpv6.initial
ibgp.route.reflection
ibgp.synchronization
initial.bgp
initial.bgp.base
initial.dhcp.authorized.arp
initial.dhcp.information.option
initial.eigrp
initial.multicast
initial.ospf
initial.rip
inter.domain.multicast
inter.domain.multicast.msdp
ipsec.vpn
ipv6.global.initial
ipv6.initial
ipv6.multicast.initial
ipv6.nbma.initial
ipv6.redistribution.initial
lan.switching.initial.spanning.tree
lan.switching.initial.vtp
large.scale.ibgp.route.reflection
mpls.bgp.soo.attribute
mpls.eigrp.site.of.origin
mpls.internet.access
mpls.label.filtering
mpls.ldp
mpls.mp.bgp.prefix.filtering
mpls.mp.bgp.vpnv4
mpls.ospf.sham.link
mpls.pe.ce.routing.with.bgp
mpls.pe.ce.routing.with.eigrp
mpls.pe.ce.routing.with.ospf
mpls.pe.ce.routing.with.rip
mpls.vpn.performance.tuning
mpls.vrf.lite
ospfv3.basic
ospfv3.initial
ripng.initial } { copy tftp://192.168.100.253/$X/R2.txt disk0:$X.txt
}
tclquit
!
!
Replace the config with this syntax:
config replace disk0:authenticating.bgp.peerings.txt force
(The command is identical for all routers so you can send this command to all the routers simulatiously.)
A few of caveats though:
-I noticed intermittent packet loss when using the gig interfaces, so all the configs have been updated to FastEthernet
-In certain cases, I've found that sometimes the interface IPs aren't copied over during the config replace. This seems to happen most often when BGP has been enabled on the old config. The workaround is simple, I do a config replace with the disk0:blank.txt config, and then do a config replace with the actual config I want to use.
-Some of the recently released configs (IPv6) have a different encoding than the rest, so the router rejects these configs. There's a number of ways to fix this, but for now I've been doing it manually. I've posted feedback in the workbook so see if they could update the configs so they have encoding that is compatable with this.
What I found really useful with this method is now I can just copy the disk0: files that are stored in the project's working directory, and move them to another project and all the configs will be preloaded on there.
I didn't go into too much detail here, so if people are interested I can dive a little deeper. Also I can share my GNS3 configuration files and all the disk0's for each router if anyone is interested (and it's OK to post :) ).
I hope this helps!
-Jason