GNS3: OSPF and EIGRP scenario

A ready made GNS3 topology, including 3 interconnected routers in different domains (EIGRP and OSPF) like in the topology below.

Requirements:

– GNS3 or Dynamips install and functional
– Cisco IOS image for 3640 platform with Advanced IP Services

What’s included in the archive:

– routers initial configs
– network diagram
– GNS3 (or Dynamips) config file*
* Check the GNS3 config file for direction

What can you test with this scenario:

– ospf area range command
– ospf summary address command
– advertise loopback interfaces with /24 netmask
– redistribution between OSPF and EIGRP

Load the .net file in GNS3 / Dynamips, apply initial router configuration and you should have working scenario with OSPF and EIGRP routing.

{filelink=1}

How to integrate GNS3 with VirtualBox

The best method to test a solution that you want to implement is to real see how it’s performing with some real traffic. GNS3 or Dynamips are very good at emulating a network topology  but unfortunately they cannot assure you with the tools capable to test the environment you just create.

In one of my old posts I showed how to integrate Virtual PC with GNS3, but the problem is that with Virtual PC you can just test basic stuff. For example, you cannot simulate VoIP traffic with Virtual PC in case that you want to test some QoS marking and classification.

Here comes into play VirtualBox, a powerful x86 and AMD64/Intel64 virtualization product for enterprise as well as home use. Not only is VirtualBox an extremely feature rich, high performance product for enterprise customers, it is also the only professional solution that is freely available as Open Source Software under the terms of the GNU General Public License (GPL).

The integration on GNS3 with VirtualBox is not a hard thing to do, but you just have to be carefully in step implementation as if you skip one the solution will not work. For this solution I used Linux as host platform, so the steps works perfect under Ubuntu OS, but I’m sure that with some basic knowledge you can do it in Windows or MacOS.
Before we begin let’s summarize what you need:

Linux platform
VirtualBox installed
GNS3 installed

I assume that all 3 components are installed and working properly.  Next follow the steps below:

1. Bring up 2 or more (depending how many virtual OS you want to connect)  TAP interfaces on your Linux platform. I will go with 2 interfaces:
VirtualBox + GNS3 Step1

2. Configure the network interfaces of the Virtual OS in VirtualBox. I have 2 interfaces / Virtual OS. One interface is bounded to my physical network card (eth0) and I use this to connect to Internet in case that I need to download something, updates and so on… The second interface I use to connect to GNS3 virtual environment. Other settings of Virtual OS can be configured as you wish:
VirtualBox + GNS3 Step 2

3. Power on your Virtual OS Machines. In this moment if you didn’t bring the TAP interface up (Step 1), VirtualBox will issue an error and will refuse to start the Virtual Machines:
VirtualBox + GNS3 Step 3

4. Start GNS3 and build a network topology like the one in example below. You don’t have to follow exactly the same topology, but this is a good start to see that you are handling well the integration between Virtual Box and GNS3. In the example below and in regard to my Virtual Machine the Ubuntu-c = Uclient cloud and Ubuntu-s = Userver:
VirtualBox + GNS3 Step 4
5. Connect the routers R1 and R2 one to each other and to the Userver and Uclient clouds. On the routers the interface connection to cloud will be a (Fast)Ethernet and the clouds network interfaces have to be bounded to the TAP interfaces created on Step 1. Check in the images below how to do this:
VirtualBox + GNS3 Step 5

VirtualBox + GNS3 Step 5

In the end it should look something like this:
VirtualBox  + GNS3 Step 5
Now you should have an integration between GNS3 and VirtualBox. Please take into consideration the following advices before complaining that it’s not working:

– For end to end connectivity, you need to have a converged network. This means that you need to implement some kind of dynamic or static routing on your routers in order to have the end peers capable of reachability
-If you followed exactly my tutorial, and in Step 2 you configured 2 network interfaces per Virtual Machine, then you need to take care of the local IP routing. Usually in LAN network (with DHCP) the Virtual Machine interface bounded to the physical network interface will receive an IP address and also a default gateway. As an example, you can imagine that if you do no a have a static route on Userver pointing to R1 interface to reach Uclient, then all the packet will be forwarded to default gateway resulting in a issue in communication in virtual environment.
-Finally, take care when you configure the Clouds in GNS3 when assigning the TAP interfaces not to have a mismatch between Cloud – TAP interface – Router interface.

