Showing posts with label gns3. Show all posts
Showing posts with label gns3. Show all posts

GNS3 vs. IOU poll - who won?

I have been running a poll on the site to determine whether people would prefer the next volume (Multicast and QoS) to be designed for IOU or, like the previous three volumes, for GNS3.

At the start, IOU steamed ahead, but then GNS3 started to catch up.

The poll has now closed. We had 67 people take part. The end result?

IOU won by a large margin.


If it had won by any more, then the pie chart would look like Pacman.

So the book will be designed for...
UNetLab.

Here's why.

  1. On the basis that if people are using IOU, then they will have probably heard of UNetLab.
  2. If people have IOU images in IOU, they can be used in UNetLab.
  3. UNetLab offers support for more systems then IOU, therefore we can have a Linux VM and PROPERLY test multicast AND QoS.
The thing about Multicast (and QoS) that it is hard, in a closed environment such as IOU, or even when you are restricted to just using routers and switches, is that you have to take output as an indication of whether something is working or not. If you could actually see a multicast stream, i.e. a video file playing on VLC, then it's easier to see cause and effect.

UNetLab will allow for a nicer book, we'll be able to see video being multicasted, and also implement QoS restrictions on this as well, rather than just seeing an ICMP response. 

It'll be fun, as networking should be.


Poll: Volume 4 - GNS3 or IOU?

Poll: Volume 4 - GNS3 or IOU?

So far GNS3 seems to have been working well for the first three volumes, but I feel like I should ask whether, for volume 4, a move to IOU (IOU-Web to be exact) would be preferred.

There are a couple of reasons that would make switching to IOU a good idea.

  • IOU is very popular with many studying for the CCIE
  • There would be a common platform - it would make life easier when moving between different OSes. 
  • It would also allow for a nicer experience with clickable pictures. 
  • I could use "proper" switches (though if you are running GNS3 with IOU integration, you can use IOU switch images as well). The new volume will use a couple of switches (as will version 5).
  • The IOS images used would be more recent (but again, see the point above about GNS3/IOU integration
  • IOU is closer to the actual exam environment, than GNS3 is. 

I have added a poll on the right-hand side, where you can vote for your preference.

Let me know your thoughts in the comments section below.

MPLS for Cisco Networks now available!

It's been a long ride. Finally, though, it's finished and being published.

MPLS for Cisco Networks is here!


So what has changed and what's stayed the same?

The format is the same. We have one main topology, it grows and changes as we cover all the topics on both the official CCIE v5 blueprint, and also the INE expanded blueprint. There are smaller, sub-contained, topologies where appropriate. We now have a longer troubleshooting section, with one topology and seven different tickets.

The biggest difference is that we have an editor for this one. Beau emailed me, asking would I like him to edit the second volume (after he read the first one). At first I was a little unsure. The BGP volume was my baby, in a way, and would you let a complete stranger look after your baby? Well, its not like handing over my children, and his credentials looked good (ex-Teacher, Network engineer - so what more could I want!). I do not regret taking the chance and asking him to join me. Together we have created, in my opinion, an excellent book. He's been juggling parenthood, work and being a husband, with hours and hours (and hours) of correcting my grammar, making sentences shorter and more concise. If I gave a penny to my children for every time he's had to add a comma, they'd be rich by now! Seriously, I cannot say enough how he turned the book around. It's far more readable. My sentences do have a tendency to be a little long, it's all to do with how it comes out of my head as I am working through it. So when you are reading it, and you pause for breath in a paragraph, you can thank him! It's not just the grammar though, he's been through the topology with such dedication. It's been excellent to have another pair of eyes on it. He must be a glutton for punishment though, as he's agreed to do number 3 as well!

We have more pictures. This does influence the size (for Kindle), and has meant that printing costs (as well as the fact that its much longer) have increased. It is slightly more expensive than the BGP book, but still very reasonable. I am not out to make a fortune from these, I am doing it because I enjoy it.

We are still using GNS3. It's probably the most familiar to people, but IOU topologies will follow in due course.
In all, I am more pleased with this one than the BGP book. In hind-sight I think I rushed the BGP book. I never expected it to ever be as popular as it has been. When I published on Kindle (not even thinking at that stage it would appear in printed format), I said to my wife that if a couple of people enjoyed it, then it would be worth it. I am still very proud of it, nonetheless. It's a learning process, not just in the material, but in how to write. It will become a more honed process as I write more. I hope I have listened to all of the requests that have come in (apart from one, which, I think, was just asking me to write it exactly like an O'Reilly book - still not sure of that conversation, I was very confused).

