Automated Network Configuration

Diving into the innovative realm of network automation, I developed a Python script and compiled it into an executable for ease of use, streamlining the configuration process for Cisco switches and leveraging AI tools to enhance efficiency. This approach dramatically slashed manual configuration time while boosting consistency and accuracy in network setup. The knowledge gained from this project extends beyond networking, applicable to a wide array of related topics. The journey was immensely rewarding, and I'm proud of how the automated process transformed network management, enhancing both efficiency and reliability.


Behind the Scenes: Unveiling the Process

 

Developed Python Script

The Python script, developed in Visual Studio Code, utilizes the tkinter library to create a graphical user interface (GUI) that simplifies SSH-based configuration of Cisco switches. By leveraging the netmiko library, the script allows users to input host IP addresses, usernames, passwords, and commands directly. This setup optimizes the process of establishing connections, executing commands, and managing configurations. Through real-time output and interactive controls, the GUI significantly enhances the efficiency of network management tasks, particularly in configuring and maintaining Cisco network devices. You can view the Python code here.

Compiled to Executable

I utilized "auto-py-to-exe" to convert my Python script into a standalone executable. This streamlined distribution by packaging dependencies into a single file, allowing users to run the application without Python installed. This approach enhanced security, simplified deployment, and improved user accessibility by providing a traditional software installation experience.

Here is the user interface for the script.
projimg

Show command to view the VLAN for every interface
projimg

Use 'enter config mode' to change the VLAN of interfaces fa0/1 to fa0/9 from VLAN 10 to VLAN 50, then use the show command to view the result.
projimg

Revert the VLAN settings back to VLAN 10 using the same command, and verify that the configuration is applied correctly
projimg