This is the command dynagen that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator
PROGRAM:
NAME
dynagen - command line interface to dynamips Cisco 7200 Emulator
SYNOPSIS
dynagen [options] configuration file
DESCRIPTION
Dynagen is a text-based front end for Dynamips, that uses the hypervisor mode for
communication with Dynamips. Dynagen simplifies building and working with virtual
networks. Dynagen uses a simple and easy to understand configuration file for specifying
virtual router hardware configurations. Configuration file has a simple syntax for
interconnecting routers, bridges, frame-relay and ATM switches. No need to deal with
NetIO's. Dynagen provides a management CLI for listing devices, starting, stopping,
reloading, suspending and resuming virtual routers.
Dynagen can work in a client server mode, with dynagen running on your Workstation
communicating to dynamips servers running ona back-end server. Dynagen can also control
multiple dynamips servers simultaneously for distributing large virtual networks across
several machines.
Before running dynagen you need to start dynamips:
nice dynamips -H 7200 &
OPTIONS
This program follow the usual GNU command line syntax, with long options starting with two
dashes (`-'). A summary of options is included below.
-n, --nosend
Do not send any command to dynamips.
-d, --debug
Show debugging information.
-h, --help
Show summary of options.
--version
Show version.
CONFIGURATION FILE OPTIONS
Empty lines or lines starting with a hash ('#') are ignored.
Configuration file, in other documentation also called network file, knows three sections:
global section, server section which starts with [...] and device section which start
with [[...]]. Server section and device section can have multiple occurrencies.
Server Section: [<ip-address|hostname>]
Device Section: [[7200|ROUTER|FRSW|ATMSW|ETHSW <name>]] The 7200 section specifies
defaults for all 7200 routers on this Dynamips server. Everything in this section is
optional, and defaults to whatever the default is in Dynamips
Global Configuration variable
autostart <true/false> (Default: True)
By default, all routers are automatically started when a lab is launched. The
autostart keyword overrides this behavior, and the lab must manually be started
(start /all).
Server Configuration variables
port <1-65535> (Default: 7200)
Hypervision port to connect to.
workingdir <path> (Default: None)
Set the directory where Dynamips will store all the device files for this network.
This is the fully qualified path relative to the system running dynamips.
console <1-65535> (Default: 2000)
Base console port. New instances that do not specify a console port will default to
this + the instance number.
udp <1-65535> (Default: 10000)
Set the base UDP port for NIOs.
Device Configuration variables
[[7200]]
The 7200 section specifies defaults for all 7200 routers on this Dynamips server.
Everything in this section is optional, and defaults to whatever the default is in
Dynamips.
image <path/file> (Default: None)
Full path to 7200 IOS image file. This is the fully qualified path relative to the
system running dynamips.
ram <integer> (Default: None) Amount of Virtual RAM to allocate to each router
instance.
rom <integer> (Default: None)
Size of ROM.
nvram <integer> (Default: None)
Size of NVRAM.
disk0 <integer> (Default: None)
Set size of PCMCIA ATA disk0
disk1 <integer> (Default: None)
Set size of PCMCIA ATA disk1
cnfg <path/file> (Default: None)
Configuration file to import. This is the fully qualified path relative to the
system running dynamips.
confreg <hex> (Default: 0x2102) 0x210X where X=0,1,2
Set the configuration register
idlepc <string> (Default: None)
Set the Idle PC value. Include a description here.
exec_area <string> (Default: None)
Set the exec area size.
clock <integer> (Default: None)
Clock divisor (should no longer been needed as of dynamips 0.2.5 RC1)
npe <npe-100|150|175|200|225|300|400> (Default: None)
NPE type.
midplane <std|vxr> (Default: None)
Midplane, either "std" or "vxr"
mmap <binary> (Default: True)
Set to false to use real memory rather than a disk file for router vitural memory.
Conserves RAM at the expense of performance.
[[ROUTER <name>]]
All options from the 7200 section are options here as well, including "autostart".
<name> must be unique in network file.
model 7200 (Default: 7200)
console <1-65535> (Default: None)
Console port. Defaults to the server's base console port (specified in the server
section) + instance number.
aux <1-65535> (Default: None)
Aux port.
slotX <0-X> <PA-C7200-IO-FE|PA-FE-TX|PA-4T|PA-4E|PA-POS-OC3> (Default: None)
Manual PA specification. This is optional, and if not done dynagen will make sane
decisions based on the interface specifications.
slot0 = PA-C7200-IO-FE # Ethernet in slot 0
slot1 = PA-FE-TX # Ethernet in slot 1
slot3 = PA-4T # PA-4T+ in slot 2
slot6 = PA-4E # PA-4E in slot 6
#slotx = PA-POS-OC3 # PA-POS-OC3 in slot x
<local interface> = <remote interface>
Interface specification. Can take the following forms:
f1/0 = R2 f1/0 # Connect to f1/0 on device R2
f2/0 = LAN 1 # Connect to bridged LAN 1
s3/0 = R2 s3/0 # Connect to s3/0 on device R2
s3/1 = F1 1 # Connect to port 1 on device "F1" (a frame relay switch)
s3/2 = F2 1
a4/0 = A1 1 # Connect to port 1 on device "A1" (an ATM switch)
f5/0 = NIO_linux_eth:eth0 # manually specify an NIO
[[ROUTER R2]]
# Interface f1/0 will automatically be created because the interface was
referenced in R1's config
f2/0 = LAN 1 # Connect to bridged LAN 1
s4/0 = F1 2
s4/1 = F2 2
s4/2 = F1 3
a5/0 = A1 2
[[router R3]] # Case is not significant
# Examples of other manually specified NIOs
f1/0 = NIO_gen_eth:\Device\NPF_{B00A38DD-F10B-43B4-99F4-B4A078484487}
f2/0 = NIO_udp:10000:172.0.0.1:10001
f3/0 = NIO_tap:tap0
f4/0 = NIO_unix:/tmp/local:/tmp/remote
f5/0 = NIO_vde:foo:bar
[[ETHSW <name>]]
Define an Ethernet Switch
[[ETHSW S1]]
1 = access 1 # Port 1 is an access port in vlan 1
2 = access 20 # Port 2 is an access port in vlan 20
3 = dot1q 1 # Port 3 is a trunk port (dot1q encapsulation) with native
vlan 1
4 = dot1q 1 NIO_gen_eth:eth0 # Port 4 is trunk port (naitive vlan 1) that is
connected to the host eth0 via the gen_eth NIO
#4 = dot1q 1 NIO_gen_eth:\Device\NPF_{B00A38DD-F10B-43B4-99F4-B4A078484487} #
Same as above, Windows example
[[FRSW <name>]]
Each FRSW section defines a frame relay switch. All keywords are optional
1:102 = 2:201 # Tell the FRSW to switch from port 1, DLCI 102 to port 2,
DLCI 201.
1:103 = 3:301 # and from port 1, DLCI 103 to port 3, DLCI 301
[[FRSW F2]]
1:102 = 2:201
[[ATMSW <name>]]
Define an ATM Switch
1:10 = 2:20 # Port 1, vpi 10 to port 2, vpi 20
#1:10:200 = 2:20:100 # Port 1, vpi 10, vci 200 to port 2, vpi 20, vci 100
EXAMPLES
See /usr/share/doc/dynagen/examples directory
Use dynagen online using onworks.net services