This project focuses on automating network operations by implementing specific solutions for Cisco devices. Currently, we utilize Python libraries such as Netmiko, Paramiko, and NAPALM to connect, configure, and manage Cisco equipment efficiently and consistently. However, it is worth noting that additional libraries may be explored in the future to address specific needs or leverage new technological advancements in the field of network automation.
The primary goal is to enhance operational efficiency and reduce human errors associated with manual configuration and management of network devices. Automation also enables increased scalability and centralized management of network infrastructures, contributing to the modernization and optimization of computer networks.
This project is scalable, and regular updates will be made to existing scripts as it progresses. Future enhancements will include adding additional features, optimizing code, and integrating new libraries and automation techniques.
Ultimately, the ultimate goal is to create a web-based network monitoring platform that leverages existing automation scripts. This platform will provide a user-friendly interface for monitoring and managing network devices, offering real-time operational data, alerts, and detailed reports to facilitate decision-making and performance optimization of network infrastructure.
- Establish SSH connections to Cisco devices
- Configure and manage Cisco devices using Python scripts
- Automate network operations encompassing provisioning, configuration adjustments, and data collection
- Scalable and adaptable for future enhancements
-
GNS3:
- Download and install GNS3 from the official website: https://www.gns3.com/
- Follow the installation instructions specific to your operating system.
-
VMware Workstation:
- Download and install VMware Workstation from the official website: https://www.vmware.com/products/workstation-pro/workstation-pro-evaluation.html
- Follow the installation instructions specific to your operating system.
-
GNS3 and VMware Workstation Setup:
- Launch GNS3 and configure it to work with VMware Workstation as outlined in the GNS3 documentation.
-
Cisco IOS Image:
- Obtain a valid Cisco IOS image from authorized sources, ensuring you have the necessary licenses for testing purposes.
-
Python Dependencies:
- Install the required dependencies using pip:
Use this code with caution.
pip install -r requirements.txt
- Install the required dependencies using pip:
Note: The installation instructions provided are most relevant to users setting up a development environment for network automation using GNS3 and Cisco IOS images. If you're solely using pre-existing scripts for Cisco automation without GNS3, these steps might not be necessary.
We welcome contributions from the community! If you have any ideas or improvements for this project, feel free to open a pull request. Here are some helpful guidelines:
-
Fork the Repository:
- Visit this project's GitHub repository and click the "Fork" button to create your own copy on GitHub.
-
Clone Your Fork:
- Open a terminal or command prompt and use the
git clone
command to clone your forked repository to your local machine. Replace<username>
with your GitHub username:Use this code with caution.git clone https://github.com/<username>/<repository-name>.git
- Open a terminal or command prompt and use the
-
Create a New Branch:
- Navigate to your local repository directory using the
cd
command. - Create a new branch for your specific contributions using the
git checkout
command, followed by a descriptive branch name:Use this code with caution.cd <repository-name> git checkout -b <branch-name>
- Navigate to your local repository directory using the
-
Make Your Changes:
- Make the desired modifications to the code and documentation. It's crucial to follow good coding practices and document your changes clearly.
-
Test Your Changes:
- Thoroughly test your modifications to ensure they don't introduce regressions or break existing functionality.
-
Commit Your Changes:
- Stage your changes using the
git add
command, followed by a clear and concise commit message usinggit commit
:Use this code with caution.git add . git commit -m "Your informative commit message"
- Stage your changes using the
-
Push Your Changes:
- Push your committed changes to your forked repository on GitHub using the
git push
command:Use this code with caution.git push origin <branch-name>
- Push your committed changes to your forked repository on GitHub using the
-
Open a Pull Request:
- On GitHub, navigate to your forked repository and click the "Pull requests" tab.
- Click the "New pull request" button and select the branch containing your changes to create a pull request.
- Provide a clear and detailed description of your contributions in the pull request description.
We appreciate your willingness to contribute to this project!
This project is licensed under the MIT License.
- NEGGAZI Mohamed Chakib
- TADRIST Zakaria