Apr
18

Below are the steps needed to get the CSR1000v working in VMware Fusion on a Mac. Before we look at the steps here is the hardware and software I used:

CSR1000v

CSR1000v

Basically you need a quad core machine with a hypervisor (VMware, Virtual Box, KVM, etc). I just used VMware Fusion as it’s a commonly used hypervisor. Additionally I used two USB NICs to map to the GigabitEthernet1 and GigabitEthernet2 interfaces inside the CSR1000v. You could use any NICs or even subinterfaces if you are using Linux (Mac OS does support VLANs but I personally have not tried it with VMware Fusion). The GigabitEthernet0 is the management interface that is associated with the “Mgmt-intf” VRF so I didn’t want to use it for the internal and internet facing interfaces.

Download the CSR1000v OVA (Open Virtualization Archive) file here if you haven’t already done so. Note that you will need to use your Cisco CCO login to download.

Once the file has been downloaded, start the installation by finding the .ova file and double-clicking it. It will then open the VMWare Fusion window below:


VMware is now importing the machine:

Now that the machine has been imported you can start it.


Hit enter on the virtual console from the GRUB menu:

The CSR1000v will generate a lot of log messages as it goes through the first bootup process.

The CSR1000v will reboot after this next screen:

Now the CSR1000v is up and running.

We need to map the GigabitEthernet interfaces from the CSR1000v to the USB NICs.

We can verify the CSR1000v’s interfaces with VMware. A good way is to check the MAC addresses as VMware will show you the MAC address of each NIC in the settings.

It’s now ready to apply your configuration. Last night I used it as my home router (50Mbps down and 20Mbps up) and here was the performance numbers after I activated the 50Mbps throughput demo license/span>

CSR1000v(config)#platform hardware throughput level ?
  10000  throughput in kbps
  25000  throughput in kbps
  50000  throughput in kbps

CSR1000v(config)#platform hardware throughput level

Here is the very basic configuration that I used in the CSR1000v to provide internet access:

CSR1000v#sho run
Building configuration...

Current configuration : 1816 bytes
!
! Last configuration change at 04:06:59 UTC Fri Apr 19 2013
!
version 15.3
service timestamps debug datetime msec
service timestamps log datetime msec
service password-encryption
no platform punt-keepalive disable-kernel-core
platform console virtual
platform hardware throughput level 50000
!
hostname CSR1000v
!
boot-start-marker
boot-end-marker
!
!
vrf definition Mgmt-intf
 !
 address-family ipv4
 exit-address-family
 !
 address-family ipv6
 exit-address-family
!
enable secret 4 wnIsLyS.p9pNIRVWPyb98mg0322nrnyQVqPabl7clC1
!
no aaa new-model
!
!
!
!
!

no ip domain lookup
ip dhcp excluded-address 10.0.1.200 10.0.1.254
ip dhcp excluded-address 10.0.1.1 10.0.1.99
!
ip dhcp pool INSIDE
 network 10.0.1.0 255.255.255.0
 default-router 10.0.1.254
 dns-server 8.8.8.8
!
!
!
!
!
!
!
!
!
!
!
multilink bundle-name authenticated
!
!
!
!
!
!
!
license accept end user agreement
spanning-tree extend system-id
!
!
redundancy
 mode none
!
!
!
!
!
!
ip tftp source-interface GigabitEthernet0
!
!
!
!
!
!
!
!
!
!
!
!
!
interface Loopback0
 ip address 1.1.1.1 255.255.255.255
!
interface GigabitEthernet1
 ip address 10.0.1.254 255.255.255.0
 ip nat inside
 negotiation auto
!
interface GigabitEthernet2
 ip address dhcp
 ip nat outside
 negotiation auto
!
interface GigabitEthernet0
 vrf forwarding Mgmt-intf
 ip address dhcp
 negotiation auto
!
ip nat inside source list ACL_NAT interface GigabitEthernet2 overload
ip forward-protocol nd
!
no ip http server
no ip http secure-server
!
ip access-list standard ACL_NAT
 permit 10.0.1.0 0.0.0.255
ip access-list standard ACL_TELNET
 permit 10.0.1.0 0.0.0.255
!
!
!
!
control-plane
!
 !
 !
 !
!
!
!
!
line con 0
 stopbits 1
