As part of my new duties as a SD-WAN engineer, I need to be proficient at understanding SD-WAN, OMP, TLOCs, etc. Because of this, I dropped the $200 necessary on Cisco CML to gain access to the SD-WAN images. Here I am documenting my progress installing Cisco SD-WAN on my EVE-NG server (R730). I have been primarily following the networkacademy.io guide (a bit outdated) and Nischal Prajapati’s blog for installing and standing this up. Screenshots provided as I remember to take them:
Github Files: https://github.com/Lenniusce/sd-wan
Images used on EVE
| EVE-NG Image | Version |
|---|---|
| vtmgmt-20.15.1 | 20.15.1 |
| vtsmart-20.15.1 | 20.15.1 |
| vtbond-20.15.1 | 20.15.1 |
| c8000v-17.15.01 | 17.15.1 |
| vIOS Router | 15.9(3)M4 |
IP Scheme
VPN 0 – Used for the transport network (underlay)
VPN 512 – Used for management traffic. Interfaces in VPN 512 provide out-of-band access for management services such as SSH, HTTPS, SNMP, and communication with vManage.
System IP (System-ID) – A unique identifier for each SD-WAN device. It is similar to a router ID and is used to identify the device within the SD-WAN fabric
| Device | Int | IP |
| vBond (Validator) | system-ip VPN0 VPN512 | 1.1.1.10 10.1.1.10 192.168.115.10 |
| vManage (Manager) | system-ip VPN0 VPN512 | 1.1.1.20 10.1.1.20 192.168.115.20 |
| vSmart (Controller) | system-ip VPN0 | 1.1.1.30 10.1.1.30 |
| 8000v-1 (Low bandwidth) | system-ip VPN0 | 1.1.1.40 10.1.1.40 |
| 8000v-2 (Medium Bandwidth) | system-ip VPN0 | 1.1.1.50 10.1.1.50 |
| 8000v-3 (High Bandwidth) | system-ip VPN0 | 1.1.1.60 10.1.1.60 |
| 8000v-4 (Medium, Direct LOS) | system-ip VPN0 | 1.1.1.70 10.1.1.70 |
| vIOS Router (Fake Endpoint) | G0/0 G0/1 G0/2 G0/3 | 10.1.1.1 10.1.50.1 10.1.10.1 10.1.20.1 |
| Ubuntu Linux | Eth1 | 192.168.115.1 |
First, upload all of the files listed above to opt/unetlab/addon/qemu folder based on version name as show.
# Creating Folders mkdir /opt/unetlab/addons/qemu/vtbond-20.15.1mkdir /opt/unetlab/addons/qemu/vtsmart-20.15.1mkdir /opt/unetlab/addons/qemu/vtmgmt-20.15.1mkdir /opt/unetlab/addons/qemu/c8000v-17.15.01mkdir /opt/unetlab/addons/qemu/vios-adventerprisek9-m.SPA.159-3.M4mkdir /opt/unetlab/addons/qemu/linux-ubuntu-22.04-desktop
Remember, when creating the node images that we need to give 100GB to vManage in the form of a separate disk with the command:
/opt/qemu/bin/qemu-img create -f qcow2 virtiob.qcow2 100G

Fix permissions for all images once they are all uploaded:
/opt/unetlab/wrappers/unl_wrapper -a fixpermissions

Then, we need to create a new lab for SD-WAN in EVE-NG and provide a name, author, etc.

All of the viptela and Ubuntu images should show up on menu when building the topology now
Note: Viptela was the company Cisco acquired in 2017 to gain its SD-WAN technology. Cisco’s SD-WAN solution is built on the original Viptela platform, which is why many image names, controllers (vManage, vSmart, vBond), and software packages still use the “v” prefix and “viptela” naming. Even though the product is now branded Cisco SD-WAN, the underlying software heritage remains Viptela.

Topology is this so far, I have named paths (switches) based on their bandwidth (Low, Med, High, Direct):

Now, lets bootup vManage by right clicking on the node and selecting “Start”

Login to vManage, “admin/admin” are the default credentials
You will go thorough a mini wizard:
Changed Password to “Cisco”
Select 1 “COMPUTE AND DATA”
Select the 100gb drive, which should be “vdb”

After vmanage is running, start uploading the “initial” configs into the devices, I am following the IP Scheme from the top table. Telenet into each device and use Guacamole to copy-paste the configs into the devices (Ctrl + Shift)
vManage config
conf t!system host-name vManage system-ip 1.1.1.20 site-id 1 organization-name Chickenhawk clock timezone America/Los_Angeles vbond 10.1.1.10vpn0 interface eth0 ip address 10.1.1.20/24 ipv6 dhcp-client Tunnel-interface allow-service all allow-service dhcp allow-service dns allow-service icmp allow-service https exit no shutdown exit ip route 0.0.0.0/0 10.1.1.1 exitvpn 512 interface eth1 ip address 192.168.115.20/24 no shutdown!exit!commit
vBond config
conf t!system host-name vBond system-ip 1.1.1.10 site-id 1 organization-name Chickenhawk! clock timezone America/Los_Angeles vbond 10.1.1.10 local!vpn 0 interface ge0/0 ip address 10.1.1.10/24 no tunnel-interface no shutdown!exit!commit
vSmart config
conf t!system host-name vSmart system-ip 1.1.1.30 site-id 1 organization-name Chickenhawk! Clock timezone America/Los_Angeles vbond 10.1.1.10!vpn 0 interface eth0 ip address 10.1.1.30/24 no tunnel-interface no shutdown!exit!commit
Modem_Next_Hop Config (simulating the endpoint)
Interface GigabitEthernet0/0ip address 10.1.1.1 255.255.255.0Interface GigabitEthernet0/1ip address 10.1.10.1 255.255.255.0Interface GigabitEthernet0/2ip address 10.1.20.1 255.255.255.0Interface GigabitEthernet0/3ip address 10.1.50.1 255.255.255.0
Now that we have all of the configs in place, we should be able to ping across the entire topology using the 10.1.1.X addresses. If you cannot reach a particular box, shut/no shut the interface as I have seen this a few times with EVE-NG.

We are using the Ubuntu linux server as the GUI and SSH access to each device.

Set the IP address per the table above:

(This is the EVE-NG provided image, so its “Cisco/Test123”)
Hint: Make sure the “Direct” switch in between them is started, because I definitely forgot to boot it and couldn’t reach:

Access the SD-WAN vManage Console from the Firefox browser in the Ubuntu image at https://192.168.115.20:8443 it should be booted up by now

Next, check out my post on certificates as I pick right up where I left off: https://router-cake.com/2026/06/21/sd-wan-on-my-eve-ng-bare-metal-server-certificates/


Leave a comment