I hope you enjoy it.

Sneak peek at volume 2

It is not quite ready yet, it's still being proofed by my technical editor, but I thought I would get a proof copy or two so that I can make sure formatting is right  and that the pictures are coming out properly.

I must say I am pleased so far. So, want a sneak peak?

Here you go!





As you can see it has become a much longer book than the BGP volume! We have many more pictures for a start. 

It's still based around GNS3 and IOU topologies will follow. 

I am very excited by this latest volume. 

Work on volume 3 is already underway. 

What do people use the most for their CCIE studies?

I have been running a poll on the site for a while now, to get a feel for what people are using for the practical part of their CCIE studies. The results are in, and thank you to those who have taken part in the poll.

Here are the results in reverse order, and if you don't want to do the reading then skip to the end where there is a pie chart.

CCIE on VMWare

1% of respondents are using VMWare. VMWare is a great platform, but, historically, not ideally suited to the CCIE. This has started to change somewhat, as the CSR 1000v router works well on it, but, then there is the costs associated with using this platform, if you are running 10 routers then you are going to need 32GB of ram, running 20 you'll need 64GB ram, and this is all on the basis that you have a machine to hand that can run VMWare. Not a surprising result.

CCIE on Real Hardware

8% of you have either a very accommodating employer, or a lot of cash to drop. I did go down this route, and got all the hardware a couple of weeks before the V5 was announced and all my routers (barring the 18xx series) became pretty much obsolete. But there are a number of you lucky enough to have the full hardware based experience! Lucky you, really there is nothing like the real thing.

CCIE on IOU

25% of people are using IOU. IOU is great for many reasons, firstly the version level supported is much closer to the one used in the exam, it's free (yay!), and you can run a large topology inside a VM with very little memory overhead. The downside is that it is harder to get into, those without any Linux experience may be put off, and designing your own topologies does take some getting used to, It works great, but isn't for the faint-hearted.

Real switches + IOU or GNS3 or VMWare

25% have opted to use real switches and a virtualised environment. This setup does make the most sense, as all the virtualised environments have issues when it comes to layer 2 technologies. The switches can be bought (on eBay) for a few hundred (pounds), and as the routing functions work great in virtual environments it eliminates the chances of errors due to a layer 2 feature not being supported, or, if supported, not working as it should (I am looking at you HSRP!). There are some downsides to this setup, mainly the cost, portability and space concerns, but it does offer the best of both worlds.

CCIE on GNS3

36% of people are using GNS3. It has been around for years, and it making huge waves as it progresses from the 0.8 version that we have known and loved for ages to this all-encompassing vital tool, allowing you to run VirtualBox VMs, connect to IOU and to real hardware, if you don't want to do that then it runs 7200 series routers (which support IOS 15) very well. It is of no surprise then, that GNS3 is the tool of choice for the aspiring CCIE. The downsides of GNS3? Not many really, it does have a propensity to make your CPU run hot, but playing around with idle PC values can mitigate that, and you are limited by the amount of memory you have if you are running native GNS3 routers.

Final thoughts

The lines in this poll are slightly blurred though as some may be using real hardware and GNS3, or real hardware and IOU, for instance, which really does push their numbers up, but it does give a good indication as to what people are using.