line aux 0
 stopbits 1
line vty 0 4
 access-class ACL_TELNET in
 privilege level 15
 password 7 XXXXXXXX
 login
!
!
end

CSR1000v#

Note that you may find it easier to configure the G0 interface within VMware as “host only” so that it’ll provide an IP address to the CSR1000v’s management interface via DHCP. This way all you need to do is enable telnet access under the VTYs and not have to work on the VMware virtual console as there are limitations with cut/paste along with scroll back.

About Brian Dennis, CCIE #2210:

Brian Dennis has been in the networking industry for more than 22 years, with a focus on Cisco networking for the past 16 years. Brian achieved his first CCIE in Routing & Switching in 1996, and is currently the only ten year CCIE that holds five CCIE certifications. Prior to working with INE, Brian taught and developed CCIE preparation courses for various well known training organizations. Brian not only brings his years of teaching experience to the classroom, but also years of real world enterprise and service provider experience.

Find all posts by Brian Dennis, CCIE #2210 | Visit Website


You can leave a response, or trackback from your own site.

12 Responses to “Installing the Cloud Services Router (CSR1000v) in VMware Fusion”

 
  1. Rahul says:

    Will Try this on Vmware Workstation tonight…

  2. Joshua Walton, CCIE #19763 - Security says:

    Thanks for the mac version. Should I upload my tutorial for windows VMware Workstation 9.0.2? ;)

  3. Faisal says:

    Thanks for post. Thank you for post I’m able to run CSR1000V router on my macbook retina.

    Faisal

  4. Pablo Lucena says:

    I can verify that this works the same under vmware workstation 9.0.

    I’ve also done this on ESXi 5.1, running as a vm on vmware workstation. 9.0.

    I tried running CSR1000v on some servers from work, however I was only able to run it successfully on the servers with Nehelem based Xeon processors. These are servers running ESXi5.1 directly on bare metal.

    When I run CSR1000v on an ESXi 5.1 instance that’s running as a VM on workstation 9.0, the router is somehow “masked” from knowing that its not using a Nehelem based processor. Even though the ESXi instance sees that its being allocated some i7 cores.

    Just wanted to report that this has worked for me on both cases =) What a beauty she is…

  5. Mike says:

    It runs beautifully on the retina Macbook Pro with (16GB), although it’s memory hungry. I set up 3 instances in a ring, enabled MPLS, RSVP-TE and a VPLS VFI for good measure, and everything was up and running without an issue.

    I tried it on a 2008 Mac Pro, but the CPU doesn’t support the popcnt feature.

  6. Steve Jordan says:

    Thanks Brian!

    Got CSR 1000v running on my Mac Book Pro Late 2011.
    2.4 GHz Intel Core i7
    Memory 16 GB 13333 MHz DDR3
    Mac OS X Lion 10.7.5

    Regards,

    Steve Jordan

  7. prorouting says:

    This may be common knowledge but for me the file downloaded as ovf. This would not load natively. Simply change the extension from ovf to ova and it loads up great.

    MBP
    2.7 GHz Intel Core
    16 GB 1600 MHz DDR3
    OS X 10.8.3 (12D78)
    Fusion: Professional Version 5.0.3 (1040386)

  8. Sorin says:

    How many instances can we run on mac ?
    Yje limit is how much memory we have ?

  9. michal says:

    Does anybody try to run CSR on VirtualBox? I get the message:
    %IOSXEBOOT-4-BOOT_HALT: (rp/0): Halted boot due to missing CPU feature requirement(s)
    The documentation says that this message appears when “required instructions are not present” on the CPU. But I have got Core i5 processor and do not see any relevant options in virtualbox.

  10. Jorgen says:

    Hi Brian,
    Thanks for great info. I am now running a couple of CSR1000V on my MacBook pro in VMWare fusion.
    Great for testing, labbing etc.
    /Jorgen

  11. Adam Armstrong says:

    Has anyone else noticed how horrifically inefficient this is, even compared to IOS-XE running on ASR 1K?

    This uses 3GB of RAM at boot time.

    It chews up almost an entire core idle.

    Pushing 50mbit it chews up two entire cores.

    I’d really like to believe it’s a misconfiguration, but I’m not sure that it is.

 

Leave a Reply

Categories

CCIE Bloggers