This repository provides a pre-configured Containerlab topology featuring 8 virtual machines running Ubuntu Generic VM. The environment is designed to facilitate BGP (Border Gateway Protocol) studies and is configured to install FRR using Ansible for streamlined setup and automation.
- Seamless BGP Practice: A robust, quickly deployable setup to dive into BGP routing, peering configurations, and advanced BGP topics.
- Flexible Environment: Modify and expand the topology as needed to test complex network scenarios.
- Ansible Integration: Enhance your Ansible skills by automating network configurations and managing routing changes, providing dual-purpose learning in both network engineering and automation.
This setup is perfect for network engineers and enthusiasts who want to build their expertise in BGP without the hassle of manual configuration. The integration of Ansible makes it ideal for training in network automation, enabling you to script configurations, automate installations, and maintain network consistency.
After deploying the lab and running the ansible, all of the BGP sessions will be UP already.
- Install the Containerlab.
- Any of the Ansible version should be fine, i'm using one from:
pip install -r ./requirements.txt
.
- Execute
./deploy-lab.sh
. - Run the ansible for init configuration with
ansible-playbook playbooks/configure.yml -i clab-bgp-learning/ansible-inventory.yml
.
- Execute
./destroy-lab.sh
.
After you bring up the lab UP, following entries will be generated to /etc/hosts
:
###### CLAB-bgp-learning-START ######
172.20.20.8 isp3
172.20.20.6 isp4
172.20.20.5 isp5
172.20.20.9 isp6
172.20.20.4 customer1
172.20.20.7 customer2
172.20.20.3 isp1
172.20.20.2 isp2
You can reach any of them by executing ssh clab@isp1
, password clab@123
.