Whatever platform you choose, I wish you all the very best in your studies.



BGP book topology updated for GNS3 1.0! MPLS book coming soon!

BGP book topology updated for GNS3 1.0! MPLS book coming soon!

BGP for Cisco Networks & GNS3 1.0

I had a request hit my inbox last month for the topology for my book "BGP for Cisco Networks" to be updated for GNS3 1.0.

I must confess that with trying to finish off "MPLS for Cisco Networks", which is looking great and should be out soon(ish), I didn't do this very quickly.

But thanks to a great guy called Dan over at GNS3 and his nifty python based converter I have been able to do this in under half an hour.

So thanks Dan!

If you are currently using GNS3 1.0 and want to load up the topology, its available in the Downloads section.


MPLS for Cisco Networks

The MPLS book is taking a lot longer than the first, for a number of reasons.

I had a pretty good grounding in BGP when I started, but not so much with MPLS, and MPLS feels like such a bigger subject, the book is certainly longer if that's anything to go by!

I have learnt some things from the first book, mainly due to the comments made by my readers, so there will be more diagrams, more configurations, and hopefully a sense of being part of the book, rather than just a reader... That last bit should make more sense when you read it.

I am just finishing off a couple of bits; VPLS, OTV, IPv6 for VRF-Lite, and need to do the troubleshooting chapter - which is all planned out, and then its a matter of proofing, sending over to my technical ed, and then publishing!

Again topologies will be available in GNS3 0.8 first, with GNS31.0 and ViRL (whenever that eventually turns up) at a later stage.

Cisco CSR1000v - Part 2: Connecting to GNS3

