Cisco CSR1000v – Part 1: Install and Licensing

Let’s face it we can do so much with GNS3 out of the box, it’s an amazing tool, especially with the way GNS3 1.0 is shaping up. However, Cisco is moving at a pretty big pace and there is a whole new line up of devices that we can use that are not supported in GNS3 (natively). Thankfully those wise people at GNS3 have leveraged VirtualBox to make our lives easier, and our topologies better and more up to date.

Today we will start having a look at the CSR1000v, we will cover downloaded and installing in VirtualBox, as well as changing our license level. Th4e CSR1000v is a free download if you have a CCO account, which is also free, so really you have no excuses.

The CSR1000v is a virtual router designed to run under VMWare or, as we will be doing here, under VirtualBox.

Getting the CSR1000v

You can download the CSR1000v straight from Cisco with a valid CCO account. The download link is here. Download the ISO image.

Installing the CSR1000v in VirtualBox

Fire up virtualbox and create a new 64-bit Linux VM (using “Other”).

Installing CSR1000v in VirtualBox
Give the VM at least 2.5 GB of memory


Installing CSR1000v in VirtualBox
It will need an 8GB hard disk


Installing CSR1000v in VirtualBox
And a serial port


Installing CSR1000v in VirtualBox
Set the CD rom drive to point to the ISO file you downloaded in step 1.


Installing CSR1000v in VirtualBox
Fire it up!


Installing CSR1000v in VirtualBox
The CSR should install onto the hard disk.


Installing CSR1000v in VirtualBox


Once it has installed and rebooted we can see that we are running IOS XE 15.4


Installing CSR1000v in VirtualBox

We are also running on the standard license, though even if we do change the license level (as we will do next) both still show “License level: limited”.


At first run the CSR1000v has loads of options for us to play with, but we can make these even better. If we drop into the configuration mode and do a “?” we can see what’s available to us. I won’t copy out everything here, it’ll just waste your time and mine reading through everything. But there is loads of stuff. But we can have more.

We can change the license level and get loads of cool new stuff, and who doesn’t like cool new stuff?

The license level is changed by doing the following:

Router(config)#license boot level premium
         Feature Name:prem_eval

(lots of EULA stuff - removed for brevity)

ACCEPT? (yes/[no]): yes

*Jul 22 12:49:06.561: %LICENSE-6-EULA_ACCEPTED: EULA for feature prem_eval 1.0 has been accepted. UDI=CSR1000V:96RG3ZZC37F; StoreIndex=0:Built-In License Storage% use 'write' command to make license boot config take effect on next boot


I did try changing to the advanced level, but this crashed the router. Once we have reloaded our CSR router we now also get (and I am just showing the new options):

Configure commands:
  apollo                      Apollo global configuration commands
  appfw                       Configure the Application Firewall policy
  appletalk                   Appletalk global configuration commands
  arap                        Appletalk Remote Access Protocol
  auto                        Configure Automation
  bfd                         BFD configuration commands
  bfd-template                BFD template configuration
  collector                   Define a Collector
  decnet                      Global DECnet configuration subcommands
  gtp                         Enable GTP Gn'
  keymap                      Define a new keymap
  l2                          Layer 2 configuration
  l2vpn                       Layer2 VPN commands
  l3vpn                       l3vpn encapsulation ip commands
  lat                         DEC Local Area Transport (LAT) transmission protocol
  mcsa                        Configure mcsa
  mediatrace                  Mediatrace Application
  menu                        Define a user-interface menu
  metadata                    Metadata Application
  mop                         Configure the DEC MOP Server
  mpls                        Configure MPLS parameters
  mvr                         Enable/Disable MVR on the switch
  otv                         Configure OTV information
  parameter-map               parameter map
  performance                 Global Performance monitor configuration
  pfr                         Performance Routing configuration submodes
  pfr-map                     Create pfr-map and enter pfr-map command mode
  pppoe                       PPPoE global configuration
  pseudowire-class            Pseudowire-class configuration
  pseudowire-static-oam       Static PW OAM configuration
  pseudowire-tlv              Global PW TLV configuration
  service-insertion           Service Insertion mode
  sgbp                        SGBP Stack Group Bidding Protocol configuration
  sgcp                        Enable Simple Gateway Control Protocol
  sgi                         Configure SGI
  smrp                        Simple Multicast Routing Protocol configuration commands
  spanning-tree               Spanning Tree Subsystem
  tarp                        Global TARP configuration subcommands
  tn3270                      tn3270 configuration command
  translate                   Translate global configuration commands
  ttycap                      Define a new termcap
  vc-group                    Define a Frame Relay VC group
  vines                       VINES global configuration commands
  vty-async                   Enable virtual async line configuration
  vxlan                       Configure VxLAN information
  xconnect                    Xconnect config commands
  xremote                     Configure XRemote
  zone                        FW with zoning
  zone-pair                   Zone pair command

Look at all that cool stuff! We have the ability to do loads of old stuff like DECnet and Appletalk, but even better that old stuff, we have new stuff, like MPLS (and by extension, VPLS), spanning-tree, EoMPLS with xconnects, OTV, VxLANs, Layer 3 VPNs!

Impressed yet?

We will start to have some fun with this in another post when we get it connected to GNS3 and build something fun to play with.


  1. Soufiane Adil July 22, 2014
  2. Stuart Fordham July 22, 2014
  3. Stuart Fordham July 22, 2014
  4. Soufiane Adil February 9, 2015
  5. Stuart Fordham February 9, 2015
  6. spellbound February 20, 2015

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.