Skip to content


Running BSD in containerlab


Cover photo by Sieuwert Otterloo on Unsplash

A few months ago I started tinkering with OpenBSD and wrote a post about it. Now, I'd like to share how to easily run not only OpenBSD but also FreeBSD nodes in a lab environment with IaC approach.

My Introduction to OpenBSD


Cover photo by Stelio Puccinelli on Unsplash

In this post, I'd like to share why I consider OpenBSD a viable but often overlooked platform for building routers and firewalls. I tried to highlight the networking features of OpenBSD that in my opinion make this OS stand out.

Please, treat this post more as a collection of my personal notes and findings. It doesn't claim to be objective and comprehensive.

Next Stop Golang


Cover photo by Thanos Pal on Unsplash

Since I embarked on the network automation journey, Python and Python-based utilities have always been the go-to tools for the job. I started, as maybe many of you, with Ansible. Then when dealing with its DSL grew more and more tiresome, I began writing my first Python code. And I was happy. I felt like I was learning something fundamental again, not just another niche technology that would never come in handy elsewhere. Although Python had some limitations in terms of portability and speed, it didn't bother me much.

Building a Template for a Network Automation Project


Cover photo by Alex on Unsplash

Using templates for device configurations is a common practice and it has obvious benefits, such as speed and consistency. Working on many small Python automation projects made me think of employing the same approach. Previously I had to copy and adjust a lot of code-related things such as directory structure, poetry settings, CI/CD pipelines, etc. Templating all of this allowed me to reduce the initial scaffolding overhead to a minimum and jump straight into writing code. In this article, I want to share my experience in building such a template.

How to Run a Python CLI Tool Inside a Docker Container


Cover photo by Diomari Madulara

Have you ever faced a problem sharing your python scripts with the rest of your team? You need to ensure a lot of things for your script to run on a recipient's machine. This often involves ensuring that the Python interpreter's correct version and all the dependencies are installed among other things. To put it mildly, portability is not Python's strong suit. That's where Docker can come in handy.

August 2020 Update


It's been a while since my last post and I want to shed some light on what I've been up to and what are my plans for the future of this site. A lot of things happened in 2019 and 2020 in my professional life and the two most important ones were changing job and becoming a CCIE R&S this February (just before the lockdown). Both of these activities were the main reason why I've been silent here for so long (not to mention living through the lockdown with a toddler).