Skip to main content

Introduction to Virtual Networking series

·2 mins
Qemu Open Vswitch Network
Ali Nasrolahi
Author
Ali Nasrolahi
I do some C stuff :)
Table of Contents
VirtualNetworking - Series
Part 1: This Article

What Is This Series About?
#

In this series, we’ll explore an unconventional approach to setting up a virtual network laboratory for various scenarios and purposes. You might be familiar with popular frameworks like GNS3 and Cisco’s Packet Tracer for learning the fundamentals of networking, switching, routing, and firewalls. Similarly, we’ll build our own infrastructure for networking, but with a hands-on experience that delves deeper into the underlying technologies.

Why?
#

The motivation behind this approach is driven by curiosity and the desire to gain unique, hands-on experience with the underlying technologies. Therefore, this series is not intended to be a substitute for the tools mentioned above and does not aim to replicate their objectives.

Prerequisites
#

To follow this series, it’s recommended that you have experience with the fundamentals of Linux, Bash, Virtualization, and Switching. The tools we’ll use are not designed to be user-friendly or particularly easy to follow; as a result, it might feel a bit frustrating at first. But that’s part of the learning process.

Environment Setup
#

I assume you already have a conventional Linux system installed and ready to use. Let’s dive in.
The main components we’ll need are:

Refer to their respective installation pages for installation instructions. If you’re using a conventional distribution (i.e. RHEL-based, Debian-based, or Arch-based), your repository should already provide pre-built packages. If not, you’ll need to compile them manually.

After installation, your system should include the qemu-system-x86_64, ovs-vsctl and ip binaries.

Note. On RHEL based system qemu-system-x86_64 might be called qemu-kvm instead. Don’t worry; everything should work fine.

For testing:

qemu-system-x86_64 --version
ovs-vsctl --version
ip --br a

Using Open vSwitch commands requires superuser privileges, so be sure to use root or sudo when running the commands.

Note. Also ensure Open vSwitch service is running. The service name could be ovs-vswitchd.service or openvswitch.service. Refer to your distro’s Open vSwitch page.

Excellent! In the next part, we’ll cover what each of these tools is and what they do for us.