Following on from part one where we downloaded and installed the CSR1000v router in VirtualBox, it would be great if we can use it in GNS3. We can do thanks to GNS3s integration with VirtualBox.

 I have switched from my 4GB Windows laptop to my 32GB Mac now (we'll see why later on), but the steps are all the same.

Fire up GNS3 and head into the preferences. Firstly make sure that GNS3 can talk to VirtualBox, the details should already be configured for you, so click on "Test Settings", and hopefully you should get the green OK message as shown below:

CSR1000v and GNS3

If thats all good then head into the VirtualBox Guest tab. Click on "Refresh VM List", and then hopefully you'll be able to select your VirtualBox VM from the VM List above:

CSR1000v and GNS3
Give it a name and click on "Save"

CSR1000v and GNS3
Then click on OK to return to the main screen.

Click on the "End Devices" icon on the left hand side, it looks like a PC. In there will be a VirtualBox guest icon, which you can drag onto your topology, and you'll see a prompt to select a VirtualBox guest to use:

CSR1000v and GNS3

Once you select the CSR1000v VM and press OK you'll see it on the topology. Personally I like to change the icon to something more router looking. Before we fire it up we need to make a couple of minor edits. Firstly right click on the router and select "Configure", then select the router.

If "Reserve first NIC for VirtualBox NAT to host OS" is ticked, then untick it, and make sure that "Enable console support" is ticked:

CSR1000v and GNS3

Click ok, and now switch it on. The router light in the topology window should turn green. Give it a few moments and you should be ready to rock:

CSR1000v and GNS3

You can connect the CSR1000v to native GNS3 routers, and the two will communicate happily:

CSR1000v and GNS3
If you try an add another CSR1000v router though you will find that you cant. You can only have as many instances from VirtualBox running as there are instances, so in order to have two CSR1000v routers running in GNS3, we'll need to have two CSR1000v VMs in VirtualBox.

Shut down your existing router for the moment, and back over in VirtualBox, select the CSR1000v VM and right click on it, and then select "Clone".

A new window should pop up, and you can give it a new name, and reinitialize the MAC addresses of the cards (if you want).

CSR1000v and GNS3


Choose "Full Clone", and then click on "Clone".

Repeat this as many times as you want to have as many routers as you need. Remember though that each router takes about 2.5GB of memory, so memory can be used up pretty quickly running CSR1000v routers! This is why I switched to a more powerful machine!

Once you have created as many VMs as you need head back into GNS3. We'll need to rescan the VirtualBox VM list for it to be picked up, but this is just the same as following the first couple of steps we did to get the first CSR into GNS3. You can also choose to untick the "reserve" button here and tick the console button, then save the VM:

CSR1000v and GNS3


You can then add it to GNS3 and start connecting your topology up:

CSR1000v and GNS3
At the moment with a few normal apps running and the above routers memory and CPU usage is quite low:

CSR1000v memory usage

With enough memory you could run a whole stack of CSR1000v routers and have them play happily together. Fun, fun, fun!

GNS3 1.0 goes beta

GNS3 1.0 is now in beta. It's been fun watching the alpha, which was a complete redesign from the ground up, grow and expand, and now we have hit the beta stages.

So what's the difference in the beta, vs the alpha?

GNS3 1.0 Beta
Initially it doesn't look like much has changed on the interface front since the initial alpha, so let's dig a little deeper.

The change log shows the following:

Change Log for Beta 1 of V1.0
The GNS3 all-in-one installer automatically installs a 32-bit or 64-bit version of GNS3.
Base VirtualBox support (still some issues, most of them on Linux and Mac OS X).
Prevent users to set the port and VLAN settings to 0 on Ethernet swithes.
Fixed issue when spaces are in capture file paths.
Fixed bug with live capture on Windows.
Work around for the c7200 reload bug in Dynamips <= 0.2.13.
Fixed some inconsistencies when exporting configs.
The early release dialog is gone! 

What's on the menu?

The menu has some cool new things on it, such as "Cloud" and "VirtualBox"

GNS3 1.0 Beta menu

Its all about the Cloud these days

We have an option for "Cloud". But if you try and copy the link for "Create Cloud Account" you'll find that it doesn't go anywhere just yet. The only provider listed is Rackspace and they are pretty solid so it should be interesting.

GNS3 1.0 Beta cloud

Woo hoo VirtualBox!

VirtualBox is back, kind of. The menu items are all there:

GNS3 1.0 Beta VirtualBox is back (almost)

But it doesn't work just yet:

GNS3 1.0 Beta virtualbox errors

I couldn't find any vboxwrapper files in the GNS3.app, so I thought I would give it a go myself:
I started by doing a git clone of the vboxwrapper files (you'll need xcode installed to run git):
Stuarts-MacBook-Air:~ stu$ sudo git clone https://github.com/GNS3/vboxwrapper
Cloning into 'vboxwrapper'...
remote: Reusing existing pack: 15, done.
remote: Total 15 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (15/15), done.
Checking connectivity... done.
Stuarts-MacBook-Air:~ stu$ cd vboxwrapper/
Next we need to run the setup:
Stuarts-MacBook-Air:vboxwrapper stu$ sudo python setup.py install
running install
running bdist_egg
running egg_info
creating vboxwrapper.egg-info
writing vboxwrapper.egg-info/PKG-INFO
writing top-level names to vboxwrapper.egg-info/top_level.txt
writing dependency_links to vboxwrapper.egg-info/dependency_links.txt
writing entry points to vboxwrapper.egg-info/entry_points.txt
writing manifest file 'vboxwrapper.egg-info/SOURCES.txt'
reading manifest file 'vboxwrapper.egg-info/SOURCES.txt'
writing manifest file 'vboxwrapper.egg-info/SOURCES.txt'
installing library code to build/bdist.macosx-10.9-intel/egg
running install_lib
warning: install_lib: 'build/lib' does not exist -- no Python modules to install

creating build
creating build/bdist.macosx-10.9-intel
creating build/bdist.macosx-10.9-intel/egg
creating build/bdist.macosx-10.9-intel/egg/EGG-INFO
copying vboxwrapper.egg-info/PKG-INFO -> build/bdist.macosx-10.9-intel/egg/EGG-INFO
copying vboxwrapper.egg-info/SOURCES.txt -> build/bdist.macosx-10.9-intel/egg/EGG-INFO
copying vboxwrapper.egg-info/dependency_links.txt -> build/bdist.macosx-10.9-intel/egg/EGG-INFO
copying vboxwrapper.egg-info/entry_points.txt -> build/bdist.macosx-10.9-intel/egg/EGG-INFO
copying vboxwrapper.egg-info/top_level.txt -> build/bdist.macosx-10.9-intel/egg/EGG-INFO
zip_safe flag not set; analyzing archive contents...
creating dist
creating 'dist/vboxwrapper-0.9-py2.7.egg' and adding 'build/bdist.macosx-10.9-intel/egg' to it
removing 'build/bdist.macosx-10.9-intel/egg' (and everything under it)
Processing vboxwrapper-0.9-py2.7.egg
Removing /Library/Python/2.7/site-packages/vboxwrapper-0.9-py2.7.egg
Copying vboxwrapper-0.9-py2.7.egg to /Library/Python/2.7/site-packages
vboxwrapper 0.9 is already the active version in easy-install.pth
Installing vboxwrapper script to /usr/local/bin

Installed /Library/Python/2.7/site-packages/vboxwrapper-0.9-py2.7.egg
Processing dependencies for vboxwrapper==0.9
Finished processing dependencies for vboxwrapper==0.9
So can we now run the finished file?
Stuarts-MacBook-Air:vboxwrapper stu$ python /usr/local/bin/vboxwrapper 
Traceback (most recent call last):
  File "/usr/local/bin/vboxwrapper", line 8, in 
    load_entry_point('vboxwrapper==0.9', 'console_scripts', 'vboxwrapper')()
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 318, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 2221, in load_entry_point
    return ep.load()
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 1954, in load
    entry = __import__(self.module_name, globals(),globals(), ['__name__'])
ImportError: No module named vboxwrapper
Nope, so let's make sure that things are installed properly:
Stuarts-MacBook-Air:vboxwrapper stu$ python
Python 2.7.5 (default, Mar  9 2014, 22:15:05) 
[GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.0.68)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from vboxapi import VirtualBoxManager
>>> g_vboxManager = VirtualBoxManager(None, None)
>>> print g_vboxManager.vbox.revision
91406
>>> exit()
At this stage I found the link that's mentioned below, so started to try those steps out:
Stuarts-MacBook-Air:vboxwrapper stu$ cd ~/Downloads/
Stuarts-MacBook-Air:Downloads stu$ cd vboxwrapper/
Stuarts-MacBook-Air:vboxwrapper stu$ ls
LICENSE   build   setup.py  vboxcontroller_4_3.py vboxwrapper.py
README.md  dist   tcp_pipe_proxy.py vboxwrapper.egg-info
Stuarts-MacBook-Air:vboxwrapper stu$ sudo cp vboxwrapper.py tcp_pipe_proxy.py vboxcontroller_4_3.py /Library/Python/2.7/site-packages/
Password:
So can we start the wrapper now?
Stuarts-MacBook-Air:vboxwrapper stu$ python vboxwrapper.py 
VirtualBox Wrapper (version 0.9)
Copyright (c) 2007-2014
Jeremy Grossmann and Alexey Eromenko
Using VirtualBox 4.3.6 r91406
VBoxWrapper TCP control server started (port 11525).
Listening on all network interfaces
Yes! We can! Let's try setting the vboxwrapper location to the new file and see what happens:

GNS3 1.0 Beta virtualbox wrapper configuration
Balls, I still get the same error:

GNS3 1.0 Beta virtualbox errors (again)
So with the new beta we can see a lot of features on the horizon, every so slightly out of reach, but hopefully, and given the speed at which the GNS3 guys are pushing out the updates, it won't take long for VirtualBox to be working again. I'd love to connect up some CSR1000v routers to some IOU routers and I am sure that this is just around the corner, yet in some ways though it's also very frustrating to be teased like this.

It's important to remember that this is still beta, so things may be limited in functionality, or missing completely. There are reports of getting virtualbox running on the new beta over on the forums, but that looks to be for Linux, and probably done by someone who has more of a clue about python than I do!

GNS3 1.0 Alpha 7 is out - labels are back!

It feels like ages since the last alpha release of GNS3 1.0. But its certainly been worth the wait.

GNS3 1.0 Alpha 7 is released

What's new in GNS3 1.0 Alpha 7 

Packet capture for IOS routers.
Packet capture for the Ethernet hub and Ethernet, ATM and Frame relay switches.
Packet capture for IOU (not working, issue with iouyap).

Every one loves a good packet capture. Being able to do packet captures is an integral part of every engineers toolkit - as for that matter is GNS3! :)

Right click a link, select "Start capture", and wireshark fires up. This does seem much quicker than on the 0.8.6 release.

GNS3 1.0 Alpha 7 packet capture
The link in the Topology Summary pane then changes to show a magnifying glass, signifying that there is a packet capture happening. It would be nice though to be able to set up packet capture straight from the Topology Summary menu.

Add notes, rectangles & ellipses to topologies.
Duplicate option for notes, rectangles and ellipses.
Style settings for note, rectangle and ellipse items. Possibility to edit interface and node labels.
GNS3 1.0 Alpha 7 labels

It's a small thing really, but I have missed the ability to add notes, it does make things much easer to understand when you have labels!

Show/hide interface labels.
GNS3 1.0 Alpha 7 interface labels

Same as above really, it does make life much easier to be able to turn this on and off at will!

Contextual device menu.

GNS3 1.0 Alpha 7 device menu

You can get the same menu by right clicking, but it is useful to have it in more than one place.

Recent file menu.

This is on the old 0.8.6:

GNS3 recent file menu

This is the new version:

GNS3 1.0 Alpha 7 recent file menu

Not sure which version I prefer really.

Lab instructions support (automatically open any file named instructions.* in the project directory or from the Help menu)

Just add any file called instructions to the project folder and open the project, it'll open up in the appropriate program:

GNS3 1.0 Alpha 7 lab instructions

Load a project by dropping the project file on the view.

Pretty cool, means it is quick to jump from topology to topology. It is fast and responsive.

Option to uncompress IOS images.

Makes booting router a little quicker.

Other stuff:

Fix: use Dynamips, IOU and VPCS identifiers to correctly load topologies.
IOU: rename startup-config to initial-config (makes more sense for IOU).
Check for sticky bit when checking for executable access.
Fix: IOS image relative path problems.
Lots of small bug fixes.

Building a CCIE home lab using breakout switch and GNS3 - Part 1

I am starting to get myself ready for the Narbik course in a few months time. I have brought all my routers and switches home from work and now the routers are sitting in the garage and the switches are racked and ready. I am using a 12u desktop rack which was a good price at just over £30 from Amazon.co.uk, you can get the same rack in the USA for just under $50.

I did realise though that now the v5 has replaced the v4 all my routers are redundant. I will still be able to find a use for the 1841s, but as far as the others go, they are just space fillers in the garage. But it also means that I need to use GNS3 and a breakout switch to connect to the real switches.

This also meant having to buy another switch, so there is a space to fill in between the 3560 and the cable management bit. I am also still waiting for the rack ears for the top 3550 to arrive. The rack ears for the 3550 arrived a few moments ago and now the switch is sitting properly in the rack.  The ASA is just for fun, and I need a couple of crossover cables for the 3550s.


So now comes the fun part, making the GNS3 topology and connecting it from my iMac to the real switches.

Narbik's foundation guides are designed to start bridging the gap between the CCNP and CCIE, so that when you go to his class you are ready to hit the ground running. The foundation guides (there are two parts) run to around 800+ pages, and are based around a singular topology. And this is what I have come up with so far:


The routers are all connected to SW1, which is just there to carry the vlan traffic, and will pass it through to the 3750 breakout switch, which in turn will pass it down to the 3560, which will be switch 1 on Narbik's topology. There are other switches as well, which will also connect to the real switches (SW2, SW3 and SW4).

Connecting GNS3 to a breakout switch

Connecting to a switch is pretty easy in GNS3, just drag over a cloud icon, right click and select configure. Once you are there select the first tab and connect it to the relevant ethernet interface.I changed the icon on mine to a nice layer 3 switch icon


With that all done and the first couple of routers fired up we can check for basic connectivity:
R1#sh int fa 0/0 | i line|address
FastEthernet0/0 is up, line protocol is up
  Hardware is i82543 (Livengood), address is ca09.0443.0008 (bia ca09.0443.0008)
R1#

R2#sh int fa 0/0 | i line|address
FastEthernet0/0 is up, line protocol is up
  Hardware is i82543 (Livengood), address is ca06.0442.0008 (bia ca06.0442.0008)
R2#
So we have both lines up that connect us to the real network, let's see if we can see them on the breakout switch:
Breakout#sh mac-address-table int fa1/0/48
          Mac Address Table
-------------------------------------------

Vlan    Mac Address       Type        Ports
----    -----------       --------    -----
   1    10dd.b1b3.6ba6    DYNAMIC     Fa1/0/48
   1    ca06.0442.0008    DYNAMIC     Fa1/0/48
   1    ca09.0443.0008    DYNAMIC     Fa1/0/48
Total Mac Addresses for this criterion: 3
Breakout#sh cdp neigh fa 1/0/48
Capability Codes: R - Router, T - Trans Bridge, B - Source Route Bridge
                  S - Switch, H - Host, I - IGMP, r - Repeater, P - Phone

Device ID            Local Intrfce         Holdtme   Capability    Platform   Port ID
R2                  Fas 1/0/48            135             R       7206VXR   Fas 0/0
R1                  Fas 1/0/48            157             R       7206VXR   Fas 0/0
Breakout#
No problems there! But what we actually need is for them to be connected to SW1.

The first (proper) task on the Narbik workbook is to put both R1 and R2 in VLAN 12 and make sure that they can ping each other.
SW1(config)#vlan 12
SW1(config-vlan)#exit
SW1(config)#int ra f0/1-2
SW1(config-if-range)#switchport mode access
SW1(config-if-range)#switchport access vlan 12
SW1(config-if-range)#no shut

R1(config)#int fa 0/0
R1(config-if)#ip address 12.1.1.1 255.255.255.0
R1(config-if)#end
R1#

R2(config)#int fa 0/0
R2(config-if)#ip add 12.1.1.2 255.255.255.0
R2(config-if)#

R1#ping 12.1.1.2
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 12.1.1.2, timeout is 2 seconds:
.....
Success rate is 0 percent (0/5)
R1#
We know that the interfaces are up because they are in the MAC address table on the breakout switch. There is a great article over at gns3.net about how to set this up, and the original article from which it is based is also well worth a look. Following these guides I got a bit further:
Breakout(config)#int fa 1/0/1
Breakout(config-if)#desc Down to SW1 f0/1
Breakout(config-if)#switchport access vlan 12
Breakout(config-if)#switchport mode dot1q-tunnel
Breakout(config-if)#l2protocol-tunnel cdp
Breakout(config-if)#l2protocol-tunnel stp
Breakout(config-if)#l2protocol-tunnel vtp
Breakout(config-if)#no cdp enable
Breakout(config-if)#spanning-tree portfast
%Warning: portfast should only be enabled on ports connected to a single
 host. Connecting hubs, concentrators, switches, bridges, etc... to this
 interface  when portfast is enabled, can cause temporary bridging loops.
 Use with CAUTION

%Portfast has been configured on FastEthernet1/0/1 but will only
 have effect when the interface is in a non-trunking mode.
Breakout(config-if)#int fa 1/0/2
Breakout(config-if)#desc Down to SW1 f0/2
Breakout(config-if)#switchport access vlan 12
Breakout(config-if)#switchport mode dot1q-tunnel
Breakout(config-if)#l2protocol-tunnel cdp
Breakout(config-if)#l2protocol-tunnel stp
Breakout(config-if)#l2protocol-tunnel vtp
Breakout(config-if)#no cdp enable
Breakout(config-if)#spanning-tree portfast
%Warning: portfast should only be enabled on ports connected to a single
 host. Connecting hubs, concentrators, switches, bridges, etc... to this
 interface  when portfast is enabled, can cause temporary bridging loops.
 Use with CAUTION

%Portfast has been configured on FastEthernet1/0/2 but will only
 have effect when the interface is in a non-trunking mode.
Breakout(config-if)#int fa 1/0/48
Breakout(config-if)#desc Uplink to iMac
Breakout(config-if)#switchport trunk encap dot1q
Breakout(config-if)#l2protocol-tunnel cdp
Breakout(config-if)#l2protocol-tunnel stp
Breakout(config-if)#l2protocol-tunnel vtp
Breakout(config-if)#no cdp enable
Breakout(config-if)#spanning-tree portfast
Now things look a bit better:
R1#sh cdp neigh | beg Device
Device ID        Local Intrfce     Holdtme    Capability  Platform  Port ID
SW1              Fas 0/0            176             S I   WS-C3560- Fas 0/2
SW1              Fas 0/0            163             S I   WS-C3560- Fas 0/1
R2               Fas 0/0            169              R    7206VXR   Fas 0/0
R1               Fas 0/0            159              R    7206VXR   Fas 0/0
R1#

R2#sh cdp neigh | beg Device
Device ID        Local Intrfce     Holdtme    Capability  Platform  Port ID
SW1              Fas 0/0            150             S I   WS-C3560- Fas 0/2
SW1              Fas 0/0            138             S I   WS-C3560- Fas 0/1
R2               Fas 0/0            143              R    7206VXR   Fas 0/0
R1               Fas 0/0            133              R    7206VXR   Fas 0/0
R2#
We are getting double entries though, and a ping from R1 to R2 still does not work. Hmmm.... Well let's double check our configuration, starting with our virtual switch:

 
That's all fine, we have the correct ports in the correct vlan. Let's check the physical switch:
SW1#sh run int fa0/1
Building configuration...

Current configuration : 84 bytes
!
interface FastEthernet0/1
 switchport access vlan 12
 switchport mode access
end

SW1#sh run int fa0/2
Building configuration...

Current configuration : 122 bytes
!
interface FastEthernet0/2
 switchport access vlan 12
 switchport trunk encapsulation dot1q
 switchport mode access
end
Looks like we have a lingering remnant from previous work... Let's get rid of that and see what happens:
SW1#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
SW1(config)#int fa 0/2
SW1(config-if)#no switchport trunk encapsulation dot1q
SW1(config-if)#end
SW1#

R1#ping 12.1.1.2
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 12.1.1.2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 12/18/24 ms
R1#

R2#ping 12.1.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 12.1.1.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 16/27/44 ms
R2#
Hurrah!

So far so good. I still need to get the second switch racked and cabled, it's waiting for me back at the office, I also need to sort out the USB NICs, or re-do part of the topology. Switches 2, 3 and 4 on the GNS3 topology either need to connect to SW1, and then to the breakout switch, or have separate USB connections to separate "clouds". I have the USB nics (Dynamode USB-NIC-1427-100) but my iMac doesn't seem to want to play ball with them, the lights all flash and look impressive blinking away as they do, but I cant seem to get them recognized as an ethernet interface yet.

Nevertheless it's all off to a good start, and we can save the rest for part two, when I figure out how to finish it off!

If you have any suggestions then please do comment.