Categories

Category cover

Automation
155 posts

Category cover

Learning paths
119 posts

Category cover

CISO
22 posts

Category cover

Security
20 posts

Category cover

Notes
19 posts

Category cover

Personal Security
18 posts

Category cover

Infrastructure
12 posts

Category cover

OT/ICS
5 posts

Category cover

Books
3 posts

Category cover

UNetLab
3 posts

Category cover

Write-up
3 posts

Category cover

OSInt
2 posts

Category cover

My life
1 posts

Lab modeling for UNetLab v3

Andrea Dainese
September 13, 2024
Post cover

We’ve run a series of field tests to check if the idea we’re working on is feasible and functional. The results are positive, the APIs suppor

We’ve run a series of field tests to check if the idea we’re working on is feasible and functional. The results are positive, the APIs support most of the key features (but not all).

Our next step is to define and model the data structure of the lab environment.

One of UNetLab’s main issues was that users had to manually build a lab, node by node, setting up interfaces, addresses, and routing before getting a functional environment. We’re addressing this by introducing two states:

  • HLL (High Level Lab): A rough outline of the lab in terms of nodes, links, and features.
  • LLL (Low Level Lab): A detailed lab generated from the HLL.

Below, we’ll describe the data structure. Full examples are available in the UNetLab repository .

Nodes and Features

Here’s an example with 4 VyOS nodes configured with Loopback and OSPF on all interfaces:

Features reference specific Ansible playbooks that configure each node. Variables can be passed with “:”. The nodes will be named R1, R2, R3, and R4.

Topology

The 4 nodes can be connected in a full-mesh:

Continue reading the post on Patreon .