Dynagen README
Version 0.9.2
For documentation, refer to the tutorial in the docs directory, and the sample network files in the sample_labs directory. To see usage examples for all options, refer to the "all_config_options.txt" file in the sample_labs directory. Also be sure to visit the Dynamips web site at http://www.ipflow.utc.fr/index.php/Cisco_7200_Simulator.
This version of Dynagen requires at least version 0.2.7-RC2 of Dynamips. The Windows installer package requires at least Windows XP SP2. For earlier versions of Windows, replace the Dynamips binary with the Windows 2000 version as described in the Dynagen FAQ section of the tutorial.
Known Issues
============
* "save" and "idlepc save" commands may reformat the indentation of your network file and add an explicit "model" definition in the router section
* Gig interfaces on the NPE-G2 cannot currently be used.
Changelog
=========
Version 0.9.2
* Fixed required version string
* Removed false warning message when autostart is used at the router level
* Added some info and fixed some misspellings in all_config_options.txt
* Added the console command. It is identical to the telnet command. It occurred to me that "telnet" is a misleading command since a connection to the console is actually being made. But you can use which ever one you prefer, and you can abbreviate "console" as "con" if you wish.
Version 0.9.1
* added "oldidle" option for use in network files. Setting this to true allows you to use pre-0.2.7-RC2 idlepc values. This disables direct jumps between JIT blocks (new to 0.2.7 RC2). Use this a the top level of your network file, or in the defaults or specific router definition.
* sparsemem was misspelled in all_config_options.txt
* Built-in motherboard Ethernet/fastethernet interfaces now are automatically created on 2600 platforms.
* Improved checking for attempts to insert network modules into unsupported slots, and the error now indicates the offending router name.
* I totally neglected to include the 2611XM. Sorry 2611XM!
* 2621, 2621XM, and 2651XM mistakenly only got one integrated FE instead of two.
* Could not use gigabit adapters properly on 7200s
* This version performs much more rigorous checking for the validity of adapters against routers, and now outputs warnings for config items that it cannot parse and ignores. This should help with troubleshooting network files.
* Added a check for minimum required version of dynamips
* Added a check for trying to run idlepcget when an idlepc value has already been applied
* Fixed misc idlepc get/save bugs. BTS 143, BTS 111 and BTS 116
* "save" only saved configs on the first server of a multiserver config when both instances of dynamips were running on the same system
* fixed NPE-G2 with ghostios bug
* Other misc general error handling and message improvements
Version 0.9.0
* Added packet capture, via the "capture" command. Capture files are written to the host on which the dynamips server is running in PCAP format (i.e. can be opened with tcpdump, Wireshark, etc.)
* Added support for all the new 2600 models Chris added in 0.2.7.
* Added support for sparsemem. Enable with "sparsemem = true" at either the top level of the network file or in the device defaults or device section
* New adapters for 7200s: PA-2FE-TX, PA-GE, C7200-IO-2FE, C7200-IO-GE-E. Specify the new IO cards with "slot0" options, and the new adapters with "slotx" options, where x is 1-6.
* New NPEs for 7200s: npe-g1, npe-g2
Version 0.8.3
* Added a "--notelnet" command line option to make integration with gDynagen easier. See http://gdynagen.sourceforge.net
Version 0.8.2
* Ghost instances are now deleted once the mmap file has been created. This means there is no longer a ghost instance consuming process VM space.
* Ghost size is automatically calculated. Use of the "ghostsize" option should no longer be necessary. Thanks to this and the previous bugfix, I don't think there are any situations (other than using compressed images) that should cause ghostios to break otherwise functioning labs.
* When using multiple dynamips servers running on the same host, ghost files are shared among the dynamips processes if possible.
* Added "idlemax", "idlesleep', and "showdrift" idlepc commands for advanced manipulation and diagnostics of idlepc. Added "idlemax" and "idlesleep" network file options to go along with the CLI commands. The network file options aren't supported with in dynamips yet (as of 0.2.6-RC4), so don't try to use them.
* Rewrote send() to fix BTS #94.
* Added check for non-running routers in telnet command. BTS #102
Version 0.8.1
* So, as great as the Ghost RAM feature is, it does have the potential to break existing labs (for example, if the lab uses compressed images.) So for safety and to preserve backwards compatibility ghostios now defaults to False. You can turn it on with "ghostios = true" in either the router definition, the device defaults section, or at the top level of your network file. As usual, see all_config_options.txt for more info.
* Fixed bug that caused crash when using ghostios and image paths that do not include any directory separator characters.
* Trying to manually start a nonexistent router caused dynagen to crash.
* Ghost instances are only created if two or more routers on the same dynamips host use the same IOS image. This optimization eliminates unnecessary host virtual memory consumption, so as not to run into process vm size limits unnecessarily.
* Added an option to manually tweak the virtual ram allocated to Ghost images. Set this with "ghostsize = ..." in either the router definition, the device defaults section, or at the top level of your network file. The default is whatever that class of router would normally use.
Version 0.8.0
* 2691, 3725, and 3745 support. Usage is as you would expect, but see all_config_options.txt for documentation.
* Support for the IOS ghosting feature added in 0.2.6-RC3. IOS ghosting takes advantage of the mmap() "MAP_PRIVATE" flag to allocate a shared memory mapped file for IOS images. So instead of each virtual router storing an identical copy of IOS in its virtual RAM, the host will allocate one shared region of memory that they will all share. If you are running 10 routers all with the same IOS image, and that image is 60 MB in size you will save 9*60 = 540 MB of real RAM when running your lab with this feature. If you are using mmap (which is on by default) then IOS ghosting will automatically be implemented and you don't need to make any changes to your labs to take advantage of it. You can turn it off on a per router (or per device default section) with "ghostios = False" if you so desire. If you are using more than one IOS image in your lab then the feature still works, but the sharing will only occur among routers that are using the same image. The ghost file created is based on the name of your IOS image, so be sure that all your images have different names in a given lab (all the more reason to use the image naming convention recommended in the tutorial.)
* Corrected some minor typos in all_config_options.txt (thanks Dmitry M)
* Added error checks for malformed or non-existent devices specified in push/save/import/export commands. BTS #94
* ctrl-c then return now exits the CLI instead of crashing. BTS #89
* With RC3 push / extract are much improved so import/export/push/save should all work much better. I removed the workaround code that ensured routers were started before push / extract operations since that is no longer necessary with 0.2.6-RC3.
* The Windows installer no longer overwrites dynagen.ini if it exists (so as not to obliterate customizations). In all cases it creates a file dynagen.ini.new that might contain additional options. You should manually compare your dynagen.ini and this file to see if any of the new options are useful to you.
Version 0.7.0
* Added idlepc commands, for generating, te