Environment setup
One of the easiest and safest ways to learn and experiment with network automation is to build a lab environment. Thanks to the progress we’ve had in the last decade, today, we have access to virtualized and containerized network devices from different networking vendors and plenty of tools that can help us build a virtual topology from them.
In this book, we will use one of those tools: Containerlab. This tool, which is written in Go, allows you to build arbitrary network topologies from container images. The fact that you can create and run topologies based on a plain YAML file in a matter of seconds makes it a strong choice to run quick tests. Please refer to the Appendix for installation instructions and recommendations for host operating systems.
Creating the topology
Throughout the rest of this book, we will work with a base network topology consisting of three containerized network devices running different network operating systems (NOSes)...