How to integrate GNS3 with Virtual PC

In this article I want to show you how to extend your posibilities to test a network in GNS3. Sure, it’s simple sometime to use a Loobpack interface on one of your edge routers to simulate an external network, but sometime is useful to have something connected to the router port. Take as an example QoS marking and classification. If you want to mark something inbound, then you need a connection to the router port where you want to mark the packets.

Additional to my example here, which include Virtual PC Simulator, you can find useful tutorial about GNS3 and VMware integration on  gns3-labs.com or how to emulate a voice lab with the same tools on blindhog.net.

Even most of you are familiar with GNS3 and maybe Virtual PC Simulator, let me begin with some short description about this 2 software.


GNS3 is a Graphical Network Simulator that allows emulation of complex networks. It allows you to run a Cisco IOS in a virtual environment on your computer (running Linux, MacOS X or Linux). GNS3 is a graphical front end to a product called Dynagen. Dynamips is the core program that allows IOS emulation.

The Virtual PC Simulator (VPCS) allow you to simulate up to 9 PCs. You can ping/traceroute them, or ping/traceroute the other hosts/routers from the virtual PCs when you study the Cisco routers in the Dynamips. VPCS is not the traditional PC, it is just a program running on the Linux or Windows, and only few network commands can be used in it. But VPCS can give you a big hand when you study the Cisco devices in the Dynamips. VPCS can replace the routers or VMware boxes which are used as PCs in the Dynamips network.

Before we start, I assume that you already have these tools installed. If not, please download and install GNS3 and VPCS.

On the following example I will show you how to configure a network topology including 2 Virtual PCs and one router and how to interconnect them in GNS3. This presentation is simulate a basic network, but after you learn how to do it, you can configure more complex one. You can have a look to the topology to understand better what I’m talking about.

Please see the video presentation below:

gns3-virtualpc

GNS3: How to create Frame-Relay Hub and Spoke lab

When I first came in touch with GNS3 I had not idea how to work with it. Not because it is so complicate to operate, but because I didn’t saw any software like this one. GNS3 and Dynamips make a very good job together, allowing users to emulate a lot of network scenarios with different topologies. If using only Dynamips suppose that you edit all the configuration file manually in text mode, now with GNS3 you can drag and drop devices, connections and configure them on the fly.

For today, I prepared a presentation about how you can create a Frame-Relay hub and spoke topology in GNS3, save and use it whenever you need it. This tutorial does not include the configuration of the devices which form Frame-Relay hub and spoke, but only the GNS3 lab topology. If you are looking for the tutorial on how to  configure FR hub and spoke on Cisco routers, please refer to my previous tutorial.

The GNS3 lab topology which I’ll create in the following presentation is available for download here. Take the saved lab configuration and open it in your GNS3 software. Before you use it, please have a look inside the file, as there are some lines you suppose to modify to fit your system.

Please click on the image below to see the tutorial:

gns3-fr-hub-spoke

GNS3: How-to save multiple topology configurations for good

GNS3 is an extremely useful tool if you are using Dynamips to emulate Cisco devices. It is a graphical environment in which even a newbie can do complex configuration by clicking and dragging routers, switches, connections into a topology that can be saved.

The problem that occurred to me in the past (and maybe to you also) is the following. Let’s assume that we create a configuration with routers named R0 and R1 and you save the topology config and also the routers config (“copy run start”). All the files (GNS3 topology config and Dynamips files created for R0 / R1 saved config) will be put into the default GNS3 project directory (e.g. /tmp in Linux or other directory if you are using Windows system). For now it is perfect. You have everything fine.

Next time when you start a topology, by default GNS3 will start with the same routers R0 and R1, and we you boot them, they will load your ex-saved config files, because GNS3 will look for config files into it’s default project directory, and since the name of the routers are the same, it will think that this have to be loaded. So, what you will do when you have 10 topologies that you save. Give all the time different routers name? Even so you will end with a mess in your default GNS3 project directory.

I have a solution for this issue, that you might like. I’m not saying that I have discovered this solution…for sure there is somewhere out there on the Internet, but I think of it by my own and I said that maybe others will use it.

This how-to assume that you know what Dynamips, GNS3 and Linux (any distribution) are. The same steps can be applied on Windows system also. Please check the tutorial by clicking the image below:
*Note:  As the file is flash and it’s quite big please have patience until it is loaded*

GNS3 topology config save