Boson NetSim and Packet Tracer are two examples of good Cisco networks emulators. They provide you with an opportunity to build networks of switches and routers, interconnect them and deploy several features of IOS. Good enough for beginners, but they have a huge drawback – their IOS simulation is limited. It does not implement a real set of functions real IOS has on board.
Several years before, the only opportunity to play with IOS was interconnection of real Cisco switches/routers. I still consider it was and still is a best way to learn Cisco. Unfortunately, not many people have access to networking hardware and even if they have it, the hardware is usually quite old or outdated. It means that you can run old versions of IOS there.
There is another approach of getting access to operational IOS – running it on a virtual machine. Emulating router’s hardware is not a straightforward task – Cisco uses different architectures in their devices. However, the task was accomplished in Dynamips/Dynagen project. It emulates Cisco hardware in a way so you can real IOS images on top of it. It is suitable to support 3600, 3700 and 2600 series hardware. Both pieces of software are closely interrelated and running together, providing users with a robust CLI interface.
Do not be frightened – CLI is not the only way of controlling your Cisco virtual machines. The tools have a graphical interface – GNS3. GNS3 runs on the top of Dynamips/Dynagen packages and provides GUI for controlling every virtual machine, machines interconnection, their modules and graphical network topology representation. It simply does everything that other graphical simulators can do.